PHP前端开发

Python如何连接和启动Hive

百变鹏仔 3小时前 #Python
文章标签 Python

1.在使用python连接hive之前,需要将hive安装包下的lib/py中的文件拷贝到python的sys.path中的site-packages下,否则引入对应的包会报错,这个是使用hive提供的python接口来调用hive客户端。

2 启动hive 的thrift

确保以下服务开启:

hive --service hiveserver

默认端口是10000

立即学习“Python免费学习笔记(深入)”;

from hive_service import ThriftHivefrom thrift import Thriftfrom thrift.transport import TSocketfrom thrift.transport import TTransportfrom thrift.protocol import TBinaryProtocoldef ReadHiveTest(sql):try:tSocket = TSocket.TSocket('172.18.1.88',10000)tTransport = TTransport.TBufferedTransport(tSocket)protocol = TBinaryProtocol.TBinaryProtocol(tTransport)client = ThriftHive.Client(protocol)tTransport.open()client.execute(sql)return client.fetchAll()except Thrift.TException, tx:print '%s' % (tx.message)finally:tTransport.close()if __name__ == '__main__':showDatabasesSql = 'show databases'showTablesSql = 'show tables'selectSql = 'SELECT * FROM 07_jn_mysql_2'result = ReadHiveTest(selectSql)print(result[1])