在互联网上搜索和阅读有关此主题的答案时,我收到了令人困惑的消息。有人可以分享他们的经验吗?我知道 gzipped csv 不是这样的事实,但也许 Parquet 的文件内部结构是这样的,Parquet 与 csv 的情况完全不同?
使用 GZIP 压缩的 Parquet 文件实际上是可拆分的。这是因为 Parquet 文件的内部布局。它们始终是可分割的,与所使用的压缩算法无关。
这一事实主要是由于 Parquet 文件的设计分为以下几个部分:
- 每个 Parquet 文件由多个 RowGroup 组成,这些 RowGroup 的大小应与 HDFS 块大小相同。
- 每个 RowGroup 每列由一个 Column chunk 组成。行组中的每个列块具有相同数量的行。
- ColumnChunk 被分割成页面,这些页面的大小可能为 64KiB 到 16MiB。压缩是按页进行的,因此页面是作业可以处理的最低并行化级别。
您可以在这里找到更详细的解释:https://github.com/apache/parquet-format#file-format https://github.com/apache/parquet-format#file-format
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)