Spark 3.0中StorageLevel.MEMORY_AND_DISK_SER是否已废弃?求替代方案
PySpark 3.0(AWS Glue 4.0)中StorageLevel.MEMORY_AND_DISK_SER问题解决
- 该属性状态:
StorageLevel.MEMORY_AND_DISK_SER在PySpark 3.0及后续版本中已被废弃移除,这是PySpark 3.x对存储级别常量命名规范调整的一部分。 - 最佳替代方案:使用
StorageLevel.MEMORY_AND_DISK_SER_2替代。这个常量对应新版本默认的Kryo序列化方式,实现将数据优先持久化到内存、内存不足时写入磁盘的功能,性能比旧版本依赖的Java序列化更优,完全覆盖原MEMORY_AND_DISK_SER的业务场景。
如果有特殊需求必须兼容旧版Java序列化的存储级别,也可以显式构造StorageLevel实例:
from pyspark.storagelevel import StorageLevel df.persist(StorageLevel(True, True, False, False, 1))
但除非有明确的兼容要求,优先推荐使用MEMORY_AND_DISK_SER_2。
内容的提问来源于stack exchange,提问作者bigdataadd
相关产品推荐
相关产品推荐

