[問題] 如何透過Python連線到Cloudera Hive?

看板Python作者 (BLG_Eric)時間9年前 (2016/09/07 11:18), 編輯推噓2(202)
留言4則, 2人參與, 最新討論串1/1
各位版上大神好: 小弟我最近在寫一個程式 是要透過Django/Python連線到Cloudera Hue的Hive 上傳資料(csv)到HDFS上並自動匯入成Table 目前的配置是一台Cloudrea官方釋出的Quickstart VM VM作業系統是centos 6.5(Python 2.6) 但是我是用Python 3.5寫的程式 Master 和 Slave(一個) 的IP都是10.0.2.15 port 網站用8888 HiveServer2 用10000 Hive Metastore用9083 我已試過用Pyhive連線但是不管怎麼試都失敗 根據自己debug來看連線似乎有連到 但是cursor.execute()那邊會掛掉跑不出結果 也沒有錯誤訊息(log那邊是java看不懂) 程式如下: from pyhive import presto cursor = presto.connect('localhost',port=10000).cursor() cursor.execute('SELECT * FROM nba;') print cursor.fetchall() #這裡有試過把localhost換成quickstart.cloudera(網站名稱)也是會卡住 我也用過pyhs2連過但是byte和str轉換的error太多讓我放棄 希望各位能給我一些意見或是更好的library用 因為網路上的資料太少了 感謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.32.19.185 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1473218337.A.5EC.html

09/07 14:29, , 1F
透過thrift server
09/07 14:29, 1F

09/07 14:29, , 2F
09/07 14:29, 2F

09/07 14:30, , 3F
但是我個人覺得用python 呼叫shell 呼叫hive指令最穩
09/07 14:30, 3F

09/08 15:00, , 4F
可能是python版本問題,我用2.7可以正常運作
09/08 15:00, 4F
文章代碼(AID): #1NpuSXNi (Python)
文章代碼(AID): #1NpuSXNi (Python)