You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在本地设置Delta的logRetentionDuration参数?

在本地PySpark中配置Delta Lake日志保留时长
  • 先确认delta-spark版本:低于2.0.0的版本对部分Delta配置参数支持有限,建议升级到2.0.0及以上版本。
  • 全局配置需在SparkSession初始化阶段设置,启动后修改不会生效,正确的初始化代码示例:
    from pyspark.sql import SparkSession
    
    spark = SparkSession.builder \
        .appName("DeltaLogRetentionSetup") \
        .config("spark.sql.extensions", "io.delta.sql.DeltaSparkSessionExtension") \
        .config("spark.sql.catalog.spark_catalog", "org.apache.spark.sql.delta.catalog.DeltaCatalog") \
        .config("spark.databricks.delta.logRetentionDuration", "interval 52 weeks") \
        # 可选:同时配置已删除文件的保留时长
        .config("spark.databricks.delta.deletedFileRetentionDuration", "interval 52 weeks") \
        .getOrCreate()
    
  • 若全局配置不生效,可针对单个Delta表单独设置属性(优先级高于全局配置):
    from delta.tables import DeltaTable
    
    delta_table = DeltaTable.forPath(spark, "/path/to/your/delta/table")
    delta_table.updateProperties({
        "delta.logRetentionDuration": "interval 52 weeks",
        "delta.deletedFileRetentionDuration": "interval 52 weeks"
    })
    
  • 验证配置是否生效:执行spark.sql("DESCRIBE EXTENDED delta./path/to/your/delta/table").show(truncate=False),查看输出中的delta.logRetentionDuration属性值是否正确。

内容的提问来源于stack exchange,提问作者Col1ns

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 10:25:24