99偷拍视频精品区一区二,口述久久久久久久久久久久,国产精品夫妇激情啪发布,成人永久免费网站在线观看,国产精品高清免费在线,青青草在线观看视频观看,久久久久久国产一区,天天婷婷久久18禁,日韩动漫av在线播放直播

如何使用Hive合并小文件

如何使用Hive合并小文件,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

創新互聯公司主營洛江網站建設的網絡公司,主營網站建設方案,app軟件定制開發,洛江h5成都小程序開發搭建,洛江網站營銷推廣歡迎洛江等地區企業咨詢

問題背景    

目前集群存于一個非常不健康的狀態,主要問題是小文件太多,單個DataNode的block數量閾值是500,000,而現在單個DataNode的block為2,631,218,約為閾值的5倍,現在所有DataNode都處于黃色不健康狀態。

小文件問題會直接帶來NameNode的壓力巨大,從而導致HDFS的穩定性,同時對HDFS日常的數據讀寫帶來性能下降。目前已可以看到集群的NameNode頻繁出現檢查點告警問題。

通過對集群中目前目錄個數,文件大小,文件數量,Hive表數量,Hive數據庫數量,Hive分區數量進行了詳細的數據采集。發現主要是HDFS目錄中的小文件太多,大量1KB的文件,甚至是小于1KB的文件;具體表現為:不論表與分區的數據量大小,當有分區時每個分區具有200個文件,當沒有分區時每個表有200個文件,而許多表是小表,所以造成嚴重的小文件問題。

解決此問題的方法主要為兩個方面;一是從源頭解決小文件問題,在導數的過程中對作業進行優化,以減少小文件的輸出,此方法需要業務方解決;二是合并平臺上已有的小文件;本問描寫合并平臺小文件的方案。

原表情況    

通過對集群內的文件數量以及文件大小進行分析,小文件問題基本出現在hive表中;經過近一步分析,發現每個分區存在著200個小文件,可以將這些文件合并減少小文件數量從而緩解小文件問題。

示例表test_part一共20行數據,以字段date_str為分區

如何使用Hive合并小文件

如何使用Hive合并小文件

如何使用Hive合并小文件

共有五個分區

如何使用Hive合并小文件

每個分區分別四個文件

如何使用Hive合并小文件

執行流程    

執行流程總體如下:

1、使用create table name like tb_name創建備用表,使得表結構保持一致;

如何使用Hive合并小文件

2、配置支持merge等參數,并使用insert overwrite語句讀取原表數據插入到備用表。

如何使用Hive合并小文件

3、確認表數據一致后,刪除原表,使用alter語句將備用表的表名修改為原表的表名。

如何使用Hive合并小文件

方案描述    

新建備表,表結構與原表保持一致

create table test_part_bak like test_part; 

如何使用Hive合并小文件

如何使用Hive合并小文件

設置如下參數,使支持合并

SET hive.merge.mapfiles = true;
SET hive.merge.mapredfiles = true;
SET hive.merge.size.per.task = 256000000;
SET hive.merge.smallfiles.avgsize = 134217728;
SET hive.exec.compress.output = true;
SET parquet.compression = snappy;
SET hive.exec.dynamic.partition.mode = nonstrict;
SET hive.exec.dynamic.partition = true;

如何使用Hive合并小文件

使用insert overwrite語句查詢原表數據覆蓋備表

insert overwrite table test_part_bak partition(date_str) select * from test_part;

如何使用Hive合并小文件

備用表數據和原表一致

如何使用Hive合并小文件

刪除原表,將備用表表名修改為原表名

alter table test_part_bak rename to test_part;

如何使用Hive合并小文件

合并后表數據沒有變化

如何使用Hive合并小文件

表結構一致

如何使用Hive合并小文件

從HDFS文件系統可以看出,分區數量沒有改變,每個分區的幾個小文件已經合并為一個文件。

如何使用Hive合并小文件

關于如何使用Hive合并小文件問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注創新互聯行業資訊頻道了解更多相關知識。

當前題目:如何使用Hive合并小文件
瀏覽地址:http://www.yijiale78.com/article24/pchdce.html

成都網站建設公司_創新互聯,為您提供自適應網站品牌網站設計虛擬主機Google云服務器軟件開發

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

營銷型網站建設