
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 실습 (1) | 2024.03.08 |