Cloudera CDH/CDP 및 Hadoop EcoSystem, Semantic IoT등의 개발/운영 기술을 정리합니다. gooper@gooper.com로 문의 주세요.
Hive 사용법 및 쿼리 샘플코드
hive 에서 사용하는 query 정리
지금까지 주로사용하는 것 위주로 정리했으며 지속적으로 업데이트 될 수 있음.
hive 환경구축 안되있는 경우는~
Hive 실행
$ $HIVE_HOME/bin/hive
Hive 종료
hive> exit;
테이블 확인
show tables;
bigmark.csv 파일의 데이터를 저장하는 테이블 "bigmark"을 정의하기 |
테이블 생성
hive> CREATE TABLE bigmark (id int, mark STRING)
> ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
> LINES TERMINATED BY 'n';
테이블에 파일삽입
hive> LOAD DATA LOCAL INPATH '/home/bigmark/localfiles/bigmark.csv'
> OVERWRITE INTO TABLE bigmark;
파티션 사용하기 |
테이블 생성
hive> CREATE TABLE big (id INT, bb STRING, ii STRING, gg STRING)
> PARTITIONED BY (ver timestamp)
> ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
> LINES TERMINATED BY ' n';
테이블에 파일삽입
hive> LOAD DATA LOCAL INPATH '/home/bigmark/localfiles/bigmark.csv'
> OVERWRITE INTO TABLE big PARTITION (ver = '2013-01-28 ');
테이블 검색 |
테이블 구조 확인
hive> DESCRIBE bigmark;
테이블 내용 확인
hive> SELECT * FROM bigmark;
LIKE 식에 의한 검색
hive> SELECT id, mark FROM bigmark
> WHERE mark LIKE '빅마크';
LIKE 식에 의한 검색(파티션이 있을 경우)
hive> SELECT bb, ii, gg FROM big
> WHERE ver='2013-01-28' and gg LIKE '빅%';
LIKE 대신 REGEXP도 가능