查找用于hadoop文件的压缩编解码器

时间:2018-10-20 18:10:03

标签: hadoop compression avro parquet sequencefile

给出一种在hadoop平台上编写的压缩文件,格式如下:

  • Avro
  • 实木复合地板
  • SequenceFile

如何找到使用的压缩编解码器?假设使用以下压缩编解码器之一(文件名中没有文件扩展名):

  • 活泼
  • Gzip(Avro不支持)
  • 排骨(Parquet不支持)

1 个答案:

答案 0 :(得分:1)

Parquet的Java实现包括parquet-tools实用程序,提供了几个命令。有关构建和入门的信息,请参见其documentation page。各个命令的更详细说明由parquet-tools自己打印。您要查找的命令是meta。这将显示各种元数据,包括压缩。您可以找到示例输出here,其中显示了SNAPPY压缩。

请注意,整个文件的压缩算法不必相同。不同的列块可以使用不同的压缩,因此压缩编解码器没有单个字段,而是每个列块都有一个字段。 (列块是属于一个行组的列的一部分。)但是,在实践中,您可能会发现所有列块都使用相同的压缩编解码器。

Avro有一个类似的实用程序,称为avro-tool。我不太熟悉它,但是它has是一个getmeta命令,可以向您显示所使用的压缩编解码器。