2016-03-04 59 views
5

我正在嘗試使用Spark SQL來編寫parquet文件。Spark SQL - gzip vs snappy與lzo壓縮格式的區別

默認情況下,Spark SQL支持gzip,但它也支持其他壓縮格式,如snappylzo

這些壓縮格式與哪一個最適合使用Hive加載有什麼區別。

+2

似乎默認的Spark採用 「瞬間」,而不是 「壓縮」。至少這就是我在s3上看到的:使用字符串「snappy」創建的文件作爲其名稱的一部分。 – bashan

+0

@bashan:spark的最新版本將默認格式更改爲snappy,直到1.6.1我可以看到默認parquet壓縮格式爲gzip。 – Shankar

回答

10

只需在您的數據上嘗試一下。

lzo和snappy是快速壓縮機和速度非常快的解壓縮器,但壓縮比較少,與gzip相比壓縮更好,但速度稍慢。

5

如果您可以處理更高的磁盤使用以獲得更高的性能優勢(較低的CPU +可拆分表),請使用Snappy。

星火時默認情況下,從GZIP切換到活潑的,這是一個道理:

根據我們的測試,gzip的減壓是非常緩慢(< 100MB/S), 進行查詢減壓約束。 Snappy可以在單個內核上以〜500MB/s的速度解壓縮到 。

斯納皮:

  • 存儲空間:高
  • CPU使用率:低
  • 裂開的:(1)

GZIP:

  • 存儲空間:中等
  • CPU使用率:中
  • 裂開的:沒有

1)http://boristyukin.com/is-snappy-compressed-parquet-file-splittable/