Apache spark gzipped拼花地板文件是否可以在Spark的HDFS中拆分?
当我在互联网上搜索和阅读关于这个问题的答案时,会收到令人困惑的信息。有人可以分享他们的经验吗?我知道GZIP压缩的csv不是,但也许拼花地板的文件内部结构与csv完全不同?具有GZIP压缩的拼花地板文件实际上是可拆分的。这是因为拼花文件的内部布局。这些始终是可拆分的,与使用的压缩算法无关 这主要是由于拼花地板文件的设计分为以下几个部分:Apache spark gzipped拼花地板文件是否可以在Spark的HDFS中拆分?,apache-spark,gzip,parquet,Apache Spark,Gzip,Parquet,当我在互联网上搜索和阅读关于这个问题的答案时,会收到令人困惑的信息。有人可以分享他们的经验吗?我知道GZIP压缩的csv不是,但也许拼花地板的文件内部结构与csv完全不同?具有GZIP压缩的拼花地板文件实际上是可拆分的。这是因为拼花文件的内部布局。这些始终是可拆分的,与使用的压缩算法无关 这主要是由于拼花地板文件的设计分为以下几个部分: 每个拼花地板文件由多个行组组成,这些行组的大小应与HDFS块的大小相同 每个行组由每列一个列块组成。行组中的每个列块具有相同的行数 ColumnChunk被拆分
您可以在这里找到更详细的解释:谢谢您的回答。我只是想确认一下。从技术上讲,这些将是.gz.parquet文件,而不是parquet.gz文件,对吗?它只是像Microsoft Polybase这样的产品在以拼花格式从外部导出数据时生成.gz文件,我还没有验证它是由自身压缩的文件还是内部的文件块。是的,它们应该是
gz.parquet
。压缩应在实木地板内部进行。如果您有一个工具,首先生成拼花,然后在其上运行GZIP,那么这些实际上是无效的拼花文件。对于拼花地板,格式的某些部分(例如页眉)必须不压缩。这些部件很小(通常在一到两KiB左右),但压缩它们会导致显著的性能损失。