Clonare la tabella in Microsoft Fabric
Si applica a✅: warehouse in Microsoft Fabric
Microsoft Fabric offre la possibilità di creare cloni zero-copy quasi istantanei con costi di archiviazione minimi.
- I cloni di tabelle facilitano i processi di sviluppo e test creando copie di tabelle in ambienti inferiori.
- I cloni di tabelle forniscono report coerenti e duplicazione zero-copy dei dati per carichi di lavoro analitici e modellazione e test di Machine Learning.
- I cloni di tabelle offrono la funzionalità di ripristino dei dati in caso di rilascio non riuscito o danneggiamento dei dati mantenendo lo stato precedente dei dati.
- I cloni di tabelle consentono di creare report cronologici che riflettono lo stato dei dati esistenti a partire da uno specifico punto temporale passato.
- I cloni di tabelle in un momento specifico possono mantenere lo stato dei dati in punti temporali specifici per il business.
È possibile usare i comandi T-SQL CREATE TABLE AS CLONE OF per creare un clone di tabella. Per un'esercitazione, vedere Esercitazione: clonare una tabella usando T-SQL o Esercitazione: clonare tabelle nel portale di Fabric.
È anche possibile eseguire query sui dati in un magazzino per come appariva in passato, usando la sintassi T-SQL OPTION
. Per altre informazioni, vedere Eseguire query sui dati esistenti in passato.
Un clone zero-copy crea una replica della tabella copiando i metadati, facendo comunque riferimento agli stessi file di dati in OneLake. I metadati vengono copiati mentre i dati sottostanti della tabella archiviati come file parquet non vengono copiati. La creazione di un clone è simile alla creazione di una tabella all'interno di un magazzino in Microsoft Fabric.
All'interno di un magazzino è possibile creare un clone di una tabella quasi istantaneamente usando T-SQL semplice. È possibile creare un clone di una tabella all'interno o tra schemi in un magazzino.
È possibile creare un clone di una tabella in base a una delle due opzioni seguenti:
Punto temporale corrente: il clone si basa sullo stato corrente della tabella.
Punto temporale precedente: il clone si basa su un punto temporale fino a trenta giorni nel passato. Il clone della tabella contiene i dati visualizzati nel punto temporale passato desiderato. Nel settore, questa funzionalità è nota come "time travel". La nuova tabella viene creata con un timestamp basato sull'ora UTC. Per esempi, vedere Clonare la tabella a partire da un punto temporale passato o CREATE TABLE AS CLONE OF.
È anche possibile clonare un gruppo di tabelle contemporaneamente. Ciò può essere utile per clonare un gruppo di tabelle correlate nello stesso punto temporale passato. Per un esempio, vedere Clonare più tabelle contemporaneamente.
È anche possibile eseguire query sui dati dalle tabelle esistenti in passato, usando la funzionalità time travel del magazzino.
Il magazzino preserva e mantiene automaticamente la cronologia dei dati per trenta giorni di calendario, consentendo l'esecuzione di cloni in un punto temporale. Tutti gli inserimenti, gli aggiornamenti e le eliminazioni effettuati nel data warehouse vengono conservati per trenta giorni di calendario.
Non esiste alcun limite al numero di cloni creati sia all'interno che tra gli schemi.
Al momento della creazione, un clone di tabella è una copia indipendente e separata dei dati dall'origine.
- Le modifiche apportate tramite DML o DDL nell'origine della tabella clone non vengono riflesse nella tabella clone.
- Analogamente, tutte le modifiche apportate tramite DDL o DML nel clone della tabella non vengono riflesse sull'origine della tabella clone.
Per creare un clone di tabella sono necessarie le autorizzazioni seguenti:
- Gli utenti con ruoli dell'area di lavoro Amministratore, Membro o Collaboratore possono clonare le tabelle all'interno dell'area di lavoro. Il ruolo dell'area di lavoro Visualizzatore non può creare un clone.
- È necessaria l'autorizzazione SELECT per tutte le righe e le colonne dell'origine del clone di tabella.
- L'utente deve disporre dell'autorizzazione CREATE TABLE nello schema in cui verrà creato il clone della tabella.
A causa della sua esistenza autonoma, sia la sorgente originale che i cloni possono essere eliminati senza vincoli. Dopo aver creato un clone,questo rimane in esistenza fino a quando non viene eliminato dall'utente.
- Gli utenti con ruoli dell'area di lavoro Amministratore, Membro o Collaboratore possono eliminare il clone di tabella all'interno dell'area di lavoro.
- Gli utenti che dispongono delle autorizzazioni ALTER SCHEMA per lo schema in cui risiede il clone di tabella possono eliminare il clone di tabella.
Gli oggetti descritti di seguito sono inclusi nel clone della tabella:
La tabella clone eredita la sicurezza SQL a livello di oggetto dalla tabella di origine del clone. Poiché i ruoli dell'area di lavoro forniscono l'accesso in lettura per impostazione predefinita, è possibile impostare l'autorizzazione DENY per la clonazione della tabella, se necessario.
La tabella clone eredita la sicurezza a livello di riga e la maschera dati dinamica dall'origine della tabella clone.
La tabella clone eredita tutti gli attributi presenti nella tabella di origine, indipendentemente dal fatto che il clone sia stato creato nello stesso schema o in schemi diversi in un magazzino.
La tabella clone eredita i vincoli di chiave primaria e univoca definiti nella tabella di origine.
Viene creato un log differenziale di sola lettura per ogni clone di tabella creato all'interno del magazzino. I file di dati archiviati come file parquet differenziali sono di sola lettura. Ciò garantisce che i dati rimangano sempre protetti dal danneggiamento.
Prendere in considerazione la possibilità di clonare le tabelle quasi istantaneamente e con costi di archiviazione minimi negli scenari vantaggiosi seguenti:
I cloni di tabelle consentono agli sviluppatori e ai tester di sperimentare, convalidare e perfezionare le tabelle senza influire sulle tabelle nell'ambiente di produzione. Il clone fornisce uno spazio sicuro e isolato per condurre attività di sviluppo e test di nuove funzionalità, garantendo l'integrità e la stabilità dell'ambiente di produzione. Usare un clone di tabella per creare rapidamente una copia dell'ambiente di produzione per la risoluzione dei problemi, la sperimentazione, lo sviluppo e i test.
Per mantenere il passo con il panorama dei dati in continua evoluzione, è essenziale eseguire frequentemente processi ETL. I cloni di tabelle supportano questo obiettivo garantendo l'integrità dei dati offrendo al tempo stesso la flessibilità necessaria per generare report basati sulle tabelle clonate, mentre l'elaborazione in background è in corso. Inoltre, i cloni di tabelle consentono la riproducibilità dei risultati precedenti per i modelli di Machine Learning. Facilitano anche informazioni preziose abilitando l'esplorazione e l'analisi dei dati storici.
In caso di perdita o danneggiamento accidentale dei dati, è possibile usare cloni di tabella esistenti per ripristinare lo stato precedente della tabella.
Ai fini del controllo o della conformità, è possibile usare facilmente clone zero-copy per creare copie di dati esistenti in un determinato punto temporale passato. Alcuni dati potrebbero essere archiviati per la conservazione a lungo termine o la conformità legale. La clonazione della tabella in vari punti storici garantisce che i dati vengano mantenuti nel formato originale.
- I cloni di tabelle tra i magazzini in un'area di lavoro non sono attualmente supportati.
- I cloni di tabelle tra le aree di lavoro non sono attualmente supportati.
- La tabella clone non è supportata nell'endpoint di analisi SQL del lakehouse.
- Il clone di un magazzino o di uno schema non è attualmente supportato.
- Non è possibile creare cloni di tabella inviati prima del periodo di conservazione di trenta giorni.
- Le modifiche apportate allo schema di tabella impediscono la creazione di un clone prima della modifica dello schema della tabella.