HOWTO · Java
org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient를 인스턴스화할 수 없습니다.
이 튜토리얼은 java.lang.RuntimeException: Java에서 org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient를 인스턴스화할 수 없음을 해결하는 방법을 보여줍니다.
이 페이지의 내용
이 튜토리얼은 java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient를 해결하는 방법을 보여줍니다.
Java에서 org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient를 인스턴스화할 수 없습니다.
Apache Hive는 Hadoop 파일에 저장된 대용량 데이터 세트를 읽고 관리하고 쓰기 위한 오픈 소스 데이터 웨어하우스 소프트웨어입니다. SQL과 유사하게 작동합니다. 경우에 따라 Hadoop 및 Hive가 제대로 구성되지 않은 경우 java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient 오류가 발생할 수 있습니다.
Ubuntu 플랫폼에서 작업하는 동안 이 오류에 대한 해결책은 다음과 같습니다. 오류 없이 Hive Shell을 정상적으로 실행하려면 아래의 방법을 따르십시오.
~/.bashrc 파일
홈 디렉토리에서 bashrc 파일을 열고 sudo gedit ~/.bashrc 파일 끝에 다음 환경 변수를 추가합니다.
# directory configuration for JAVA_HOME
export JAVA_HOME="/usr/lib/jvm/java-9-oracle"
export PATH="$PATH:$JAVA_HOME/bin"
# directory configuration for HADOOP_HOME
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
export HIVE_HOME=/usr/lib/hive
export PATH=$PATH:$HIVE_HOME/bin
.jar 파일
또한 .jar 파일 MySQL-connector-java-5.1.28.jar 또는 최신 버전을 Hive 홈의 lib 디렉토리에 넣어야 합니다.
hive-site.xml 파일 생성
Hive의 conf 디렉터리에 배치될 hive-site.xml 파일을 생성해야 합니다. 파일에 다음 코드를 삽입해야 합니다.
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost/metastore?createDatabaseIfNotExist=true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>root</value>
</property>
<property>
<name>datanucleus.autoCreateSchema</name>
<value>true</value>
</property>
<property>
<name>datanucleus.fixedDatastore</name>
<value>true</value>
</property>
<property>
<name>datanucleus.autoCreateTables</name>
<value>True</value>
</property>
</configuration>
필수 소프트웨어 및 플러그인 설치
Ubuntu에서 Hive 셸을 실행하려면 먼저 몇 가지 소프트웨어를 설치해야 합니다. 목록은 다음과 같습니다.
- MySQL
- 하둡
- 하이브
- 자바
이 소프트웨어와 플러그인이 성공적으로 설치되면 Hive 셸을 실행할 수 있습니다.
서비스 실행 및 Hive Shell 실행
마지막 방법은 모든 서비스를 실행하고 Hive 셸을 실행해야 하는 실행 부분입니다. 아래 단계를 따르십시오.
start-all.sh를 시작하여 모든 Hadoop 서비스를 시작합니다.- 이제 Hadoop의 모든 서비스가 실행 중인지 확인합니다.
jps명령을 사용하여 확인하십시오. - 마지막으로 Hive 명령을 입력하여 Hive 셸을 시작합니다.