pyspark Spark 3.0中是否弃用了内存级别'MEMORY_AND_DISK_SER'?

uinbv5nw  于 12个月前  发布在  Spark
关注(0)|答案(1)|浏览(114)

我正在将我的pyspark项目从2.4版本更改为3.0,当我运行代码时,我得到下面的错误。更详细地说,我正在从AWS Glue 2.0过渡到4.0

df.persist(StorageLevel.MEMORY_AND_DISK_SER)

我得到了错误

Type object 'StorageLevel' has no attribute 'MEMORY_AND_DISK_SER'

我试图找到一些类似的错误/文档,但我找不到。有人知道它是否被废弃了吗?哪一个会是最好的替代品?
谢谢

pod7payv

pod7payv1#

是的。文档建议,由于记录将始终在Python中序列化,因此它已被删除。使用MEMORY_AND_DISK
比较示例2.1.2文档(Sers可用):
https://spark.apache.org/docs/2.1.2/api/python/pyspark.html#pyspark.StorageLevel
至3.0
https://spark.apache.org/docs/3.0.0/api/python/pyspark.html?highlight=storagelevel#pyspark.StorageLevel
源代码声明:
.. note::以下四个存储级别常量在Python 2.0中被弃用,因为
将始终在Python中序列化。“最低级别.MEMORY_ONLY_SER =最低级别.MEMORY_ONLY "..注意::在2.0中已弃用,请改用StorageLevel.MEMORY_ONLY。“删除Level.MEMORY_ONLY_SER_2 =删除Level.MEMORY_ONLY_2”..注意::在2.0中已弃用,请改用StorageLevel.MEMORY_ONLY_2。“级别.MEMORY_AND_DISK_SER =级别.MEMORY_AND_DISK“..注意::在2.0中已弃用,请改用StorageLevel.MEMORY_AND_DISK。”请选择Level.MEMORY_AND_DISK_SER_2 =“请选择Level.MEMORY_AND_DISK_2”..注意::在2.0中已弃用,请改用StorageLevel.MEMORY_AND_DISK_2。”
参见3.0的源代码中的类E.0.Level:https://spark.apache.org/docs/3.0.0/api/python/_modules/pyspark/storagelevel.html#StorageLevel

相关问题