Avro、parquet 和 SequenceFileFormat 在 Hadoop 生态系统中的地位及其效用

Avro,parquet and SequenceFileFormat position in Hadoop Ecosystem and their utility

我看到在导入和存储到 HDFS 时使用了不同的文件格式,而且数据处理引擎在执行它们自己的一组操作时使用了这些格式 procedures.So这些文件格式有什么样的区别以及它们的选择方式专为不同用途而设计 cases.Being 它创建的新手 confusion.Kindly 帮助相同。

根据您拥有的数据类型、与处理工具的兼容性、模式演变、文件大小、查询类型和读取性能,选择取决于您所面临的用例。

总的来说:

  • Avro 更适合随时间变化的事件数据
  • 序列用于在 MR 作业之间分片的数据集
  • Parquet 更适合分析,因为它是柱状格式

这里有一些可以帮助你的关键

写入性能(越多+越快)

  • 序列:+++
  • 阿芙罗:++
  • 实木复合地板:+

阅读性能(越多+越快)

  • 序列:+
  • Avro : + + +
  • 实木复合地板:+ + + + +

文件大小(越多+文件越小)

  • 序列:+
  • 阿芙罗:++
  • 实木复合地板:+ + +

这里是关于每种文件类型的一些事实

阿芙罗:

  • 模式演进更好
  • 是面向行的二进制格式
  • 有架构
  • 除了数据之外,文件还包含架构。
  • 支持模式演变
  • 可以压缩
  • 紧凑快速的二进制格式

实木复合地板:

  • 写的慢读的快
  • 是面向列的二进制格式
  • 支持压缩
  • 在需要查询特定列时I/O在磁盘方面进行了优化和高效

序列文件:

  • 是面向行的格式
  • 即使数据被压缩也支持拆分
  • 可以用来在hadoop中打包小文件

希望我的回答对您有所帮助