使用python3操作hive需要簡單的幾個步驟:
操作環境:linux
pip install sasl
pip install thrift
pip install thrift-sasl
pip install pyhive
安裝過程中,在安裝sasl的時候可能會出現 「缺少sasl.h」 的錯誤,此時,需要執行以下命令:
apt-get update
sudo apt-get install libsasl2-dev
安裝好libsasl2-dev就可以了。
二、連線hive並操作
from pyhive import hive
class get_hive_data():
def __init__(self, database, sql):
self.database = database
self.sql = sql
def conn_hive(self):
conn = hive.connection(host='10.0.xx.***', port=10***, username='***x', database=self.database)
cursor = conn.cursor()
return cursor
def get_tables(self):
cursor = self.conn_hive()
cursor.execute('show tables')
def get_sql_data(self):
cursor = self.conn_hive()
cursor.execute(self.sql)
for result in cursor.fetchall():
print(result) #將查詢結果列印出來
if __name__ == '__main__';
#使用者需要傳入的兩個引數分別為:1.想要查詢的資料庫名 2.sql語句
sql = 'select * from ********* limit 10' #***x為表名
database = 'default'
data = get_hive_data(database, sql)
data.get_sql_data()
Python3標準庫學習 二
這個模組包含 python 中使用的內建函式.一般不用手動匯入這個模組 python會幫你做好一切.python允許你實時地建立函式引數列表.只要把所有的引數放入乙個元組中或者字典中 示例 如下 encoding gb2312 created on 2012 5 1 author administr...
Python3 學習筆記(三)操作列表
想出至少三種有共同特徵的動物,將這些動物的名稱儲存在乙個列表中,再使用for 迴圈將每種動物的名稱都列印出來。animals dog cat pig for animal in animals print animal 修改這個程式,使其針對每種動物都列印乙個句子 animals dog cat p...
python3語言 Python3學習之語言基礎3
三 判斷 迴圈語句,函式,命名空間,作用域 1 python3 條件控制 python中if語句的一般形式如下所示 python 中用 elif 代替了 else if,所以if語句的關鍵字為 if elif else。注意 1 每個條件後面要使用冒號 表示接下來是滿足條件後要執行的語句塊。2 使用...