hdfs文件格式


Hadoop中的文件格式大致上分為面向行和面向列兩類:

  面向行:同一行的數據存儲在一起,即連續存儲。SequenceFile,MapFile,Avro Datafile。采用這種方式,如果只需要訪問行的一小部分數據,亦需要將整行讀入內存,推遲序列化一定程度上可以緩解這個問題,但是從磁盤讀取整行數據的開銷卻無法避免。面向行的存儲適合於整行數據需要同時處理的情況。

  面向列:整個文件被切割為若干列數據,每一列數據一起存儲。Parquet , RCFile,ORCFile。面向列的格式使得讀取數據時,可以跳過不需要的列,適合於只處於行的一小部分字段的情況。但是這種格式的讀寫需要更多的內存空間,因為需要緩存行在內存中(為了獲取多行中的某一列)。同時不適合流式寫入,因為一旦寫入失敗,當前文件無法恢復,而面向行的數據在寫入失敗時可以重新同步到最后一個同步點,所以Flume采用的是面向行的存儲格式。

  • 1、 SequenceFile
  • 2、Avro
  • 3、RCFile
  • 4、ORCFile

  可參看其博主文章:https://www.cnblogs.com/wqbin/p/14635480.html


免責聲明!

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



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