보물창고/Big Data2013.05.06 23:00










hiveserver2 client 내용 정리 beeline


HDInsight를 설치하면 서비스에 hiveserver2가 실행되고 있는데 이게 어떤건지 모르고 있다가 이번 Hortonworks 하둡 설치 메뉴얼을 보고 설치하는 중에 확인할 수 있었습니다


hiveserver2에대한 내용을 정리합니다
위 링크 페이지 윗부분 설명 부분을 번역했습니다





HiveServer2는 HiveServer2 작동하는 새로운 명령 셸 Beeline를 지원합니다. 그것은 SQLLine CLI (http://sqlline.sourceforge.net/)을 기반으로 JDBC 클라이언트입니다.

뿐만 아니라 Beeline에 적용 SQLLine의 자세한 설명서가있다.Beeline 쉘이 모두 포함 된 모드뿐만 아니라 원격 모드에서 작동합니다.

원격 모드 서점을 통해 별도의 HiveServer2 프로세스에 연결하는 반면 임베디드 모드에서는 내장 하이브 (하이브 CLI와 유사)를 실행합니다.


 





Beeline는 클라이언트입니다
아래 예를 보면 beeline를 실행하고 !connection을 이용 hive접속정보를 주면 hive서버에 접속해 쿼리를 날릴수 있게 제공합니다
beeline가 제공하는 명령어를 이용해 동작합니다
hive에서는 hiveserver2가 beeline가 접속할 수 있는 서버입니다 기본 10000번 포트를 이용해서 접속 할 수 있습니다

hiveserver2 에 접속할 수있는 jdbc가 제공되고 있으며 Hortonworks에서 ODBC를 제공하고 있고 검색해보니 2013년 2월에 답변한 내용중 곧 최신 버전의 ODBC가 제공될 것이라는 글이 있었습니다

Example –

% bin/beeline
Hive version 0.11.0-SNAPSHOT by Apache
beeline> !connect jdbc:hive2://localhost:10000 scott tiger org.apache.hive.jdbc.HiveDriver
!connect jdbc:hive2://localhost:10000 scott tiger org.apache.hive.jdbc.HiveDriver
Connecting to jdbc:hive2://localhost:10000
Connected to: Hive (version 0.10.0)
Driver: Hive (version 0.10.0-SNAPSHOT)
Transaction isolation: TRANSACTION_REPEATABLE_READ
0: jdbc:hive2://localhost:10000> show tables;
show tables;
+-------------------+
|     tab_name      |
+-------------------+
| primitives        |
| src               |
| src1              |
| src_json          |
| src_sequencefile  |
| src_thrift        |
| srcbucket         |
| srcbucket2        |
| srcpart           |
+-------------------+
9 rows selected (1.079 seconds)







SQLLine 사이트에서의 설명

SQLLine는 관계형 데이터베이스에 연결하고 SQL 명령을 실행하기위한 순수 자바 콘솔 기반 유틸리티입니다. 그것은 오라클, MySQL의 및 Sybase / SQL Server에 대한 isql을위한 SQLPLUS와 같은 다른 명령 줄 데이터베이스 액세스 유틸리티 비슷합니다. 그것은 순수 자바이기 때문에, 플랫폼 독립적이며, 자바 1.3 이상을 실행할 수있는 모든 플랫폼에서 실행됩니다.





HortonWorks 포럼 어떤 질문들에 달린 답변을 보면(2013년 2월) 현재 ODBC가 있는것으로 보이고 최신 ODBC버전도 곧 나올 것이라는 글이 있었습니다







아래는 실제 실행해서 테스트한 내용 입니다


/usr/lib/hive/bin/beeline

!connect jdbc:hive2://localhost:10000 hadoop hadoop org.apache.hive.jdbc.HiveDriver


show databases;
create table test2(a int, b string);
show tables;



실행 결과

[hadoop@localhost bin]$

[hadoop@localhost bin]$ /usr/lib/hive/bin/beeline

-hiveconf (No such file or directory)

hive.aux.jars.path=file:/usr/lib/hcatalog/share/hcatalog/hcatalog-core.jar (No such file or directory)

Hive version 0.10.0.24 by Apache

beeline>

beeline> show databases;

No current connection

beeline>

beeline> !connect jdbc:hive2://localhost:10000 hadoop hadoop org.apache.hive.jdbc.HiveDriver

Connecting to jdbc:hive2://localhost:10000

Connected to: Hive (version 0.10.0)

Driver: Hive (version 0.10.0.24)

Transaction isolation: TRANSACTION_REPEATABLE_READ

0: jdbc:hive2://localhost:10000>

0: jdbc:hive2://localhost:10000> show databases;

+----------------+

| database_name  |

+----------------+

| default     |

+----------------+

1 row selected (1.864 seconds)

0: jdbc:hive2://localhost:10000> create table test2(a int, b string);

No rows affected (0.366 seconds)

0: jdbc:hive2://localhost:10000>

0: jdbc:hive2://localhost:10000> show tables;

+-----------+

| tab_name  |

+-----------+

| test   |

| test2 |

+-----------+

2 rows selected (0.242 seconds)

0: jdbc:hive2://localhost:10000>





신고





Posted by 파란물
보물창고/Big Data2013.03.29 23:00








HDInsight hive ODBC 0.4.0이전 버전과 이후 버전 비교입니다


정확하게 언제 바뀐 ODBC인지는 모르겠습니다

다만 2013년 3월 25일 HDInsight가 0.4.0.0으로 업데이트 되면서 hiveODBC를 새로 받아 봤는데 변경된 내용들이 있어서 정리합니다


아래 설명은 제가 확인한 3월 25일 기준으로 눴습니다










그림으로 보시면 이렇습니다

예전 Hive ODBC버전에서는 0.4.0.0에 접근이 안됩니다

3월 25일 버전에서 HDInsight 0.3.0버전에도 접근 안될거라는 예상을 해 봅니다







추가로 엑셀 2013에 hive버튼이 보이지 않습니다 

아래는 그와 관련해서 해결해보려고 시도한 내용을 정리 했습니다









ODBC접근 테스트는 엑셀에서 해봤습니다


EXCEL 옵셕 -> 추가기능 -> 관리 -> COM 추가 기능에

 HIVEExcel이 표시되지 않습니다











hiveODBC설치는 3월25일 이후를 설치하고

3월 35일 이전 버전의 addin설치 파일을 보관했다가 임의로 설치 후 시도 했으나 접근이 안됩니다

PowerPivot에서 ODBC로 데이터를 가져오는 과정에서도 접근 안됩니다







---------------------------

Hive Error

---------------------------

Unable to retrieve Hive object list. Details:


ERROR [08001] Unable to establish connection with hive server


ERROR [01004] Out connection string buffer not allocated


ERROR [01000] Batch size not set or is invalid. Defaulting to 65536.

---------------------------

확인   

---------------------------









3월 25일 이후 HiveODBCDriverSetupx64.msi 설치된 파일









3월 25일 이전 HiveODBCDriverSetupx64.msi 설치한 폴더 파일

HiveExcel.vsto

HiveExcel.dll.manifest

HiveExcel.dll

Microsoft.Office.Tools.Common.v4.0.Utilities.dll

이 파일들이 더 있습니다






3월 25일에 확인한 hive는 엑셀에 hive버튼을 추가하진 않지만

PowerPivot에서 사용할 데이를 hive ODBC를 통해 가져올 수는 있었습니다

신고





Posted by 파란물

티스토리 툴바