2014-04-06 4 views
3

나는 몇 시간 동안 이것에 붙어 있었고 어떤 진전에 문제가 있습니다. 하이브 쿼리에 대해 Hue 서버를 실행하고있는 Hue 서버가있는 원격 Hadoop 인스턴스가 있습니다. 이것들은 잘 작동합니다. 나는 파이썬을 통해 직접 하이브에 대한 쿼리를 실행하기를 바랬지만 이것이 문제가되는 곳입니다. 나는 Python Hive Utilspyhs2을 통해 달리기를 시도했다. 전자는 나를 준다 :파이썬에서 하이브 쿼리를 실행 중입니까?

thrift.Thrift.TApplicationException: Invalid method name: 'get_database' 

후자는 단지 시간 초과.

서버가 0.10.0-cdh4.3.0을 사용하고 있음을 알고 있지만 HiveServer 또는 HiveServer2를 사용하고 있는지 여부를 알 수 없습니다. 사용되는 HiveServer의 버전

  1. 는 어떻게 알 수 있습니까 :

    그래서, 내 질문은 3 배입니까?

  2. 파이썬을 통한 연결이라는 측면에서 중요합니까?
  3. 왜 연결할 수 없습니까?

답변

2

대신 ODBC를 사용할 수 있습니다. phyton에서
: 그 HiveServer1 드라이버에 대한 XXX가 이전에 만든 DSN은

import pyodbc 
cnxn = pyodbc.connect("DSN=XXX",autocommit=True) 
cursor = cnxn.cursor() 
cursor.execute("select * from YYY") 

..
당신이 포트 (기본값 10000)를 설정해야
here이 DSN을 정의 할 때 가서 여부 2.
1 또는 2가 서버에 액세스해야하는지 확인하고 해당 프로세스에서 해당 포트에서 수신 대기하는 프로세스를 확인하십시오. (netstat은 프로세스 번호와 포트 번호를 알려주고 jps -m은 프로세스 번호와 HiveServer1 또는 2를 제공합니다

관련 문제