永続性に関して、とsparkRDD
の違いは何ですか?cache()
persist()
132937 次
6 に答える
240
ではcache()
、デフォルトのストレージ レベルのみを使用します。
MEMORY_ONLY
RDD用MEMORY_AND_DISK
データセット用
では、 RDDとDatasetpersist()
の両方に必要なストレージ レベルを指定できます。
公式ドキュメントから:
- () または() メソッド
RDD
を使用して、 を永続化するようにマークできます。persist
cache
- 永続化されたそれぞれ
RDD
は、異なるを使用して保存できますstorage level
- (
cache
) メソッドは、StorageLevel.MEMORY_ONLY
(デシリアライズされたオブジェクトをメモリに格納する) デフォルトのストレージ レベルを使用するための省略形です。
persist()
以外のストレージ レベルを割り当てる場合に使用します。
MEMORY_ONLY
RDDへ- またはデータセット
MEMORY_AND_DISK
の場合
公式ドキュメントへの興味深いリンク:どのストレージレベルを選択するか
于 2014-11-12T08:42:52.653 に答える
50
違いはありません。からRDD.scala
。
/** Persist this RDD with the default storage level (`MEMORY_ONLY`). */
def persist(): this.type = persist(StorageLevel.MEMORY_ONLY)
/** Persist this RDD with the default storage level (`MEMORY_ONLY`). */
def cache(): this.type = persist()
于 2014-11-11T19:13:04.113 に答える