Klondelta-tabeller

Du kan bruge Delta Lake CLONE-kommandoen i Microsoft Fabric til at lave en kopi af en Delta-tabel på et bestemt tidspunkt. En klon fanger kildetabellen, som den eksisterer, når du kører kommandoen, eller i en tidligere version, som du specificerer med tidsrejsesyntaks.

Kloning er nyttigt, når du ønsker en sikker kopi af en tabel til udvikling, validering eller eksperimentering. Kildetabellen ændres ikke, og ændringer du laver i klonen, påvirker ikke kildetabellen.

Hvad klon gør

En klon opretter en mål-Delta-tabel ud fra et kilde-Delta-tabel-snapshot. Du kan:

  • Klon den nyeste version af kildetabellen
  • Klon en specifik tabelversion ved at bruge VERSION AS OF
  • Klon et bestemt tidspunkt ved at bruge TIMESTAMP AS OF

Fordi klonen er baseret på et snapshot, sporer den ikke automatisk senere ændringer i kildetabellen.

Lavvandet klon

En lavvandet klon opretter en ny Delta-tabel, der refererer til kildetabellens eksisterende datafiler. Delta Lake kopierer tabellens metadata ved klon, men kopierer ikke de underliggende datafiler til ny lagring.

Brug en overfladisk klon, når du har brug for en hurtig, lagringseffektiv kopi til kortvarigt arbejde:

  • Skab en sandkasse til udvikling
  • Testskema eller transformation ændres uden risiko
  • Kør eksperimenter mod produktionslignende data
  • Lav midlertidige kopier til fejlfinding
  • Lav punkt-i-tid snapshots til validering

En overfladisk klon er lagringseffektiv, fordi kilden og klonen deler de samme OneLake-datafiler. Når klonen eksisterer, opretter opdateringer, du laver til klonen, nye filer for klonen og ændrer ikke kildetabellen.

Bemærkning

Only SHALLOW CLONE understøttes i open source Delta Lake og Fabric. DEEP CLONE er ikke tilgængelig.

Syntaks

Brug følgende syntaksmønstre til at skabe Delta-tabelkloner.

Klon den nuværende version

CREATE TABLE target_table SHALLOW CLONE source_table;

Klon en specifik version

CREATE TABLE target_table SHALLOW CLONE source_table VERSION AS OF 125;

Klon fra et tidspunkt

CREATE TABLE target_table SHALLOW CLONE source_table TIMESTAMP AS OF '2026-05-18T08:30:00Z';

Udskift en eksisterende klon

Brug CREATE OR REPLACE TABLE til at opdatere et klonmål med et nyere snapshot:

CREATE OR REPLACE TABLE sandbox.sales_orders_test
SHALLOW CLONE operations.sales_orders;

Forstå, hvad der bliver klonet

Komponent Adfærd
Datafiler Refereret fra kildetabellens OneLake-filer (ikke kopieret).
Partitionsinformation Kopieret.
Schema Kopieret.
Tabelegenskaber Kopieret.
Afhængighed af kilde efter klon Ja — klonen afhænger af, at kildens datafiler stadig er tilgængelige.
Kilde Delta-loghistorik Ikke kopieret til måltabelens historik. Klonen starter sin egen Delta-log.

Brug klon til almindelige scenarier

Brug Delta table clone, når du har brug for:

  • Skab sandkassemiljøer til udvikling
  • Testskema ændres uden risiko for kildetabellen
  • Valider transformationer mod et produktionsøjebliksbillede
  • Opret en punkt-i-tid-kopi til fejlfinding eller revision
  • Giv et skrivebeskyttet øjebliksbillede til et downstream-team

OneLake-overvejelser

Shallow kloner deler underliggende OneLake-filer med kildetabellen. Dette design gør lavklonen hurtig og lagringseffektiv, men det betyder også, at klonen er afhængig af, at kildetabelfiler forbliver tilgængelige.

Vær forsigtig, når du kører VACUUM på kildetabellen. Hvis den VACUUM fjerner kildefiler, som en overfladisk klon stadig refererer til, kan klonen gå i stykker, fordi de filer ikke længere er tilgængelige i OneLake.

For at skabe en holdbar uafhængig kopi, der overlever VACUUM på kildekoden, bør du overveje at kopiere data med en fuld write (CREATE TABLE ... AS SELECT) i stedet for at klone.