6
當在互聯網上搜索和閱讀有關此主題的答案時,我收到了令人困惑的消息。任何人都可以分享經驗?我知道一個事實,即gzipped csv不是,但是Parquet的文件內部結構可能會導致Parquet vs csv完全不同。在HDFS中對Spark進行gizipped Parquet文件拆分嗎?
當在互聯網上搜索和閱讀有關此主題的答案時,我收到了令人困惑的消息。任何人都可以分享經驗?我知道一個事實,即gzipped csv不是,但是Parquet的文件內部結構可能會導致Parquet vs csv完全不同。在HDFS中對Spark進行gizipped Parquet文件拆分嗎?
GZIP壓縮的Parquet文件實際上是可拆分的。這是因爲Parquet文件的內部佈局。這些總是可拆分的,獨立於使用的壓縮算法。
這其實主要是由於平面文件的設計,在下面的部分分爲:
您可以在這裏找到更詳細的解釋:https://github.com/apache/parquet-format#file-format
謝謝您的回答。只是想確認一下。這些技術上會是.gz.parquet文件而不是parquet.gz文件,對嗎?它只是像Microsoft Polybase這樣的產品在以實木複合格式從外部導出數據時生成.gz文件,而我還沒有驗證它是否是由其自身或文件塊內部壓縮的文件。 – YuGagarin
是的,他們應該是'gz.parquet'。壓縮應該通過Parquet實現在Parquet內完成。如果您有一個首先生成Parquet並在其上運行GZIP的工具,則這些工具實際上是無效的Parquet文件。對於Parquet,格式的某些部分不被壓縮(例如頭部)是非常重要的。這些部件很小(通常大約一個或兩個KiB),但壓縮它們會導致顯着的性能損失。 – xhochy