本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。
本文介绍一些Delta中比较重要的参数。
Delta的设置参数分为三类:
Spark SQL设置,即设置SQL运行时的参数。
运行时参数,即可以在Session中动态设置的参数,以
spark.databricks.delta.
前缀开头。非运行时参数,只能够在Spark的配置文件中配置为全局参数,或者建表时在
TBLPROPERTIES
中指定为表参数。表参数的优先级高于全局参数。当设置为全局参数时,配置前缀为spark.databricks.delta.properties.defaults.
,当设置为TBLPROPERTIES
时,前缀为delta.
。
参数 | 描述 |
| 默认值为10。 此参数为delta log元数据的partition数量。当delta log特别大时,需要增大此值,反之减小此值的设置。该值的大小对于delta table的解析性能影响较大。 |
| 默认值为true。 清理墓碑文件时是否进行安全期检查。 警告 如果您想删除近期合并过的小文件,可以设置此参数为false,来关闭此安全检查,但不建议您关闭此检查,这样可能会删除近期的数据而造成数据读写失败。 |
| 默认值为false。 Delta有校验写入数据是否符合表定义Schema的功能,用于保证写入数据的正确性。当您数据的Schema发生变更后,需要在写入数据时在option中显示指定 |
| 默认值为interval 1 week。 Delta墓碑文件的安全期。清空未超过安全期内的墓碑文件将会抛出异常(如果 说明 此值应当大于等于1个小时。 |
| 默认值为interval 30 days。 Delta log文件过期时间。Delta log过期被定义为:
|
| 默认值为1000。 此参数为Delta扫描文件时所用的并行度。如果文件数量较少,则减小此值。目前仅使用在Vacuum中。如果设置不当,影响Vacuum扫描文件的效率。 说明 此参数为Spark SQL参数。 |