Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
È possibile usare il comando Delta Lake CLONE in Microsoft Fabric per creare una copia di una tabella Delta in un momento specifico. Un clone acquisisce la tabella di origine come esiste quando si esegue il comando o in una versione precedente specificata con la sintassi di spostamento temporale.
La clonazione è utile quando si vuole una copia sicura di una tabella per lo sviluppo, la convalida o la sperimentazione. La tabella di origine non viene modificata e le modifiche apportate al clone non influiscono sulla tabella di origine.
Che cosa fa il clone
Una clonazione crea una tabella Delta di destinazione a partire da uno snapshot della tabella Delta di origine. È possibile:
- Clonare la versione più recente della tabella di origine
- Clonare una versione di tabella specifica usando
VERSION AS OF - Clonare un punto specifico nel tempo usando
TIMESTAMP AS OF
Poiché il clone è basato su uno snapshot, non tiene traccia automaticamente delle modifiche successive nella tabella di origine.
Clone superficiale
Un clone superficiale crea una nuova tabella Delta che fa riferimento ai file di dati esistenti della tabella di origine. Delta Lake copia i metadati della tabella in fase di clonazione, ma non copia i file di dati sottostanti in una nuova risorsa di archiviazione.
Usa un clone superficiale quando ti serve una copia rapida che richiede poco spazio di archiviazione per attività di breve durata:
- Creare una sandbox per lo sviluppo
- Testare le modifiche dello schema o della trasformazione senza rischi
- Eseguire esperimenti su dati simili alla produzione
- Creare copie temporanee per la risoluzione dei problemi
- Crea snapshot puntuali per la validazione
Un clone superficiale è efficiente per l'archiviazione perché l'origine e il clone condividono gli stessi file di dati OneLake. Dopo l'esistenza del clone, gli aggiornamenti apportati al clone creano nuovi file per il clone e non modificano la tabella di origine.
Note
Solo SHALLOW CLONE è supportato in Delta Lake e Fabric open source.
DEEP CLONE non è disponibile.
Sintassi
Usare i modelli di sintassi seguenti per creare cloni di tabella Delta.
Clonare la versione corrente
Clonare una versione specifica
Clonare da un punto nel tempo
CREATE TABLE target_table SHALLOW CLONE source_table TIMESTAMP AS OF '2026-05-18T08:30:00Z';
Sostituire un clone esistente
Usare CREATE OR REPLACE TABLE per aggiornare una destinazione clone con uno snapshot più recente:
CREATE OR REPLACE TABLE sandbox.sales_orders_test
SHALLOW CLONE operations.sales_orders;
Capire cosa viene clonato
| Componente | Behavior |
|---|---|
| File di dati | Con riferimento ai file OneLake della tabella di origine (non copiati). |
| Informazioni sulla partizione | Copiato. |
| Schema | Copiato. |
| Proprietà delle tabelle | Copiato. |
| Dipendenza dall'origine dopo la clonazione | Sì: il clone dipende dai file di dati dell'origine rimanenti disponibili. |
| Cronologia del log delta di origine | Non viene copiato nella cronologia della tabella di destinazione. Il clone avvia il proprio log Delta. |
Usare il clone per scenari comuni
Usare il clone di tabella Delta quando è necessario:
- Creare ambienti sandbox per lo sviluppo
- Testare le modifiche dello schema senza rischi per la tabella di origine
- Convalidare le trasformazioni rispetto a uno snapshot di produzione
- Creare una copia point-in-time per il debug o la verifica
- Fornire uno snapshot di sola lettura per un team downstream
Considerazioni su OneLake
I cloni superficiali condividono i file OneLake sottostanti con la tabella di origine. Questo design rende lo shallow clone rapido ed efficiente in termini di spazio di archiviazione, ma significa anche che il clone dipende dal fatto che i file della tabella di origine restino disponibili.
Prestare attenzione quando si esegue VACUUM nella tabella di origine. Se VACUUM rimuove i file di origine a cui fa ancora riferimento un clone superficiale, il clone può interrompersi perché tali file non sono più disponibili in OneLake.
Per creare una copia indipendente durevole che sopravvive VACUUM all'origine, è consigliabile copiare i dati con una scrittura completa (CREATE TABLE ... AS SELECT) anziché clonare.