Klonedelta-tabeller

Du kan bruke kommandoen Delta Lake CLONE i Microsoft Fabric for å lage en kopi av en Delta-tabell på et bestemt tidspunkt. En klone fanger kildetabellen slik den eksisterer når du kjører kommandoen, eller i en tidligere versjon som du spesifiserer med tidsreisesyntaks.

Kloning er nyttig når du vil ha en trygg kopi av en tabell for utvikling, validering eller eksperimentering. Kildetabellen endres ikke, og endringer du gjør på klonen påvirker ikke kildetabellen.

Hva klone gjør

En klone oppretter en mål-Delta-tabell fra et kilde-Delta-tabell-snapshot. Du kan:

  • Klon den nyeste versjonen av kildetabellen
  • Klon en spesifikk tabellversjon ved å bruke VERSION AS OF
  • Klon et spesifikt tidspunkt ved å bruke TIMESTAMP AS OF

Fordi klonen er basert på et øyeblikksbilde, sporer den ikke senere endringer i kildetabellen automatisk.

Grunn klone

En grunn klone lager en ny Delta-tabell som refererer til kildetabellens eksisterende datafiler. Delta Lake kopierer tabellmetadataene ved klonetid, men kopierer ikke de underliggende datafilene til ny lagring.

Bruk en grunn klone når du trenger en rask, lagringseffektiv kopi for kortvarig arbeid:

  • Lag en sandkasse for utvikling
  • Testskjema eller transformasjon endres uten risiko
  • Kjør eksperimenter mot produksjonslignende data
  • Lag midlertidige kopier for feilsøking
  • Lag øyeblikksøyeblikksbilder for validering

En grunn klone er lagringseffektiv fordi kilden og klonen deler de samme OneLake-datafilene. Etter at klonen eksisterer, lager oppdateringer du lager til klonen nye filer for klonen og endrer ikke kildetabellen.

Bemerkning

Only SHALLOW CLONE støttes i åpen kildekode Delta Lake og Fabric. DEEP CLONE er ikke tilgjengelig.

Syntaks

Bruk følgende syntaksmønstre for å lage Delta-tabellkloner.

Klon den nåværende versjonen

CREATE TABLE target_table SHALLOW CLONE source_table;

Klone en spesifikk versjon

CREATE TABLE target_table SHALLOW CLONE source_table VERSION AS OF 125;

Klone fra et tidspunkt

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

Bytt ut en eksisterende klone

Bruk CREATE OR REPLACE TABLE for å oppdatere et klonemål med et nyere øyeblikksbilde:

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

Forstå hva som blir klonet.

Komponent Virkemåte
Datafiler Referert fra kildetabellens OneLake-filer (ikke kopiert).
Partisjonsinformasjon Kopiert.
Schema Kopiert.
Tabellegenskaper Kopiert.
Avhengighet av kilde etter klon Ja — klonen avhenger av at kildens datafiler fortsatt er tilgjengelige.
Kilde: Delta-logghistorie Ikke kopiert til måltabellens historikk. Klonen starter sin egen Delta-logg.

Bruk klone for vanlige scenarioer

Bruk Delta-tabellklonen når du trenger:

  • Lag sandkassemiljøer for utvikling
  • Testskjema endres uten risiko for kildetabellen
  • Valider transformasjoner mot et produksjonsøyeblikksbilde
  • Lag en punkt-i-tid-kopi for feilsøking eller revisjon
  • Gi et skrivebeskyttet øyeblikksbilde for et nedstrøms team

OneLake-betraktninger

Grunne kloner deler underliggende OneLake-filer med kildetabellen. Dette designet gjør grunnkloner raske og lagringseffektive, men det betyr også at klonen er avhengig av at kildetabellfiler fortsatt er tilgjengelige.

Vær forsiktig når du kjører VACUUM på kildetabellen. Hvis VACUUM den fjerner kildefiler som en overfladisk klone fortsatt refererer til, kan klonen gå i stykker fordi disse filene ikke lenger er tilgjengelige i OneLake.

For å lage en holdbar uavhengig kopi som overlever VACUUM på kilden, bør du vurdere å kopiere data med full skriving (CREATE TABLE ... AS SELECT) i stedet for klon.