Python连接Impala获取表的数据,遇到的坑

本文记录使用Linux下,Python连接Impala获取某表的数据过程。

一、安装需要的包

安装了以下的包:

bitarray-1.5.1.tar.gz

six-1.14.0-py2.py3-none-any.whl

thrift-0.13.0.tar.gz

ply-3.11.tar.gz

thriftpy2-0.4.11.tar.gz

yum install gcc-c++ python-devel.x86_64 cyrus-sasl-devel.x86_64

sasl-0.2.1.tar.gz

thrift_sasl-0.4.2.tar.gz

thrift-0.13.0.tar.gz

impyla-0.16.2.tar.gz

二、测试链接是否成功


import pandas as pd
from impala.dbapi import connect
from impala.util import as_pandas
import datetime
from sqlalchemy import create_engine
print('开始测试链接')


conn = create_engine("impala://用户名:密码@IP:port/库名?auth_mechanism=PLAIN")
print('get data....')
data = pd.read_sql("select * from 表名", con=conn)
print('获取数据结束,打印数据。')
print(data)

print('finish...')

三、遇到的问题

在测试连接时,遇到一下问题:

四、解决

经过在网上的多次查找,终于找到错误原因:thrift_saal版本不匹配。故,进行一下操作:

1)删除:

        thrift_sasl-0.4.2.tar.gz

2)安装:

        Cython-0.29.21-cp37-cp37m-manylinux_x86.64.whl

        thriftpy-0.3.9.tar.gz

        thrift_sasl-0.2.1.tar.gz

OK.

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值