티스토리 뷰

현재 사용하고 있는 스파크 2.0.2버전에서 SQL을 이용하여 하이브의 ADD JAR 명령을 실행하면 다음과 같은 오류가 발생합니다.


scala> sql("""ADD JAR 'hdfs:///user/a.jar'""")

scala> sql("""ADD FILE 'hdfs:///user/b.txt'""")


19/03/22 06:40:35 INFO SparkSqlParser: Parsing command: ADD JAR 'hdfs:///user/a.jar'
java.net.MalformedURLException: unknown protocol: hdfs
  at java.net.URL.<init>(URL.java:600)
  at java.net.URL.<init>(URL.java:490)
  at java.net.URL.<init>(URL.java:439)
  at java.net.URI.toURL(URI.java:1089)
  at org.apache.spark.sql.hive.client.HiveClientImpl.addJar(HiveClientImpl.scala:705)
  at org.apache.spark.sql.hive.HiveSessionState.addJar(HiveSessionState.scala:109)


그런데 ADD FILE 명령은 동작합니다. 둘다 같은 스키마인데 위치를 찾을 수 없다고 나와서 확인해보니 버그(SPARK-12868)입니다. 2.2.0 버전에서 수정되었다고 합니다.

이 문제를 해결하기 위해서 스파크 쉘을 실행할 때 --jars 옵션을 이용해서 라이브러리를 추가하여 해결하였습니다.


# jars 옵션 추가

spark-shell --jars a.jar,b.jar


반응형
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함