Python连接Impala实现步骤解析

时间:2021-05-22

Impyla是用于分布式查询引擎的HiveServer2实现(如Impala、Hive)的python客户端

1)安装impyla

pip install impyla

安装报错

解决办法:

根据提示下载对应的工具

https://visualstudio.microsoft.com/zh-hans/downloads/

直接下载安装即可

工具安装完成后,继续pip install impyla

安装成功

代码测试:

from impala.dbapi import connectconn = connect(host='xxx.xxx.xxx.xxx', port=21050)cur = conn.cursor()cur.execute('show databases;')database_list=cur.fetchall()for data in database_list: print(data)

OK 正常连接

参照以前的Mysql连接工具类,写了个连接Impala的工具类:

from impala.dbapi import connectclass IMPALA: def __init__(self,host,port,user,pwd,db): self.host = host self.port = port self.user = user self.pwd = pwd self.db = db def __GetConnect(self): if not self.db: raise(NameError,"没有设置数据库信息") self.conn = connect(host=self.host,port=self.port,user=self.user,password=self.pwd,database=self.db) cur = self.conn.cursor() if not cur: raise(NameError,"连接数据库失败") else: return cur def ExecQuery(self,sql): cur = self.__GetConnect() cur.execute(sql) resList = cur.fetchall() #查询完毕后必须关闭连接 self.conn.close() return resList def ExecNonQuery(self,sql): cur = self.__GetConnect() cur.execute(sql) self.conn.commit() self.conn.close()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章