Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
U kunt een volledige, onafhankelijke kopie van een beheerde Iceberg-tabel maken met behulp van DEEP CLONE. Een diepe kloon kopieert zowel de gegevensbestanden als de tabelmetagegevens naar een nieuwe beheerde Iceberg-tabel in Unity Catalog.
Beheerde Iceberg-tabellen ondersteunen uitsluitend diep klonen. Ondiep klonen en formaatconversie tijdens het klonen worden niet ondersteund.
Kloonmethoden voor Iceberg-tabellen
De kloonbewerking die u gebruikt, is afhankelijk van de typen bron- en doeltabellen:
| bron | Doel | Operation |
|---|---|---|
| Gereguleerde ijsberg | Gereguleerde ijsberg |
DEEP CLONE. |
| Buitenlandse IJsberg | Gereguleerde ijsberg |
DEEP CLONE. Zie Een externe Iceberg-tabel klonen naar beheerde Iceberg. |
| Parquet of buitenlandse Ijsberg | Beheerde of externe Delta Lake | Incrementele kloon. Zie Het incrementeel klonen van Parquet- en Apache Iceberg-tabellen naar Delta Lake. |
Als u een beheerde Iceberg-tabel wilt maken op basis van queryresultaten in plaats van een bestaande tabel te klonen, gebruikt u CREATE TABLE ... AS SELECT. Zie CREATE TABLE [USING].
SHALLOW CLONE wordt niet ondersteund voor Iceberg-tabellen. Zie Beperkingen.
Requirements
Als u een deep clone van een beheerde Iceberg-tabel wilt maken, hebt u het volgende nodig:
- Databricks Runtime 16.4 LTS of hoger.
-
SELECTbevoegdheden voor de brontabel. - Als u een bestaande tabel vervangt,
CREATE TABLErechten op het doelschema ofMODIFYrechten op de doeltabel. - Voorspellende optimalisatie ingeschakeld voor de doelcatalogus of het doelschema.
Een beheerde Iceberg-tabel diep klonen
Gebruik CREATE TABLE ... DEEP CLONE dit om een beheerde Iceberg-tabel te kopiëren:
CREATE TABLE <catalog>.<schema>.<target-table>
DEEP CLONE <catalog>.<schema>.<source-table>;
Een bestaande doeltabel vervangen:
CREATE OR REPLACE TABLE <catalog>.<schema>.<target-table>
DEEP CLONE <catalog>.<schema>.<source-table>;
Om het doel alleen te maken als het nog niet bestaat:
CREATE TABLE IF NOT EXISTS <catalog>.<schema>.<target-table>
DEEP CLONE <catalog>.<schema>.<source-table>;
Zie voor de volledige CREATE TABLE CLONE syntaxis CREATE TABLE CLONE.
Een productietabel archiveren
Een onafhankelijke momentopname van een productietabel maken voor archiverings- of nalevingsdoeleinden:
CREATE TABLE prod_catalog.archive.orders_snapshot_may2026
DEEP CLONE prod_catalog.main.orders;
Een tabel kopiëren naar een ontwikkelomgeving
Een productietabel klonen naar een ontwikkelingscatalogus voor veilige experimenten zonder dat dit van invloed is op productiegegevens:
CREATE OR REPLACE TABLE dev_catalog.test.orders
DEEP CLONE prod_catalog.main.orders;
Een externe Iceberg-tabel klonen naar een beheerde Iceberg-tabel
U kunt DEEP CLONE gebruiken om een externe Iceberg-tabel naar Unity Catalog te migreren als een beheerde Iceberg-tabel. Met de kloon worden alle gegevens en metagegevens gekopieerd naar de Unity Catalog-opslag. De oorspronkelijke bestanden die worden beheerd door de externe catalogus, worden niet opnieuw gebruikt.
CREATE TABLE <uc-catalog>.<schema>.<target-table>
DEEP CLONE <foreign-catalog>.<schema>.<source-table>;
Nadat de kloon is voltooid, is de doeltabel een volledig beheerde Iceberg-tabel in Unity Catalog, onafhankelijk van de broncatalogus.
Note
Migratie zonder gegevens te kopiëren vanuit een externe catalogus wordt niet ondersteund. Zie Beperkingen.
Tabeleigenschappen van een diepe kopie instellen
U kunt de eigenschappen van de Iceberg-tabel niet instellen in de DEEP CLONE instructie. Als u eigenschappen aan de gekloonde tabel wilt toevoegen of overschrijven, gebruikt ALTER TABLE SET TBLPROPERTIES u deze nadat de kloon is voltooid.
Als u bijvoorbeeld aangepaste eigenschappen wilt instellen om de bron van een kloon vast te leggen die wordt gebruikt als momentopname:
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'
);
Gedrag klonen
Belangrijke overwegingen voor de werking van diep klonen:
- Een diepe kloon is een volledige, onafhankelijke kopie van de brontabel. Wijzigingen in de kloon hebben geen invloed op de bron en wijzigingen in de bron hebben geen invloed op de kloon.
- Een diepe kloon heeft een onafhankelijke geschiedenis van momentopnamen. Tijdreizen op de kloon maakt gebruik van de geschiedenis van de kloon, niet de geschiedenis van de bron.
- Het schema, de partitioneringsinformatie en de tabeleigenschappen worden gekopieerd naar de diepe kloon. Unity Catalog-tags worden niet gekopieerd.
- Na het maken beheert Unity Catalog de kloon onafhankelijk met voorspellende optimalisatie.
Beperkingen
- Shallow cloning wordt niet ondersteund bij beheerde Iceberg-tabellen.
- Unity Catalog biedt geen ondersteuning voor nulkopieconversie van buitenlandse Iceberg-tabellen naar beheerde Iceberg-tabellen. Je moet
DEEP CLONEgebruiken. Alle gegevens worden tijdens de kloonbewerking gekopieerd naar de Unity Catalog-opslag. - Diepe klonen kopiëren geen tabelgeschiedenis, wat van invloed is op query's voor tijdreizen.
- U kunt de tabelindeling niet wijzigen tijdens het klonen. Het doel is altijd een beheerde Iceberg-tabel.
- U kunt geen tabeleigenschappen instellen tijdens het klonen. Gebruik
ALTER TABLE SET TBLPROPERTIESnadat de deep clone is voltooid. Zie Tabeleigenschappen instellen voor een diepe kloon.