2017-04-10 23 views
6

Bu konuyla ilgili internette cevap ararken ve okurken kafa karıştırıcı mesajlar alıyorum. Herkes deneyimlerini paylaşabilir mi? Ben gzipped csv değil, ama Parke için iç yapıları dosya Parke vs csv için tamamen farklı bir durum böyle bir gerçeği biliyorum ki, biliyorum.gzipped Parçalı HDFS için Parke dosyası ayrılabilir mi?

cevap

11

GZIP sıkıştırmalı parke dosyaları aslında bölünebilir. Bu, Parquet dosyalarının iç düzeninden kaynaklanmaktadır. Bunlar, kullanılan sıkıştırma algoritmasından bağımsız olarak her zaman ayrılabilirdir.

Bu gerçek aşağıdaki parçaya ayrılmış Parke dosyalarının tasarımı kaynaklanmaktadır:

  1. Her Parke dosyaları birkaç sıra gruplarından oluşur, bunlar HDF'ler Blok Boyutu aynı boyutta olmalıdır.
  2. Her bir RowGroup, sütun başına bir ColumnChunk oluşur. Bir RowGroup içindeki her ColumnChunk aynı sayıda Satırlara sahiptir.
  3. ColumnChunks, Sayfalar'a bölünmüştür, bunlar büyük olasılıkla 64KiB ila 16MiB arasındadır. Sıkıştırma, sayfa başı olarak yapılır, böylece bir sayfa, bir işin üzerinde çalışabileceği en düşük paralelleştirme düzeyidir.

Bir burada daha ayrıntılı bir açıklama bulabilirsiniz: Cevabınız için https://github.com/apache/parquet-format#file-format

+1

teşekkür ederiz. Sadece onaylamak istiyorum. Bunlar teknik olarak .gz.parquet dosyaları ve parquet.gz dosyaları değil, doğru mu? Sadece Microsoft Polybase gibi ürünler .gz dosyaları üretiyorlar ve dışardan parke formatında dışarı veri aktarıyorlar ve henüz kendileri veya dosya kümeleri içersinde sıkıştırılmış dosya olup olmadığını henüz doğrulamamışlar. – YuGagarin

+3

Evet, gz.parquet olmalılar. Parke uygulaması ile sıkıştırma Parke içinde yapılmalıdır. İlk önce Parke'yi oluşturan ve ardından GZIP'yi çalıştıran bir aracınız varsa, bunlar aslında geçersiz Parke dosyalarıdır. Parke için, formatın bazı bölümlerinin sıkıştırılmadığı (örneğin, başlık) zorunludur. Bu parçalar küçüktür (genellikle bir veya iki KiB civarındadır), ancak onları sıkıştırmak önemli performans kaybına yol açacaktır. – xhochy

İlgili konular