阅读完本文,你可以知道:
1 如何在Win10系统使用Python3连接Hive
由于数据存放在大数据平台的Hive数据仓库中,我需要在Win10系统上利用Python3连接Hive,然后读取数据,进行探索、分析和挖掘工作。
我通过网上查找资料和实际测试,把Win10系统Python3成功连接Hive配置总结如下。
第一步:安装依赖库
pip install bitarray
pip install bit_array
pip install thrift
pip install thriftpy
pip install pure_sasl
pip install --no-deps thrift-sasl==0.2.1
提示:若是无法安装,也可以点击如下网址,
https://www.lfd.uci.edu/~gohlke/pythonlibs/
选择合适库的whl下载,然后进行本地化安装。
第二步:安装impyla库
我采用本地化安装方式,先下载impyla库的whl,如下图:
再安装。
pip install E:/Python_Library/impyla-0.16.2-py2.py3-none-any.whl
提示:上面的绝对路径根据你自己的情况而定
第三步:测试impyla库是否可以使用
from impala.dbapi import connect #用来连接Hive的函数
from impala.util import as_pandas #用来把数据结构转换为pandas
若是运行通过,表示利用impala连接Hive配置成功。
简单示例:
从Hive的一张表读取100条记录,放到pandas的DataFrame里面。
参考代码:
from impala.dbapi import connect #用来连接Hive的函数
from impala.util import as_pandas #用来把数据结构转换为pandas
conn = connect(host='my.host.com', port=21050)
cursor = conn.cursor()
cursor.execute('SELECT * FROM mytable LIMIT 100')
df = as_pandas(cursor)
cursor.close()
参考资料:
1 https://github.com/cloudera/impyla
2 https://zhuanlan.zhihu.com/p/79443676
3 https://www.aitolearn.com/article/9a06a8e1ff5e4252aa2373eb3cc4fed8