pyhive连接hive(失败)

一、安装pyhive

pip install sasl(需要来下载至本地安装:https://download.lfd.uci.edu/pythonlibs/q4hpdf1k/sasl-0.2.1-cp37-cp37m-win_amd64.whl)
pip install thrift
pip install thrift-sasl

pip install PyHive

 

二、编码

#!/usr/bin/env python
# -*- coding: utf-8 -*-

from pyhive import hive


class PyHive(object):

    def __init__(self):
        self.host = 'node06.research.com'
        self.port = 10000
        self.username = 'root'
        self.database = 'default'
        self.conn_hive()

    def conn_hive(self):
        conn = hive.Connection(host=self.host, port=self.port, username=self.username, database=self.database)
        return conn.cursor()

    def inst_hive(self):
        pass

    def select_hive(self, table):
        return self.conn_hive().execute("select * from " + table + " limit 10")

    def close_conn(self):
        return self.conn_hive().close()


if __name__ == "__main__":
    test_hie = PyHive()
    try:
        result = test_hie.select_hive('default.kylin_sales')
        for res in result:
            print(res)

    except ConnectionError as e:
        print(e)
    finally:
        test_hie.close_conn()

 

三、异常

 

 

Traceback (most recent call last):
  File "D:/WorkSpace/Python/PyHive/conn_hive.py", line 31, in <module>
    test_hie = PyHive()
  File "D:/WorkSpace/Python/PyHive/conn_hive.py", line 14, in __init__
    self.conn_hive()
  File "D:/WorkSpace/Python/PyHive/conn_hive.py", line 17, in conn_hive
    conn = hive.Connection(host=self.host, port=self.port, username=self.username, database=self.database)
  File "C:\Anaconda3\lib\site-packages\pyhive\hive.py", line 192, in __init__
    self._transport.open()
  File "C:\Anaconda3\lib\site-packages\thrift_sasl\__init__.py", line 79, in open
    message=("Could not start SASL: %s" % self.sasl.getError()))
thrift.transport.TTransport.TTransportException: Could not start SASL: b'Error in sasl_client_start (-4) SASL(-4): no mechanism available: Unable to find a callback: 2'

Process finished with exit code 1

最终没有找到解决方法。

https://ask.hellobi.com/blog/ysfyb/18251

posted @ 2019-12-23 20:34  西二旗老实人  阅读(1686)  评论(0编辑  收藏  举报