FSCK 修復數據表
適用於: Databricks SQL Databricks Runtime
從在基礎文件系統中找不到之 Delta 資料表的事務歷史記錄中移除檔案專案。 當手動刪除這些檔案時,就會發生這種情況。
語法
FSCK REPAIR TABLE table_name [DRY RUN]
參數
-
識別現有的 Delta 數據表。 名稱不得包含 時態規格或選項規格。
DRY RUN
顯示將從 Delta 數據表
FSCK REPAIR TABLE
事務歷史記錄中移除之檔案專案的相關信息,因為基礎文件系統中找不到這些專案。 當手動刪除這些檔案時,就會發生這種情況。 檔案項目是資料檔案路徑或數據檔案路徑和刪除向量檔案路徑的組合。 當數據檔遺失、刪除向量檔案遺失或兩者遺失時,檔案專案都會包含在輸出中。根據預設,
DRY RUN
只會傳回前 1000 個檔案。 您可以在筆記本中執行命令之前,將SparkSession變數spark.databricks.delta.fsck.maxNumEntriesInResult
設定為較高的值來增加此臨界值。
傳回
針對 DRY RUN
表單的 A 報表:
dataFilePath STRING NOT NULL
dataFileMissing BOOLEAN NOT NULL
deletionVectorPath STRING
deletionVectorFileMissing BOOLEAN NOT NULL
範例
— Assume file1.parquet is missing and no DV is expected.
> FSCK REPAIR TABLE t DRY RUN;
dataFilePath dataFileMissing deletionVectorPath deletionVectorFileMissing
------------- --------------- ------------------ -------------------------
file1.parquet true null false
— Assume dv1.bin is missing.
> FSCK REPAIR TABLE t DRY RUN;
dataFilePath dataFileMissing deletionVectorPath deletionVectorFileMissing
------------- --------------- ------------------ -------------------------
file1.parquet false dv1.bin true