大資料學習(二) python3操作hive

2021-09-10 17:12:19 字數 1190 閱讀 5389

使用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 使用...