CLONE (Delta Lake i Azure Databricks)
Anteckning
Tillgängligt i Databricks Runtime 7,2 och senare.
Klonar en käll delta tabell till ett mål mål i en angiven version. En klon kan vara antingen djup eller lite: djup kloner kopiera data från käll-och ytliga kloner.
Viktigt
Det finns viktiga skillnader mellan ytliga och djup kloner som kan fastställa hur du bäst använder dem. Se klona en delta tabell.
Syntax
CREATE TABLE [IF NOT EXISTS] target_table_identifier
[SHALLOW | DEEP] CLONE source_table_identifier [<time_travel_version>]
[LOCATION 'path']
[TBLPROPERTIES (
'prop1' = 'value1',
...
)]
[CREATE OR] REPLACE TABLE target_table_identifier
[SHALLOW | DEEP] CLONE source_table_identifier [<time_travel_version>]
[LOCATION 'path']
[TBLPROPERTIES (
'prop1' = 'value1',
...
)]
- table_identifier
[database_name.] table_name
: Ett tabell namn, eventuellt kvalificerat med ett databas namn.delta.`<path-to-table>`
: Platsen för en befintlig delta tabell.
var
<time_travel_version> =
TIMESTAMP AS OF timestamp_expression |
VERSION AS OF version
- Ange
CREATE IF NOT EXISTS
för att undvika att skapa en tabelltarget_table
om det redan finns en tabell. Om det redan finns en tabell på målet är klonings åtgärden ingen-op. - Ange
CREATE OR REPLACE
om du vill ersätta målet för en kloning-åtgärd om det finns en befintlig tabelltarget_table
. Detta uppdaterar metaarkiv med den nya tabellen om tabell namnet används. - Om du inte anger
SHALLOW
ellerDEEP
, skapas en djup kloning som standard. LOCATION
skapar en extern tabell med den angivna platsen som den sökväg där data lagras. Om målet är en sökväg i stället för ett tabell namn går det inte att utföra åtgärden.
Exempel
Du kan använda CLONE
för komplexa åtgärder, t. ex. datamigrering, data arkivering, återställning av maskin inlärning, kortsiktiga experiment, data delning och så vidare. Se klona användnings fall för några exempel.