日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Hive Fetch Task

發(fā)布時(shí)間:2025/7/14 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Hive Fetch Task 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

為什么80%的碼農(nóng)都做不了架構(gòu)師?>>> ??

show?tables;?metastore->>mysql;? select?*?from?bi.dpods_dp_unsubscribe?where?hp_statdate?=?'2015-03-22'?limit?10;?-》不起job? select?dpid?from?bi.dpods_dp_unsubscribe?where?hp_statdate?=?'2015-03-22'?limit?10;?->起job,需要resource?manager

如果你想查詢某個(gè)表的某一列,Hive默認(rèn)是會(huì)啟用MapReduce Job來完成這個(gè)任務(wù),如下: 我們都知道,啟用MapReduce Job是會(huì)消耗系統(tǒng)開銷的。對于這個(gè)問題,從Hive0.10.0版本開始,對于簡單的不需要聚合的類似(SELECT columns from table_name)不需要起MapReduce job,直接通過Fetch task獲取數(shù)據(jù),可以通過設(shè)置如下屬性實(shí)現(xiàn):

set?hive.fetch.task.conversion=more;?//?簡單查詢就不走map/reduce了,直接讀取hdfs文件進(jìn)行filter過濾。但是有數(shù)據(jù)量大時(shí)要等很長時(shí)間,且沒有任何返回。 set?hive.fetch.task.conversion=minimal;?//?任何簡單select都會(huì)走map/reduce;

開啟了Fetch任務(wù),所以對于上述簡單的列查詢不在啟用MapReduce job。上面的兩種方法都可以開啟了Fetch任務(wù),但是都是臨時(shí)起作用的;如果你想一直啟用這個(gè)功能,可以在${HIVE_HOME}/conf/hive-site.xml里面加入以下配置:?

<property><name>hive.fetch.task.conversion</name><value>more</value><description>Some?select?queries?can?be?converted?to?single?FETCH?task?minimizing?latency.Currently?the?query?should?be?single?sourced?not?having?any?subquery?and?should?not?haveany?aggregations?or?distincts?(which?incurrs?RS),?lateral?views?and?joins.1.?minimal?:?SELECT?STAR,?FILTER?on?partition?columns,?LIMIT?only2.?more????:?SELECT,?FILTER,?LIMIT?only?(+TABLESAMPLE,?virtual?columns)</description> </property>

meta store查詢:

show?tables; desc?database?finance;

PS:

發(fā)現(xiàn)hive就可以啟動(dòng)起來了,其實(shí)我們只需要把hive理解為幾個(gè)部分即可:metastore、thrift server和剩下的hive,這幾個(gè)部分都是可以分開部署的,放在不同的服務(wù)器上,這樣的設(shè)計(jì)增加了hive的ha和可擴(kuò)展性 但是分開部署會(huì)犧牲很大的可維護(hù)性,也增加了運(yùn)維的復(fù)雜性,所以一般還是把元數(shù)據(jù)留著mysql中其他的部分放在一個(gè)jvm中。 hive也是個(gè)cs結(jié)構(gòu)的東西 thrift是負(fù)責(zé)client和server通信的。?


轉(zhuǎn)載于:https://my.oschina.net/rathan/blog/603415

總結(jié)

以上是生活随笔為你收集整理的Hive Fetch Task的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。