成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Hive的Python異步客戶端

nihao / 2351人閱讀

摘要:最近在做一個(gè)面向的查詢服務(wù),主程序是寫的。舊版本的異步激活方式很簡單但在試驗(yàn)無效,查到加入了一個(gè)的布爾型參數(shù),猜想可能與異步有關(guān),結(jié)果一試就靈。至于同樣走的了,官方明確表示是不支持異步的啦。

最近在做一個(gè)面向Hive的查詢服務(wù),主程序是Python寫的。
Hive的查詢時(shí)間通常都要在1分鐘以上,讓用戶等待不太友好,因此我們想到了用HiveServer2的異步接口,第一時(shí)間給用戶返回,下次用戶再訪問的時(shí)候,利用密鑰重建上次的查詢,獲取上個(gè)查詢的狀態(tài),如果用戶等待太久了還可以主動(dòng)取消。

環(huán)境搭建
我們的Hadoop版本是CDH5.1.0,對應(yīng)Hive版本是0.12.0。
Python與HiveServer2的通信是通過Thrift這種跨語言的協(xié)議實(shí)現(xiàn)的,所以首先要安裝Python的Thrift依賴庫。Thrift和Hive的版本更迭很快,對于0.12.0版本,推薦用y-lan同學(xué)的安裝包,反正我親證是沒什么問題。
要注意的是,默認(rèn)是需要SASL客戶端中轉(zhuǎn)的,對安全性要求不高的同學(xué)可以關(guān)掉SASL驗(yàn)證:
在Cloudera Manager控制臺(tái)進(jìn)入Hive->Configuration->HiveServer2 Default Group->Advanced,
「HiveServer2 Advanced Configuration Snippet (Safety Valve) for hive-site.xml」的配置中加入一行:

hive.server2.authenticationNOSASL

客戶端
HiveServer2異步的實(shí)現(xiàn)原理是,HiveServer2對每個(gè)operation都配置了惟一的ID(其實(shí)是guid和secret兩個(gè)參數(shù)),通過ID可以恢復(fù)上次的operation(其實(shí)session也是)。
舊版本的異步激活方式很簡單:

SET hive.server2.blocking.query=true

但在0.12.0試驗(yàn)無效,grepcode查到TExecuteStatementReq加入了一個(gè)runAsync的布爾型參數(shù),猜想可能與異步有關(guān),結(jié)果一試就靈。
附上源碼hiveserver2.py,有需要的同學(xué)自取吧。
至于同樣走HiveServer2的Impala了,官方明確表示是不支持異步的啦(Async Queries Over Thrift / Beeswax)。

  

來自:建造者說

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/45331.html

相關(guān)文章

  • 新書《全棧數(shù)據(jù)之門》完整目錄

    摘要:全棧數(shù)據(jù)之門前言自強(qiáng)不息,厚德載物,自由之光,你是我的眼基礎(chǔ),從零開始之門文件操作權(quán)限管理軟件安裝實(shí)戰(zhàn)經(jīng)驗(yàn)與,文本處理文本工具的使用家族的使用綜合案例數(shù)據(jù)工程,必備分析文件探索內(nèi)容探索交差并補(bǔ)其他常用的命令批量操作結(jié)語快捷鍵,之門提高效率光 showImg(https://segmentfault.com/img/bVK0aK?w=350&h=350); 全棧數(shù)據(jù)之門 前言 自強(qiáng)不息,...

    yibinnn 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<