豐富三角洲湖與定製元數據表

除了表注釋,您可以使用字段三角洲湖事務日誌將自定義標記添加到表或個人提交的消息。

設置用戶定義元數據提交

您可以指定用戶定義的字符串作為元數據提交由這些操作,或者使用DataFrameWriter選項userMetadata或SparkSession配置spark.databricks.delta.commitInfo.userMetadata。如果他們被指定,那麼選擇偏好。這個定義的元數據是可讀的描述曆史操作。

火花δcommitInfouserMetadata=覆蓋- - - - - -- - - - - -修複- - - - - -不正確的- - - - - -數據插入覆蓋默認的people10m選擇*更多人
df格式(“δ”)\模式(“覆蓋”)\選項(“userMetadata”,“overwritten-for-fixing-incorrect-data”)\保存(“/ tmp /δ/ people10m”)
df格式(“δ”)模式(“覆蓋”)選項(“userMetadata”,“overwritten-for-fixing-incorrect-data”)保存(“/ tmp /δ/ people10m”)

表屬性中存儲自定義標記

你可以存儲自己的元數據表屬性使用TBLPROPERTIES創建改變。然後,您可以顯示元數據。例如:

改變默認的people10mTBLPROPERTIES(“部門”=“會計”,“delta.appendOnly”=“真正的”);——顯示表的屬性。顯示TBLPROPERTIES默認的people10m;——顯示“部門”表屬性。顯示TBLPROPERTIES默認的people10m(“部門”);

TBLPROPERTIES被存儲為δ表元數據的一部分。你不能定義新的TBLPROPERTIES在一個創建聲明如果δ表已經存在於一個給定的位置。

此外,定製的行為和性能,支持某些湖δ表屬性:

  • 在三角洲表塊刪除和更新:delta.appendOnly = true

  • 配置時間旅行保留屬性:delta.logRetentionDuration = < interval-string >delta.deletedFileRetentionDuration = < interval-string >。有關詳細信息,請參見配置數據保留時間旅行

  • 配置收集統計數據的列數:delta.dataSkippingNumIndexedCols = n。這個屬性表示統計數據收集的作家隻有第一n表中的列。也跳過代碼忽略了統計數據以外的任何列這一列索引。這個屬性將隻影響新寫入的數據。

請注意

  • 修改一個增量表屬性是一個寫操作,將與其他衝突並發寫操作,導致他們失敗。磚建議您修改一個表的屬性隻有當沒有並發寫操作放在桌子上。

你也可以設置三角洲。前綴的屬性在第一次提交到三角洲表使用火花配置。例如,初始化一個增量表的屬性delta.appendOnly = true,設置火花配置spark.databricks.delta.properties.defaults.appendOnly真正的。例如:

火花sql(“設置spark.databricks.delta.properties.defaults.appendOnly = true”)
火花相依(“spark.databricks.delta.properties.defaults.appendOnly”,“真正的”)
火花相依(“spark.databricks.delta.properties.defaults.appendOnly”,“真正的”)

看到也三角洲表屬性引用

探索表元數據

三角洲湖支持顯示(分區|列)描述。看到顯示分區,顯示列,描述表