Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für: Databricks SQL
Databricks Runtime
Klonen einer Quelle-Delta, verwalteten Apache-Eisberg- oder Apache-Parquet-Tabelle zu einem Ziel-Speicherort in einer bestimmten Version. Klonen kann entweder tief oder flach sein: Tiefe Klonen kopieren die Daten, während flache Klonen auf die Quelldaten verweisen, ohne sie zu kopieren.
- Delta-, Parquet- und Foreign Iceberg-Tabellen unterstützen sowohl tiefe als auch flache Klonung.
- Verwaltete Iceberg-Tabellen unterstützen nur tiefes Klonen, und Sie können das Tabellenformat während des Klonens nicht ändern.
Für weitere Informationen siehe inkrementelles Klonen von Parquet- und Apache-Eisberg-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 Flacher Klon für 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
WENN NICHT EXISTIERT
Wenn angegeben, wird die Anweisung ignoriert, wenn
table_name
bereits vorhanden ist.[ERSTELLEN ODER] ERSETZEN
Wenn
CREATE OR
angegeben ist, wird die Tabelle ersetzt, wenn sie vorhanden ist, und neu erstellt, wenn dies nicht der Fall ist. OhneCREATE OR
musstable_name
vorhanden sein.-
Der Name der zu erstellenden 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
oderIF NOT EXISTS
wurde angegeben. SHALLOW CLONE oder DEEP CLONE
Wenn Sie
SHALLOW CLONE
angeben, wird Azure Databricks eine Kopie der Definition der Quelltabelle erstellen, aber auf die Dateien der Quelltabelle verweisen. Wenn SieDEEP CLONE
(Standard) angeben, erstellt Azure Databricks eine vollständige, unabhängige Kopie der Quelltabelle.Verwaltete Iceberg-Tabellen unterstützen nur tiefes Klonen, nicht flaches Klonen.
-
Der Name der tabelle, die geklont werden soll. Der Name kann eine zeitliche Spezifikation oder Optionsangabe enthalten.
-
Legt optional eine oder mehrere benutzerdefinierte Eigenschaften fest.
Speicherort Pfad
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 ist, schlägt der Vorgang fehl.path
muss ein Zeichenfolgenliteral 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.