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.
Sie können eine vollständige, unabhängige Kopie einer verwalteten Iceberg-Tabelle erstellen.DEEP CLONE Ein Deep Clone kopiert sowohl die Datendateien als auch die Tabellenmetadaten in eine neue verwaltete Iceberg-Tabelle im Unity-Katalog.
Verwaltete Iceberg-Tabellen unterstützen nur tiefe Klone. Flaches Klonen und Formatkonvertierung beim Klonen werden nicht unterstützt.
Klonmethoden für Iceberg-Tabellen
Der von Ihnen verwendete Klonvorgang hängt von den Quell- und Zieltabellentypen ab:
| Source | Target | Operation |
|---|---|---|
| Verwalteter Iceberg | Verwalteter Iceberg |
DEEP CLONE. |
| Fremde Eisberge | Verwalteter Iceberg |
DEEP CLONE. Siehe Klonen einer fremden Iceberg-Tabelle in verwaltetes Iceberg. |
| Parkett oder fremder Eisberg | Verwaltetes oder externes Delta Lake | Inkrementelles Klonen. Siehe Inkrementelles Klonen von Parquet- und Apache Iceberg-Tabellen auf Delta Lake. |
Um eine verwaltete Iceberg-Tabelle aus Abfrageergebnissen zu erstellen, anstatt eine vorhandene Tabelle zu klonen, verwenden Sie CREATE TABLE ... AS SELECT. Siehe CREATE TABLE [USING].
SHALLOW CLONE wird für Iceberg-Tabellen nicht unterstützt. Informationen finden Sie unter Einschränkungen.
Requirements
Um eine verwaltete Iceberg-Tabelle vollständig zu klonen, benötigen Sie:
- Databricks Runtime 16.4 LTS oder höher.
-
SELECTBerechtigungen für die Quelltabelle. - Falls eine vorhandene Tabelle ersetzt wird, Berechtigungen
CREATE TABLEfür das Zielschema oder BerechtigungenMODIFYfür die Zieltabelle. - Die Vorhersageoptimierung ist im Zielkatalog oder -schema aktiviert.
Eine verwaltete Iceberg-Tabelle vollständig klonen
Verwenden Sie CREATE TABLE ... DEEP CLONE, um eine verwaltete Iceberg-Tabelle zu kopieren:
CREATE TABLE <catalog>.<schema>.<target-table>
DEEP CLONE <catalog>.<schema>.<source-table>;
So ersetzen Sie eine vorhandene Zieltabelle:
CREATE OR REPLACE TABLE <catalog>.<schema>.<target-table>
DEEP CLONE <catalog>.<schema>.<source-table>;
Das Ziel nur erstellen, wenn es noch nicht vorhanden ist:
CREATE TABLE IF NOT EXISTS <catalog>.<schema>.<target-table>
DEEP CLONE <catalog>.<schema>.<source-table>;
Vollständige CREATE TABLE CLONE Syntax finden Sie unter CREATE TABLE CLONE.
Archiv einer Produktionstabelle
So erstellen Sie eine unabhängige Momentaufnahme einer Produktionstabelle für Archivierungs- oder Compliancezwecke:
CREATE TABLE prod_catalog.archive.orders_snapshot_may2026
DEEP CLONE prod_catalog.main.orders;
Kopieren einer Tabelle in eine Entwicklungsumgebung
So klonen Sie eine Produktionstabelle in einen Entwicklungskatalog für sichere Experimente ohne Auswirkungen auf Produktionsdaten:
CREATE OR REPLACE TABLE dev_catalog.test.orders
DEEP CLONE prod_catalog.main.orders;
Klonen Sie eine externe Iceberg-Tabelle in eine verwaltete Iceberg-Tabelle
Sie können DEEP CLONE verwenden, um eine externe Iceberg-Tabelle als verwaltete Iceberg-Tabelle in Unity Catalog zu migrieren. Der Klon kopiert alle Daten und Metadaten in den Unity-Katalogspeicher. Die ursprünglichen Dateien, die vom externen Katalog verwaltet werden, werden nicht wiederverwendet.
CREATE TABLE <uc-catalog>.<schema>.<target-table>
DEEP CLONE <foreign-catalog>.<schema>.<source-table>;
Nach Abschluss des Klons ist die Zieltabelle eine vollständig verwaltete Iceberg-Tabelle im Unity-Katalog, unabhängig vom Quellkatalog.
Note
Die Zero-Copy-Migration aus einem fremden Katalog wird nicht unterstützt. Informationen finden Sie unter Einschränkungen.
Legen Sie Tabelleneigenschaften bei einem Deep Clone fest
Sie können Iceberg-Tabelleneigenschaften in der Anweisung DEEP CLONE nicht festlegen. Verwenden Sie ALTER TABLE SET TBLPROPERTIES nach Abschluss des Klonvorgangs, um Eigenschaften der geklonten Tabelle hinzuzufügen oder zu überschreiben.
So legen Sie beispielsweise benutzerdefinierte Eigenschaften fest, um die Quelle eines Klons aufzuzeichnen, der als Momentaufnahme verwendet wird:
CREATE TABLE prod_catalog.archive.orders_snapshot
DEEP CLONE prod_catalog.main.orders;
ALTER TABLE prod_catalog.archive.orders_snapshot
SET TBLPROPERTIES (
'archive.source' = 'prod_catalog.main.orders',
'archive.created_date' = '2026-05-11'
);
Klonverhalten
Wichtige Überlegungen zum Verhalten beim tiefen Klonen:
- Ein Deep Clone ist eine vollständige, unabhängige Kopie der Quelltabelle. Änderungen am Klon wirken sich nicht auf die Quelle aus, und Änderungen an der Quelle wirken sich nicht auf den Klon aus.
- Ein Deep Clone hat einen unabhängigen Snapshotverlauf. Zeitreisen auf dem Klon verwenden die Geschichte des Klons, nicht die Geschichte der Quelle.
- Die Schema-, Partitionierungsinformationen und Tabelleneigenschaften werden in den Deep Clone kopiert. Unity-Katalogtags werden nicht kopiert.
- Nach der Erstellung verwaltet Unity Catalog den Klon eigenständig mit prädiktiver Optimierung.
Einschränkungen
- Flaches Klonen wird für verwaltete Iceberg-Tabellen nicht unterstützt.
- Unity Catalog unterstützt keine Nullkopie-Konvertierung fremder Iceberg-Tabellen in verwaltete Iceberg-Tabellen. Sie müssen
DEEP CLONEverwenden. Alle Daten werden während des Klonvorgangs in den Unity-Katalogspeicher kopiert. - Tiefe Klone kopieren den Tabellenverlauf nicht, was sich auf Time-Travel-Abfragen auswirkt.
- Sie können das Tabellenformat während des Klonens nicht ändern. Das Ziel ist immer eine verwaltete Iceberg-Tabelle.
- Sie können während des Klonens keine Tabelleneigenschaften festlegen. Verwenden Sie
ALTER TABLE SET TBLPROPERTIES, nachdem der Deep Clone abgeschlossen ist. Siehe Festlegen von Tabelleneigenschaften für einen Deep Clone.