公司切新的数据平台了。
好久没用Python,打算试试python连接impala。
事先在网上搜索,impala的安装方法,基本上看到的都是
pip install impyla
次次都怀疑自己的眼睛是不是花了。
惯性思维太严重,连接impala,不应该pip install impala吗
然而我错了!!!!
第一个坑:报错MicroSoft Visual C++ XX.0 is required
这个问题最容易解决,现在对应版本的Microsoft Visual C 安装即可
搞定之后
第二个坑:马上来,安装没有报错了,但是导入不了
from impala.dbapi import connect
对不起,还是报错(注意一定是from impala导入啊喂,from impyla import connect的话注定你这辈子都很难成功啊)
没关系,好在报错有章可查,
ThriftPy does not support generating module with path in protocol ……
怎么办呢,打开python安装路径下的thriftpy文件夹,找到parse文件,修改第488行的if url_scheme==''
为 if len(url_scheme)<=1 即可
保存后重新启动你的python shell或者jupyter notebook
大工告成!!
from impala.dbapi import connect
from impala.util import as_pandas
import pandas as pd
import numpy as np
#连接数据
conn=connect(host='地址啊喂',port=端口号啊喂)
cur=conn.cursor()
cur.execute('show tables')
print(cur.fetchall())
#查看输出结果吧,有表名就都连上啦~