python3.7 利用pyhive 连接上hive(亲测可用)
来python爬虫中,经常会遇到数据的存储问题,如果有大量数据,hive存储是个不错的选择。
那么python如何来连接hive呢?网上有各种教程但是都不是很好用,亲自测试pyhive可用
要求:可用的hive环境 python3++ hive环境必须要安装hiveserver2(
HiveServer是一种可选服务,允许远程客户端可以使用各种编程语言向Hive提交请求并检索结果。HiveServer是建立在Apache ThriftTM(http://thrift.apache.org/) 之上的,因此有时会被称为Thrift Server,这可能会导致混乱,因为新服务HiveServer2也是建立在Thrift之上的.自从引入HiveServer2后,HiveServer也被称为HiveServer1。
)
下载需求包
pip install sasl pip install thrift pip install thrift-sasl pip install PyHive
连接hive 注意端口 这里是hiveserver2的端口 默认为10000
from pyhive import hive conn = hive.Connection(host='10.8.13.120', port=10000, username='hdfs', database='default') cursor = conn.cursor() cursor.execute('show tables') for result in cursor.fetchall(): print(result)
可能会有报错
thrift.transport.TTransport.TTransportException: Could not start SASL: b'Error in sasl_client_start (-4) SASL(-4): no mechanism available: No worthy mechs found'
解决办法
1 | yum install cyrus-sasl-devel cyrus-sasl-gssapi cyrus-sasl-md5 cyrus-sasl-plain |
WINDOS篇 参考 https://ask.hellobi.com/blog/ysfyb/18251
注意 WINDOWS 用pyhive会有问题,且目前无法解决。 所以选择
impala
python3 通过ldap连接impala
python3.7 对impala支持不好
pip3 install impyla==0.15a1
报错 ModuleNotFoundError: No module named 'thrift_sasl'
pip3 install thrift_sasl
from impala.dbapi import connect host='10.0.5.66' username='hadoop' password='2Ghlmcl' port=21050 data_base_name='zftest' db_connection = connect(host=host, port=port, user=username, password=password, database=data_base_name, auth_mechanism='LDAP') cursor = db_connection.cursor() cursor.execute('show databases') print(cursor.fetchall()) cursor.close() db_connection.close()
标签:
python hive
, IMPALA
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架