본문 바로가기
Hadoop

HiveQL 명령어(feat. Hive shell)

by 집못가는프로그래머 2021. 9. 9.

*Hive로 접속하는 법은 간단하게 터미널에 hive 입력

 

1. show databases;

데이터베이스 출력

default 데이터 베이스 사용중

2. create database userdb;

userdb라는 데이터베이스 생성

 

3. use userdb;

위에서 만든 userdb 데이터베이스를 사용 선언

 

4.

예) employee 테이블 생성

테이블 안의 컬럼 : eid(int), name(str), salary(string), destination(string)

'no_auto_compaction' = 'true' 안해주면 입출력할때 에러가 생김

 

5. show tables;

테이블 리스트를 보여준다

 

6. LOAD DATA LOCAL INPATH 'employee.csv' OVERWRITE INTO TABLE employee;

employee테이블에 로컬 파일의 employee.csv 내용을 읽어온다

 

7. select * from employee;

employee 테이블의 모든 내용을 출력한다

이 내용은 metastore에 들어가는 것이 아닌 hdfs 명령만으로 hdfs 영역의 데이터 내용만 읽어와서 표시된 것

8. exit;

Hive 종료

 

9. 읽어온 데이터가 어디에 저장되어있는지 확인해보자

hdfs dfs -ls -R /user/hive/

위 경로의 마지막 employee.csv 파일에 내용이 저장되어 있다

10.

다시 hive로 들어간다

use userdb; 로 데이터 베이스를 선택하고

아까 만들었던 테이블에 대한 간단한 작업을 실행해보자

select avg(salary) from employee;   < employee 테이블의 salary 컬럼에 대한 평균(avg)를 구해서 출력한다.

위의 작업으로 Hive가 Mapper와 Reducer를 자동으로 만들고 원하는 결과를 출력해준다.

결과 화면중 일부 (40000.0 이 출력된것 확인)

 

'Hadoop' 카테고리의 다른 글

Beeline을 이용한 Hiveserver2 접근(feat. Ubuntu)  (0) 2021.09.10
Hiveserver2(Feat. Ubuntu)  (0) 2021.09.09
Hive 설치(Feat.Ubuntu)  (0) 2021.09.09
MapReduce 파일 설정(feat. Hadoop)  (0) 2021.09.08
MapReduce  (0) 2021.09.08

댓글