티스토리 뷰
빅데이터/spark
[spark] spark2와 hive2 메타스토어 연결 오류 수정. java.lang.NoSuchFieldError: HIVE_STATS_JDBC_TIMEOUT
hs_seo 2021. 6. 21. 20:20spark2.x 와 hive 2.x 버전의 메타스토어를 연결하면 오류가 발생합니다. 지라에는 스파크 2.2 버전에서는 해결이 됐다고 나오지만 저는 2.4.6 버전에서도 오류가 발생했습니다. 관련 지라는 다음과 같습니다.
https://issues.apache.org/jira/browse/SPARK-18112
에러 원인
에러의 내용은 다음과 같습니다. HIVE_STATS_JDBC_TIMEOUT 필드를 찾지 못한다고 나옵니다.
scala> spark.sql("show databases").show()
java.lang.NoSuchFieldError: HIVE_STATS_JDBC_TIMEOUT
at org.apache.spark.sql.hive.HiveUtils$.formatTimeVarsForHiveClient(HiveUtils.scala:204)
at org.apache.spark.sql.hive.HiveUtils$.newClientForMetadata(HiveUtils.scala:285)
hive-exec-1.2.1.jar 파일을 확인하면 해당 필드가 있지만, hive-exec-2.3.8.jar 에서는 해당 필드를 확인할 수 없었습니다.
해결 방법
이 문제를 해결하는 방법은 두 가지가 있습니다.
스파크를 신규로 빌드해서 해당 정보를 처리하지 않도록 수정하는 방법이 있고, 스파크2용으로 빌드된 hive 1.2.1 라이브러리를 추가하면 됩니다.
메이븐에서 해당 파일들을 찾아서, 스파크 라이브러리 위치에 다음 파일들을 추가합니다.
- hive-beeline-1.2.1.spark2.jar
- hive-cli-1.2.1.spark2.jar
- hive-exec-1.2.1.spark2.jar
- hive-jdbc-1.2.1.spark2.jar
- hive-metastore-1.2.1.spark2.jar
https://mvnrepository.com/artifact/org.spark-project.hive/hive-cli/1.2.1.spark2
반응형
'빅데이터 > spark' 카테고리의 다른 글
[spark] spark3와 hive3 메타스토어 연동 (0) | 2021.06.21 |
---|---|
[spark] spark2와 hive2 메타스토어 연동 (0) | 2021.06.21 |
[spark] spark에서 snappy 라이브러리를 찾지 못할때 수정 방법 : java.lang.UnsatisfiedLinkError: org.apache.hadoop.util.NativeCodeLoader.buildSupportsSnappy (0) | 2021.03.18 |
[pyspark] pyspark 실행시 python: command not found 오류 (0) | 2021.03.18 |
[spark] __spark_libs__.zip does not exist 오류 해결 방법 (0) | 2020.09.14 |
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- HIVE
- bash
- SQL
- Tez
- ubuntu
- 정올
- airflow
- error
- AWS
- emr
- java
- oozie
- Python
- 다이나믹
- mysql
- nodejs
- 하이브
- hbase
- yarn
- Linux
- 하둡
- 오류
- S3
- Hadoop
- SPARK
- HDFS
- 알고리즘
- 파이썬
- 백준
- build
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |
글 보관함