사용자가 하둡에 있는 파일에 대해 SQL 쿼리를 작성하면 이것을 자동으로 맵리듀스 작업으로 변경해서 HDFS 실행(SQL 쿼리를 하둡 작업 코드로 변환해주는)
(client 접속 한 상태)
먼저 다음의 명령어를 수행하여 초기 디렉터리로 이동
cd ~
그 상태에서 아래의 명령어로 하이브
설치 파일 다운받는다
wget https://downloads.apache.org/hive/hive-3.1.2/apache-hive-3.1.2-bin.tar.gz
받은 파일 압축 해제
tar xzf ./apache-hive-3.1.2-bin.tar.gz
./hive
라는 경로로 옮겨주기
$ mv ./apache-hive-3.1.2-bin ./hive
네임노드로 변경
ssh namenode
네임노드인 상태에서 아래 명령어로 설치
sudo yum install mariadb-server -y
mariadb status
명령어 시행하여 설치 후 제대로 잘 작동(running) 되는지 확인
$ sudo systemctl enable mariadb --now
시스템에 mariadb 쓸 수 있도록 등록해줘
--now
: 등록하면 바로 시행해줘
아래의 status 명령어 사용하여 잘 설치되었는지 확인
$ sudo systemctl status mariadb
뭘 설치한건지.. 머르겠지만 mysql_secure_installation 설치해준다
$ mysql_secure_installation
이러고 나서 뜨는 출력창에서 Y/n 설정
해줘야 하는게 꽤 많다.
아래를 참고하여 실수 없이 잘 설치하자!
- Set root password? [Y/n] 👉🏻 Y
이후 비번 설정해주기- Remove anonymous users? [Y/n] 👉🏻 Y
- Disallow root login remotely? [Y/n] 👉🏻 n
- Remove test database and access to it? [Y/n] 👉🏻 Y
- Reload privilege tables now? [Y/n] 👉🏻 Y
여기까지 해주고 마지막에 다음과 같은 문구가 출력되면 성공!
All done! If you've completed all of the above steps, your MariaDB installation should now be secure. Thanks for using MariaDB!
그러고 나면 아래처럼 mysql 접속 가능.
[mysql 접속하기]
$ mysql -u root -p123
-u
: mysql 접속할user 이름
작성-p
: 뒤에 아까 만들었던비밀번호
입력
👉🏻 그러니까 위 캡쳐에선 root라는 이름의 유저, 123이라는 비밀번호로 접속하는 거다.
create database hivedb;
create user hiveuser@localhost identified by 'hivepw';
grant all privileges on hivedb.* to hiveuser@localhost;
grant all privileges on hivedb.* to hiveuser@'client'
identified by 'hivepw';
flush privileges;
/home/hadoop/hive/conf
구아바는 구글이 만든건데, 여기 들어있는 버전과 맞지 않다.
때문에, 버전을 맞춰주는 작업이 필요하다.
.jar
파일을 확인한다/home/hadoop/hive/lib
(jar 파일
: Java class들이 모여있는 파일)
아래의 명령어 수행하여 bashrc
파일에 접근, i
눌러 내용 편집 모드로 들어간다.
$ vim ~/.bashrc
그 상태로 HIVE_HOME
에 대한 경로, PATH
에 대한 경로를 다음과 같이 설정해준다.
export HIVE_HOME="/home/hadoop/hive"
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin:$HIVE_HOME/bin
bashrc
파일을 수정했으니, 소스 업데이트를 진행해준다.
$ source ~/.bashrc
그다음 hdfs 시스템에 들어가서 ~~~??(못들음)
$ hdfs dfs -mkdir -p /user/hive/warehouse
hdfs dfs -mkdir -p /user/hive/warehouse
hdfs dfs -chmod g+w /user/hive/warehouse
hdfs dfs -mkdir /tmp
exists
hdfs dfs -chmod g+w /tmp
여기까지 됐으면 딱 하나만 쳐보면 끝난다.
shematool -initSchema -dbType mysql
위와 같이 completed가 뜨면 성공!