基于Hadoop生態(tài)系統(tǒng)的一高性能數(shù)據(jù)存儲格式CarbonData(性能篇)
CarbonData在數(shù)據(jù)查詢的性能表現(xiàn)比Parquet好很多,在寫一次讀多次的場景下非常適合使用;社區(qū)比較活躍,響應也很及時。目前官網(wǎng)發(fā)布版本1.3.0與***的spark穩(wěn)定版Spark2.2.1集成,增加了支持標準的Hive分區(qū),支持流數(shù)據(jù)準實時入庫等新特性,相信會有越來越多的項目會使用到。
一、評測環(huán)境
1)網(wǎng)絡拓撲圖

2)配置參數(shù)
Ø 服務器配置

二、性能對比
目前主流hadoop的文件存儲格式有行存儲的CSV格式,列式存儲的ORC和Parquet等。本章給出的是Parquet+Spark和CarbonData+Spark在過濾查詢場景和聚合計算場景的性能測試結果。
1)測試數(shù)據(jù)
創(chuàng)建沈陽社保的數(shù)據(jù)倉庫,導入、集成1年的測試數(shù)據(jù),如下表:

生成CarbonData格式文件,如下表:

2)過濾查詢場景測試


Parquet和CarbonData在過濾查詢場景下的性能對比
3)聚合計算場景測試
Parquet和CarbonData在聚合計算場景下的性能對比
4)總結分析
在過濾查詢中,CarbonData的查詢效率比parquet效率好,主要體現(xiàn)在列數(shù)據(jù)的索引查詢,極大地提高了精確查詢的性能。在聚合查詢中,CarbonData通過使用全局字典編碼來加快計算速度,這使得處理、查詢引擎可以直接在編碼好的數(shù)據(jù)上進行處理而不需要轉換數(shù)據(jù),數(shù)據(jù)只有在返回結果給用戶的時候才轉換成用戶可讀的形式,通過索引有效過濾文件數(shù)據(jù)塊減少磁盤的IO,提高查詢性能。

三、小結
CarbonData在數(shù)據(jù)查詢的性能表現(xiàn)比Parquet好很多,在寫一次讀多次的場景下非常適合使用;社區(qū)比較活躍,響應也很及時。目前官網(wǎng)發(fā)布版本1.3.0與***的spark穩(wěn)定版Spark2.2.1集成,增加了支持標準的Hive分區(qū),支持流數(shù)據(jù)準實時入庫等新特性,相信會有越來越多的項目會使用到。