Freigeben über


CREATE TABLE CLONE

Gilt für: durch Häkchen mit „Ja“ markiert Databricks SQL durch Häkchen mit „Ja“ markiert Databricks Runtime

Hiermit wird eine Delta-Quelltabelle mit einer bestimmten Version in ein Ziel geklont. Ein Klon kann entweder tief oder flach sein: Tiefe Klone kopieren die Daten aus der Quelle, flache Klone tun dies nicht. Sie können auch die Quelltabellen „Parquet und Iceberg“ klonen. Siehe Inkrementelles Klonen von Parquet- und Iceberg-Tabellen zu Delta Lake.

In Databricks SQL und Databricks Runtime 13.3 LTS und höher können Sie einen flachen Klon mit verwalteten Unity Catalog-Tabellen verwenden. In Databricks Runtime 12.2 LTS und früher gibt es keine Unterstützung für flache Klone in Unity Catalog. Weitere Informationen finden Sie unter Flache Klone für verwaltete Unity Catalog-Tabellen.

Wichtig

Es gibt wichtige Unterschiede zwischen flachen und tiefen Klonen, die bestimmen können, wie sie am besten verwendet werden. Siehe Klonen einer Tabelle in Azure Databricks.

Syntax

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]

Parameter

  • IF NOT EXISTS

    Wenn angegeben, wird die Anweisung ignoriert, wenn table_name bereits vorhanden ist.

  • [CREATE OR] REPLACE

    Wenn CREATE OR angegeben ist, wird die Tabelle ersetzt, wenn sie vorhanden ist, und neu erstellt, wenn dies nicht der Fall ist. Ohne CREATE OR muss table_name vorhanden sein.

  • table_name

    Dies ist der Name der zu erstellenden Delta Lake-Tabelle. Der Name darf keine zeitliche Spezifikation oder Optionsspezifikation enthalten. Wenn der Name ohne Qualifizierung angegeben wird, wird die Tabelle im aktuellen Schema erstellt. table_name darf nicht bereits vorhanden sein, es sei denn, REPLACE oder IF NOT EXISTS wurde angegeben.

  • SHALLOW CLONE oder DEEP CLONE

    Wenn Sie SHALLOW CLONE angeben, erstellt Azure Databricks eine Kopie der Definition der Quelltabelle, aber verweist auf die Dateien der Quelltabelle. Wenn Sie DEEP CLONE (Standard) angeben, erstellt Azure Databricks eine vollständige, unabhängige Kopie der Quelltabelle.

  • source_table_name

    Dies ist der Name der Delta Lake-Tabelle, die geklont werden soll. Der Name kann eine zeitliche Spezifikation oder Optionsangabe enthalten.

  • TBLPROPERTIES

    Legt optional eine oder mehrere benutzerdefinierte Eigenschaften fest.

  • LOCATION path

    Optional wird eine externe Tabelle mit dem angegebenen Speicherort als Pfad erstellt, in dem die Daten gespeichert werden. Wenn table_name selbst ein Pfad anstelle eines Tabellenbezeichners vor sich geht, schlägt der Vorgang fehl. path muss ein STRING-Literal sein.

Beispiele

Sie können CREATE TABLE CLONE für komplexe Vorgänge wie Datenmigration, Datenarchivierung, Reproduktion von Machine Learning-Flows, kurzfristige Experimente und Datenfreigabe verwenden. Siehe Klonen einer Tabelle in Azure Databricks.