永続性に関して、とsparkRDDの違いは何ですか?cache()persist()
132937 次
6 に答える
240
ではcache()、デフォルトのストレージ レベルのみを使用します。
MEMORY_ONLYRDD用MEMORY_AND_DISKデータセット用
では、 RDDとDatasetpersist()の両方に必要なストレージ レベルを指定できます。
公式ドキュメントから:
- () または() メソッド
RDDを使用して、 を永続化するようにマークできます。persistcache- 永続化されたそれぞれ
RDDは、異なるを使用して保存できますstorage level- (
cache) メソッドは、StorageLevel.MEMORY_ONLY(デシリアライズされたオブジェクトをメモリに格納する) デフォルトのストレージ レベルを使用するための省略形です。
persist()以外のストレージ レベルを割り当てる場合に使用します。
MEMORY_ONLYRDDへ- またはデータセット
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 に答える