Dela via


FSCK REPAIR TABLE

Gäller för:markerad ja Databricks SQL markerad ja Databricks Runtime

Tar bort filposterna från transaktionsloggen för en Delta-table som inte längre finns i det underliggande filsystemet. Detta kan inträffa när dessa filer har tagits bort manuellt.

Syntax

FSCK REPAIR TABLE table_name [DRY RUN]

Parameters

  • table_name

    Identifierar en befintlig Delta table. Namnet får inte innehålla en temporal specifikation eller alternativspecifikation.

  • TORR KÖRNING

    Visar information om de filposter som skulle tas bort från transaktionsloggen för en Delta-table av FSCK REPAIR TABLE, eftersom de inte längre kan hittas i det underliggande filsystemet. Detta kan inträffa när dessa filer har tagits bort manuellt. Filposter är antingen en datafilsökväg eller en kombination av en datafilsökväg och borttagningsvektorfilsökväg. Filposter ingår i utdata när datafilen saknas, när borttagningsvektorfilen saknas eller när båda saknas.

    Som standard DRY RUN returnerar endast de första 1 000 filerna. Du kan öka det här tröskelvärdet genom att ange variabeln spark.databricks.delta.fsck.maxNumEntriesInResult SparkSession till ett högre värde innan du kör kommandot i en notebook-fil.

Returer

För DRY RUN En rapport i formuläret:

  • dataFilePath STRING NOT NULL
  • dataFileMissing BOOLEAN NOT NULL
  • deletionVectorPath STRING
  • deletionVectorFileMissing BOOLEAN NOT NULL

Exempel

— 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