坚持

设置存储级别,以在首次计算数据帧后跨操作保留数据帧的内容。 仅当 DataFrame 尚未设置存储级别时,这才可用于分配新的存储级别。 如果未指定存储级别,则默认为 (MEMORY_AND_DISK_DESER)。

Syntax

persist(storageLevel: StorageLevel = StorageLevel.MEMORY_AND_DISK_DESER)

参数

参数 类型 说明
storageLevel StorageLevel 要为持久性设置的存储级别。 默认值为MEMORY_AND_DISK_DESER。

退货

DataFrame:持久化数据帧。

备注

默认存储级别已更改为 MEMORY_AND_DISK_DESER 匹配 3.0 中的 Scala。

缓存的数据在群集上的所有 Spark 会话之间共享。

示例

df = spark.range(1)
df.persist()
# DataFrame[id: bigint]

df.explain()
# == Physical Plan ==
# InMemoryTableScan ...

from pyspark.storagelevel import StorageLevel
df.persist(StorageLevel.DISK_ONLY)
# DataFrame[id: bigint]