python 讀取hive數據


話不多說,直接上代碼

from pyhive import hivedef pyhive(hql):
    conn = hive.Connection(host='HiveServer2 host', port=10000, database='ods')
    cursor = conn.cursor()
    cursor.execute(hql)
    for result in cursor.fetchall():
        return result

 

部署時遇到一個問題:

Traceback (most recent call last):
  File "test_pyhive.py", line 7, in <module>
    from pyhive import hive
  File "/usr/lib/python2.7/site-packages/pyhive/hive.py", line 15, in <module>
    from TCLIService import TCLIService
  File "/usr/lib/python2.7/site-packages/TCLIService/TCLIService.py", line 9, in <module>
    from thrift.Thrift import TType, TMessageType, TFrozenDict, TException, TApplicationException
ImportError: cannot import name TFrozenDict

解決方法是:

原因是某些包沒有關聯上,裝包時,加上[hive]后綴

pip install pyhive[hive]

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM