pyspark.pandas.DataFrame.spark.persist

火花。 堅持 ( storage_level:pyspark.storagelevel.StorageLevel=StorageLevel(真的,真的,假的,假的,1) )→CachedDataFrame

產量和當前具有特定StorageLevel DataFrame緩存。如果StogeLevel不是給定的,MEMORY_AND_DISK在默認情況下使用像PySpark水平。

的pandas-on-Spark DataFrame作為一個受保護的資源,其相應的數據緩存後就未執行的上下文。

另請參閱

DataFrame.spark.cache

例子

> > >進口pyspark> > >df=psDataFrame(((2,3),(比上年,6),(6,比上年),(2,1。)),=(“狗”,“貓”])> > >df狗貓0 0.2 0.31)0.0 - 0.62 0.6 - 0.03 0.2 - 0.1

設置StorageLevelMEMORY_ONLY

> > >df火花堅持(pysparkStorageLevelMEMORY_ONLY)作為cached_df:打印(cached_df火花storage_level)打印(cached_df())內存序列化1 x複製狗4貓4dtype: int64

設置StorageLevelDISK_ONLY

> > >df火花堅持(pysparkStorageLevelDISK_ONLY)作為cached_df:打印(cached_df火花storage_level)打印(cached_df())磁盤序列化1 x複製狗4貓4dtype: int64

如果StorageLevel不是給定的,它使用MEMORY_AND_DISK默認情況下。

> > >df火花堅持()作為cached_df:打印(cached_df火花storage_level)打印(cached_df())磁盤內存序列化1 x複製狗4貓4dtype: int64
> > >df=df火花堅持()> > >dfto_pandas()的意思是(=1)0 0.251 0.302 0.303 0.15dtype: float64

uncache dataframe,使用unpersist函數

> > >df火花unpersist()