/ / MapReduceジョブに対する圧縮の効果は何ですか? - ハドープ、mapreduce

MapReduceジョブに対する圧縮の影響は何ですか? - hadoop、mapreduce

以下は、マイクロソフトからのホワイトペーパーに記載されています。

入力ソースファイルが非常に大きく(たとえば500 GBを超える)、同じ入力データに対してMapReduceジョブを繰り返し実行する場合は、圧縮が役立ちます。

だから、我々は圧縮を使用する必要があります 入力ファイルが非常に大きい場合ディスクI / Oとネットワーク帯域幅が節約されるためです。

しかし、MapReduceの実行方法がわからない同じ入力データに対して繰り返しジョブを実行する」と、圧縮と解凍のパフォーマンスが向上しますか?データが毎回異なる場合でも、圧縮は同じパフォーマンスであるはずです。

回答:

回答№1は0

ファイルの圧縮にどのような圧縮ロジックが使用されているかによると思います。以下は私がインターネット上で見つけた情報です。

http://comphadoop.weebly.com/

ファイル圧縮には2つの大きな利点があります。 a。 ファイルを保存するのに必要なスペースを減らします。 b。ネットワークを介した、またはディスクとの間のデータ転送を高速化します。大量のデータを扱う場合、これらの節約はどちらも大きくなる可能性があるため、Hadoopで圧縮を使用する方法を慎重に検討することをお勧めします。

圧縮する理由: a)データは主に保存されており、頻繁には処理されません。通常のDWHシナリオです。この場合、スペースの節約は処理のオーバーヘッドよりもはるかに重要になります。 b)圧縮率は非常に高く、そのため私たちは多くのIOを節約できます。 c)解凍はとても速く(Snappyのように)、それで我々は少しの価格でいくらかの利益を得ます d)データはすでに圧縮されて到着しています

圧縮しない理由:

a)圧縮データは分割できません。 注意しなければならないのは、近代的なフォーマットの多くは、ファイルの分割やその他の部分処理を可能にするためにブロックレベルの圧縮で構築されているということです。 b)データがクラスター内に作成され、圧縮にかなりの時間がかかる。通常、圧縮は解凍よりもはるかにCPUに負荷がかかります。

すべての圧縮アルゴリズムは空間/時間を示します妥協点:圧縮と解凍の速度を速くすると、通常はスペースを節約することができます。つまり、(時間の点で)圧縮が速いということは、ファイルが比較的大きいということです(スペースにあまり利点はありません)。圧縮が遅いということは、圧縮ファイルが非常に小さいということです。 2.一般的な入力フォーマット

さまざまな圧縮形式