FSCK REPAIR TABLE
Van toepassing op: Databricks SQL Databricks Runtime
Hiermee verwijdert u de bestandsvermeldingen uit het transactielogboek van een Delta-tabel die niet meer in het onderliggende bestandssysteem kan worden gevonden. Dit kan gebeuren wanneer deze bestanden handmatig zijn verwijderd.
Syntaxis
FSCK REPAIR TABLE table_name [DRY RUN]
Parameters
-
Identificeert een bestaande Delta-tabel. De naam mag geen tijdelijke specificatie of optiesspecificatie bevatten.
DROOGLOOP
Geeft informatie weer over de bestandsvermeldingen die uit het transactielogboek van een Delta-tabel
FSCK REPAIR TABLE
zouden worden verwijderd, omdat ze niet meer kunnen worden gevonden in het onderliggende bestandssysteem. Dit kan gebeuren wanneer deze bestanden handmatig zijn verwijderd. Bestandsvermeldingen zijn een gegevensbestandspad of een combinatie van een gegevensbestandspad en verwijderingsvectorbestandspad. Bestandsvermeldingen worden opgenomen in de uitvoer wanneer het gegevensbestand ontbreekt, wanneer het verwijderingsvectorbestand ontbreekt of wanneer beide ontbreken.DRY RUN
Standaard worden alleen de eerste 1000 bestanden geretourneerd. U kunt deze drempelwaarde verhogen door de SparkSession-variabelespark.databricks.delta.fsck.maxNumEntriesInResult
in te stellen op een hogere waarde voordat u de opdracht uitvoert in een notebook.
Retouren
Voor DRY RUN
een rapport van het formulier:
dataFilePath STRING NOT NULL
dataFileMissing BOOLEAN NOT NULL
deletionVectorPath STRING
deletionVectorFileMissing BOOLEAN NOT NULL
Voorbeelden
— 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