2017-01-02 4 views
1

私はSparkを初めて使用しています。Sparkは500GB/1TBのデータをどのように保存するのですか

ここでは、256GBのRAMと72TBのハードディスクを搭載したマシンがあるとします。 500GB/1TBのファイルを1つロードすれば、どこにデータを格納するのか知りたいです。

問合せ:

それは、ディスク内のデータを保存するのでしょうか?

パーツデータをメモリに保存し、残りの半分をディスクに保存しますか?

ありがとうございます。

答えて

1

最初に、使用が何らかのアクションを使用しない限り、Sparkが遅延評価アプローチに従うため、ファイルには何の影響もありません。

アクションを指定すると、そのファイルの複数のパーティションを作成します

スパークは、その後の変換や行動に基づいて、メモリ内の各パーティションの処理を開始したファイルを処理することができるスパーク

今仮定するパーティションのサイズは、より多くのです現在のavalaibleメモリは、メモリまたはファイルに多くのデータまたはチャンクを格納し、ディスクに置いてそれに応じて処理しようとします。

質問がクリアされることを願っています。

+0

返信ありがとうございますAkash –

+0

答えを受け入れることを忘れないでくださいxoxo –

0

データはディスクに保存されています。処理中のみ、データをメモリにプルします。

+0

あなたのレスポンスのAniさん、ありがとうございます。私はまだ500GB/1TBのデータを256GBのメモリにどのようにロードするのでしょうか? –

+0

私はSparkについて具体的には分かりませんが、ディスク上の多くのデータ(利用可能なRAMよりも多くのデータなど)やSSDを処理できます(多くのシステムでは可能です)。データベースシステムは、その場合の典型的な例です。彼らはディスクデータをより細かく処理しています。 –

+0

@VineetSalviそれは異なります。データがメモリに収まらない場合は、データの一部がディスクに保存されます。 RDDまたはデータセットを 'cache()'すると、Sparkはメモリ内にのみ収まるようにしようとします –

関連する問題