Beeline 이란 HiveServer2 에 접속하여 command shell 을 수행할 수 있도록 도와주는 client 입니다.
SQLLine CLI 를 기반으로하는 jdbc client 이기도 합니다.
Beeline shell 은 두 가지 방식으로 수행됩니다.
- Embeded mode - Hive CLI 와 유사하게 embeded hive 를 수행합니다.
- Remote mode - Thrift 통신을 통해 원격지에 있는 HiveServer2 에 접속하여 수행됩니다.
단, Thrift 통신만 허용합니다.
이제 beeline shell 에 접속해 봅시다.
{hive 설치경로}/bin 하위에 보면 beeline command 를 확인 할 수 있습니다.
접속하면 위처럼 prompt 화면을 확인할 수 있습니다.
여기서 remote mode 로 HiveServer2 에 접속하려면 아래와 같이 명령어로 수행할 수 있습니다.
beeline> !connect jdbc:hive2://{hive ip & port} {user} {password} org.apache.hive.jdbc.HiveDriver
|
위 방법 외에도 beeline parameter 를 이용하여 접속할 수도 있습니다.
beeline wiki 페이지를 참고하시면 될 것 같습니다.
beeline 에 정상적으로 접속이 되었다면, HQL 을 통해서 hive command 를 수행해 볼 수 있습니다.
[show]
show databases;
show tables;
show schemas;
|
[특정 DB 접속]
use (DB 명)
|
[특정 테이블 스키마 확인하기]
describe (테이블명)
|
자세한 HQL 에 대해서는 hive wiki 페이지에서 확인 할 수 있습니다.
참고
- https://cwiki.apache.org/confluence/display/Hive/HiveServer2+Clients
- https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DML#LanguageManualDML-Syntax.1
- http://paranwater.tistory.com/399