HIVE存儲格式詳解


目前hive常用的存儲格式

STORED AS (TextFile|RCFile|SequenceFile|AVRO|ORC|Parquet)

TEXTFILE, SEQUENCEFILE, RCFILE, ORC, PARQUET, AVRO

下面是他們的詳細對比:

格式 存儲方式 壓縮方式 具體特點
TEXTFILE 按行存儲 Gzip,Bzip2  存儲空間消耗比較大,並且壓縮的text 無法分割和合並 查詢的效率最低,可以直接存儲,加載數據的速度最高
SEQUENCEFILE 按行存儲 NONE,RECORD,BLOCK。Record壓縮率低,一般建議使用BLOCK壓縮 存儲空間消耗最大,壓縮的文件可以分割和合並 查詢效率高,需要通過text文件轉化來加載
RCFILE 按列存儲  
存儲空間最小,
查詢的效率最高 ,
需要通過text文件轉化來加載,
加載的速度最低。
壓縮快 快速列存取。
讀記錄盡量涉及到的block最少 
讀取需要的列只需要讀取每個row group 的頭部定義。 
讀取全量數據的操作 性能可能比sequencefile沒有明顯的優勢
ORC 按列存儲 zlib(default),snappy 壓縮快,快速列存取 ,效率比rcfile高,是rcfile的改良版本
PARQUET 按列存儲   相對於PRC,Parquet壓縮比較低,查詢效率較低,不支持update、insert和ACID.但是Parquet支持Impala查詢引擎
AVRO 按行存儲    

參考資料:

https://zh.hortonworks.com/blog/orcfile-in-hdp-2-better-compression-better-performance/

https://www.cnblogs.com/skyl/p/4740301.html

https://cwiki.apache.org/confluence/display/Hive/LanguageManual+ORC

 http://dwgeek.com/hive-different-file-formats-text-sequence-rc-avro-orc-parquet-file.html/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM