2016-09-27 3 views
1

たとえば、私はメモリ内にいくつかのRDDをキャッシュしました。スパーク:RDDをキャッシュに入れておく時間はどれくらいですか

その後、私は数日以上のアプリケーションを残します。

次に、キャッシュされたRDDにアクセスしようとします。

まだメモリに残っていますか?

また、Sparkは、一定期間の経過後に未使用のキャッシュされたRDDをクリーニングします。

助けてください!

答えて

0

Sparkは自動的に各ノードのキャッシュ使用状況を監視し、古いデータパーティションをLRU(Least Recently Used)方式で廃棄します。 RDDをキャッシュから落ちるのを待つのではなく、手動で削除する場合は、RDD.unpersist()メソッドを使用します。

+0

ドライバプログラムが完全ではありません。長い間待っている/スリープ/ハングしてからRDDにアクセスするだけです。 –

+0

あなたの正確な要件は何ですか?クリアしたい場合は、unpersist()を使用して行うことができます。もし何もしなければ、ドライバプログラムがsparkコンテキストにアクセスできる限り使用できます。 –

+0

私は、より多くの日/月/年前にキャッシュされたRDDを使用したい(アプリケーションはまだ実行中です)。 [documentation](http://spark.apache.org/docs/latest/programming-guide.html)では、「Sparkは各ノードのキャッシュ使用状況を自動的に監視し、 (LRU)ファッションを使用しています。どの場合に、あるいはRDDをドロップするかを知る必要があります。 –

関連する問題