欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python連接Impala實現(xiàn)步驟解析

 更新時間:2020年08月04日 08:32:35   作者:楔子  
這篇文章主要介紹了Python連接Impala實現(xiàn)步驟解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

Impyla是用于分布式查詢引擎的HiveServer2實現(xiàn)(如Impala、Hive)的python客戶端

1)安裝impyla

pip install impyla

安裝報錯

解決辦法:

根據(jù)提示下載對應的工具

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

直接下載安裝即可

工具安裝完成后,繼續(xù)pip install impyla

安裝成功

代碼測試:

from impala.dbapi import connect
conn = 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 connect

class 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,"沒有設置數(shù)據(jù)庫信息")
    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,"連接數(shù)據(jù)庫失敗")
    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()

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

最新評論