Delen via


RESTORE

Van toepassing op:vinkje als ja aan Databricks SQL vinkje als ja aan Databricks Runtime

Hiermee herstelt u een Delta-table naar een eerdere status. Herstellen naar een eerder versienummer of een tijdstempel wordt ondersteund.

Deze pagina bevat details voor het gebruik van de juiste syntaxis met de RESTORE opdracht. Zie Werken met Delta Lake table geschiedenis voor meer informatie over het navigeren in Delta Lake table versies met deze opdracht.

Syntaxis

RESTORE [ TABLE ] table_name [ TO ] time_travel_version

time_travel_version
 { TIMESTAMP AS OF timestamp_expression |
   VERSION AS OF version }

Parameters

  • table_name

    Identificeert de Delta-table die moet worden hersteld. De naam van de table mag geen tijdelijke specificatie ofoptiesspecificatie gebruiken.

  • timestamp_expression kan een van de volgende zijn:

    • '2018-10-18T22:15:12.013Z', dat wil gezegd, een tekenreeks die kan worden gecast naar een tijdstempel
    • cast('2018-10-18 13:36:32 CEST' as timestamp)
    • '2018-10-18', dat wil gezegd, een datumtekenreeks
    • current_timestamp() - interval 12 hours
    • date_sub(current_date(), 1)
    • Elke andere expressie die wel of niet kan worden omgezet in een tijdstempel
  • version is een lange waarde die kan worden verkregen uit de uitvoer van DESCRIBE HISTORY table_spec.

timestamp_expression Geen van beide version subquery's.

Voorbeelden

-- Restore the employee table to a specific timestamp
> RESTORE TABLE employee TO TIMESTAMP AS OF '2022-08-02 00:00:00';
 table_size_after_restore num_of_files_after_restore num_removed_files num_restored_files removed_files_size restored_files_size
                      100                          3                 1                  0                574                   0

-- Restore the employee table to a specific version number retrieved from DESCRIBE HISTORY employee
> RESTORE TABLE employee TO VERSION AS OF 1;
 table_size_after_restore num_of_files_after_restore num_removed_files num_restored_files removed_files_size restored_files_size
                      100                          3                 1                  0                574                   0

-- Restore the employee table to the state it was in an hour ago
> RESTORE TABLE employee TO TIMESTAMP AS OF current_timestamp() - INTERVAL '1' HOUR;
 table_size_after_restore num_of_files_after_restore num_removed_files num_restored_files removed_files_size restored_files_size
                      100                          3                 1                  0                574                   0