Condividi tramite


CREATE TABLE CLONE

Si applica a:segno di spunta sì Databricks SQL segno di spunta sì Databricks Runtime

Clona un Delta di origine table in una destinazione a una versione specifica. Un clone può essere profondo o superficiale: i cloni profondi copiano i dati dall'origine e i cloni superficiali non lo fanno. È anche possibile clonare i dati sorgente Parquet e Iceberg tables. Vedere clonare in modo incrementale i tables Parquet e Iceberg in Delta Lake.

Nelle versioni di Databricks SQL e Databricks Runtime 13.3 LTS e superiori, è possibile utilizzare la clonazione superficiale gestita con Unity Catalogtables. In Databricks Runtime 12.2 LTS e versioni successive non è disponibile alcun supporto per cloni superficiali in Unity Catalog. Vedere clone superficiale per Unity Catalogtables.

Importante

Esistono differenze importanti tra cloni superficiali e profondi che possono determinare il modo migliore per usarli. Vedere Clonare un table in Azure Databricks.

Sintassi

CREATE TABLE [IF NOT EXISTS] table_name
   [SHALLOW | DEEP] CLONE source_table_name [TBLPROPERTIES clause] [LOCATION path]
[CREATE OR] REPLACE TABLE table_name
   [SHALLOW | DEEP] CLONE source_table_name [TBLPROPERTIES clause] [LOCATION path]

Parameters

  • SE NON ESISTE

    Se specificato, l'istruzione viene ignorata se table_name esiste già.

  • [CREATE OR] SOSTITUIRE

    Se CREATE OR viene specificato, il table viene sostituito se esiste e creato se non esiste. Senza CREATE OR l'oggetto table_name deve esistere.

  • table_name

    Nome del Delta Lake table da creare. Il nome non deve includere una specifica temporale o una specifica delle opzioni. Se il nome non è qualificato, il table viene creato nel schemacorrente. table_name non deve esistere già, a meno che REPLACE non sia stato specificato o IF NOT EXISTS .

  • CLONE SUPERFICIALE o CLONE PROFONDO

    Se si specifica SHALLOW CLONE, Azure Databricks creerà una copia della definizione del tabledi origine, ma farà riferimento ai file del tabledi origine. Quando si specifica DEEP CLONE (impostazione predefinita) Azure Databricks creerà una copia completa e indipendente dell'origine table.

  • source_table_name

    Il nome del Delta Lake table da clonare. Il nome può includere una specifica temporale o una specifica di opzioni.

  • TBLPROPERTIES

    Facoltativamente, imposta una o più proprietà definite dall'utente.

  • PERCORSO

    Facoltativamente, crea un tableesterno con la posizione specificata come percorso where i dati vengono archiviati. Se table_name è un percorso anziché un tableidentifier, l'operazione avrà esito negativo. path deve essere un valore letterale STRING.

Esempi

È possibile usare CREATE TABLE CLONE per operazioni complesse come la migrazione dei dati, l'archiviazione dei dati, la riproduzione del flusso di Machine Learning, esperimenti a breve termine e la condivisione dei dati. Vedere Clonare un table in Azure Databricks.