persistir
Define o nível de armazenamento para persistir o conteúdo do DataFrame entre operações após a primeira vez que ele é computado. Isso só pode ser usado para atribuir um novo nível de armazenamento se o DataFrame ainda não tiver um nível de armazenamento definido. Se nenhum nível de armazenamento for especificado, o padrão será (MEMORY_AND_DISK_DESER).
Sintaxe
persist(storageLevel: StorageLevel = StorageLevel.MEMORY_AND_DISK_DESER)
Parâmetros
Parâmetro | Tipo | Descrição |
|---|---|---|
| Nível de armazenamento | Nível de armazenamento a ser definido para persistência. O valor padrão é MEMORY_AND_DISK_DESER. |
Devoluções
DataFrame: DataFrame persistente.
Notas
O nível de armazenamento default foi alterado para MEMORY_AND_DISK_DESER para corresponder Scala na versão 3.0.
No compute clássico, os dados em cache são compartilhados entre todas as sessões do Spark no cluster.
No compute serverless, persist() se comporta da mesma forma que cache() e ignora storageLevel. Ela execução a query imediatamente e armazena o resultado pelo restante da sua sessão. Consulte DataFrames de cache no compute serverless.
Exemplos
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]