[HADOOP] 하이브 병을 영구히 추가하기
HADOOP하이브 병을 영구히 추가하기
하이브 셸의 세션 수준에서 추가하는 대신 영구적으로 하이브 병을 추가 할 수있는 방법이 있습니까?
어떤 도움을 주시면 감사하겠습니다.
해결법
-
==============================
1.hiveserver2 호스트에서 / var / lib / hive와 같은 위치를 만들고 그 폴더 안에 필요한 모든 병을 추가하십시오. hive-site.xml을 편집하고 hive.aux.jars.path 속성에서 이러한 모든 jar를 언급하십시오.
hiveserver2 호스트에서 / var / lib / hive와 같은 위치를 만들고 그 폴더 안에 필요한 모든 병을 추가하십시오. hive-site.xml을 편집하고 hive.aux.jars.path 속성에서 이러한 모든 jar를 언급하십시오.
예 : ADD JAR /home/amal/hive/amaludf.jar ADD JAR /home/amal/hive/amaludf2.jar
각 세션에서 위의 명령을 사용하는 대신 모든 세션에 대해 위의 명령을 정의 할 수 있습니다.
이러한 jar를 hiveserver 호스트에 저장하기위한 위치를 작성하십시오.
mkdir /var/lib/hive
이 모든 병을 해당 디렉토리에 추가하십시오.
hive-site.xml에서 속성 설정
<property> <name>hive.aux.jars.path</name> <value>/var/lib/hive</value> </property>
이 수정을 수행 한 후 하이버 서버 2를 다시 시작하십시오.
디렉토리를 만들고 모든 jar 파일을 저장하는 대신 개별 jar의 경로도 지정할 수 있습니다. 유일한 조건은 모든 항아리가 hiveserver 호스트에 있어야한다는 것입니다.
예 :
<property> <name>hive.aux.jars.path </name> <value>file:///home/amal/hive/udf1.jar,file:///usr/lib/hive/lib/hive-hbase-handler.jar</value> </property>
-
==============================
2.모든 노드에서 hadoop 또는 hive의 lib 폴더에 항아리를 넣어야합니다.
모든 노드에서 hadoop 또는 hive의 lib 폴더에 항아리를 넣어야합니다.
-
==============================
3.이 두 단계로 수행 할 수 있습니다.
이 두 단계로 수행 할 수 있습니다.
{hadoop-env.sh는 사용자 정의 된 사용자 정의 jar와 전체 클러스터에서 사용 가능한 공통 위치의 하이브 및 기타 위치의 CLASSPATH로 업데이트해야합니다.}
변경 후에도 작동하려면 hive / hadoop을 다시 시작해야합니다.
from https://stackoverflow.com/questions/31802908/adding-hive-jars-permanently by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] 원격으로 Hadoop 작업 실행 (0) | 2019.07.26 |
---|---|
[HADOOP] 원격 HDFS에서 파일 검색 (0) | 2019.07.26 |
[HADOOP] hadoop을위한 클래스 패스 설정 (0) | 2019.07.26 |
[HADOOP] Mesos 클러스터에서 Hadoop을 실행하는 방법은 무엇입니까? (0) | 2019.07.26 |
[HADOOP] Hadoop 구성 : mapred. * vs mapreduce. * (0) | 2019.07.26 |