본문 바로가기

Data Engineering/Hive

[Hive] Hive 설치하기

Hadoop 단점 극복을 위한 제안

  • MapReduce 는 프로그래밍 레벨(Java, Python, C++ 등)의 개발이 필요함
  • 더 쉬운 분석 지원을 위해 SQL을 지원하는 쿼리 엔진 필요함 -> Hive, Spark

Hive

  • 하둡에 저장된 데이터를 쉽게 처리할 수 있는 데이터웨어하우스 패키지
  • Facebook에서 매일 같이 생산되는 대량의 데이터를 관리하고 학습하기 위해 개발
  • SQL과 유사한 Query Language 를 지원
  • SQL레벨의 ETL처리도구로 활용 가능
  • 작성된 쿼리를 내부적으로 MapReduce 형태로 변환
  • 가장 역사가 오래된 SQL on Hadoop 엔진

Hive 설치

apache hive 사이트 들어가서 url 복사 후 다운로드

첫번째!

tar xvfz 명령어로 압축파일 풀기

wget https://dlcdn.apache.org/hive/hive-3.1.3/apache-hive-3.1.3-bin.tar.gz

이름 바꿔주기

mv apache-hive-3.1.3-bin apache-hive

 

hive-env.sh

템플릿 파일 변경하여 hive-env.sh 파일 생성

mv conf/hive-env.sh.template conf/hive-env.sh

HADOOP_HOME 지정

[root@localhost apache-hive]# vi conf/hive-env.sh

[root@localhost apache-hive]# cp ~/hadoop-3.3.6/etc/hadoop/core-site.xml hive-site.xml

hive-site.xml

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>
	<property>
		<name>hive.metastore.warehouse.dir</name>
		<value>/user/hive/warehouse</value>
	</property>
	<property>
		<name>hive.cli.print.header</name>
		<value>true</value>
	</property>
</configuration>

start demon

$HADOOP_HOME/sbin/start-all.sh

디렉터리 설정 및 권한 설정

[root@localhost apache-hive]# hadoop fs -mkdir -p /user/hive/warehouse/bin
[root@localhost apache-hive]# hadoop fs -chmod g+w /tmp
[root@localhost apache-hive]# hadoop fs -chmod g+w /user/hive/warehouse
[root@localhost apache-hive]# hadoop fs -chmod 777 /tmp/hive

guava 라이브러리 삭제 및 복사

[root@localhost apache-hive]# ls $HADOOP_HOME/share/hadoop/hdfs/lib/guava-27.0-jre.jar 
/root/hadoop-3.3.6/share/hadoop/hdfs/lib/guava-27.0-jre.jar
[root@localhost apache-hive]# cp $HADOOP_HOME/share/hadoop/hdfs/lib/guava-27.0-jre.jar ~/apache-hive/lib

Derby 메타스토어 초기화

[root@localhost apache-hive]# bin/schematool -initSchema -dbType derby

'Data Engineering > Hive' 카테고리의 다른 글

[Hive] 공공데이터 활용하기  (0) 2024.03.11
[Hive] Hive 서비스  (2) 2024.03.08
[Hive] Hive 실습  (0) 2024.03.08