Catalogusdoorvoeringen

Cataloguscommits verplaatsen de coördinatie van commits van het bestandssysteem naar Unity Catalog, waardoor de catalogus de enige bron van waarheid wordt voor de status van Delta Lake- en Apache Iceberg-tabellen. Dit maakt transacties met meerdere tabellen mogelijk, snellere queryplanning en beheerde toegang voor alle tabelbewerkingen.

Traditionele Delta Lake-transacties coördineren doorvoeringen op het niveau van de afzonderlijke tabel. Elke tabel beheert onafhankelijk van elkaar een eigen transactielogboek en conflictdetectie. Door doorvoercoördinatie naar het catalogusniveau te verplaatsen, kunnen organisaties hierdoor consistent alle toegang tot Lakehouse beheren via Unity Catalog. Unity Catalog kan ook commits in meerdere tabellen binnen één transactiegrens orkestreren, terwijl het de ACID-garanties van Delta Lake behoudt.

Voordelen

Cataloguscommits bieden de volgende mogelijkheden:

  • Transacties die meerdere tabellen omvatten: voer meerdere SQL-instructies uit in meerdere tabellen als één atomische doorvoering. Alle wijzigingen slagen samen of mislukken samen. Zie Transacties.

    Important

    Transacties die naar beheerde Iceberg-tabellen in Unity Catalog schrijven, bevinden zich in private preview. Als u wilt deelnemen aan deze preview, dient u het voorbeeldformulier voor beheerde Iceberg-tabellen in.

  • Beheerde toegang: Lees- en schrijfbewerkingen worden gecoördineerd via Unity Catalog, zodat systemen de nieuwste vastgelegde status zien en de governancebeleidsmaatregelen toepassen.

  • Snellere queryplanning en schrijfbewerkingen: Unity Catalog informeert een Delta-client rechtstreeks over metagegevens op tabelniveau wanneer deze toegang heeft tot een tabel, cloudopslag overslaat en een belangrijke bron van latentie van metagegevens verwijdert.

  • Afdwingbare beperkingen: Unity Catalog valideert of weigert schema- en beperkingswijzigingen, waardoor incompatibele updates worden voorkomen die de gegevensintegriteit of downstreamworkloads kunnen verbreken.

  • Externe toegang: veilig schrijven naar beheerde tabellen van Unity Catalog vanuit externe engines. Unity Catalog coördineert commits om corruptie- en gelijktijdigheidsconflicten te voorkomen. Zie Toegang tot Databricks-gegevens met behulp van externe systemen.

    Important

    Deze functie bevindt zich in de bètaversie. Werkruimtebeheerders kunnen de toegang tot deze functie beheren vanaf de pagina Previews . Zie Azure Databricks previews beheren.

Requirements

  • Tabellen moeten beheerde tabellen van Unity Catalog zijn (Delta of Iceberg).
  • Databricks Runtime 16.4 en hoger is vereist voor het lezen van, schrijven naar of maken van tabellen waarvoor catalogusdoorvoeringen zijn ingeschakeld.
  • Databricks Runtime 18.0 en hoger is vereist voor het in- of uitschakelen van cataloguscommits voor bestaande tabellen.

Catalogus commit acties inschakelen

U kunt cataloguscommits inschakelen voor nieuwe en bestaande tabellen.

Cataloguscommits inschakelen voor nieuwe tabellen

Gebruik de delta.feature.catalogManaged tabeleigenschap bij het maken van een tabel.

CREATE TABLE sales_data (
  sale_id BIGINT,
  amount DECIMAL(10,2),
  sale_date DATE
)
TBLPROPERTIES ('delta.feature.catalogManaged' = 'supported');

Catalogusdoorvoeringen inschakelen voor bestaande tabellen

Gebruik ALTER TABLE om catalogus-commits toe te voegen aan een bestaande tabel:

ALTER TABLE sales_data SET TBLPROPERTIES ('delta.feature.catalogManaged' = 'supported');

Important

Het inschakelen van catalogusdoorvoeringen in een bestaande tabel synchroniseert de tabelstatus met de catalogus. Deze bewerking kan enkele minuten duren voor tabellen met grote hoeveelheden schrijfbewerkingen.

Controleren of catalogusdoorvoeringen zijn ingeschakeld

Om te controleren of cataloguscommits voor een tabel zijn ingeschakeld:

DESCRIBE DETAIL sales_data;

Als deze optie is ingeschakeld, verschijnt catalogManaged in de tableFeatures kolom.

Cataloguscommits uitschakelen

U kunt commits in de catalogus uitschakelen vanaf Databricks Runtime 18.0. Zie Een Delta Lake-tabelfunctie verwijderen en het tabelprotocol degraderen.

Warning

Annuleer geen upgrade- of downgradebewerkingen tijdens het uitvoeren van ALTER- of DROP-instructies. Een onderbreking kan ertoe leiden dat de tabel in een gedeeltelijk geüpgradede of gedowngradede toestand blijft, waardoor deze wordt geblokkeerd voor alle toekomstige lees- en schrijfbewerkingen. Als u wilt terugkeren, voert u de juiste opdracht opnieuw uit in plaats van te annuleren. Neem contact op met databricks-ondersteuning als de tabel wordt vergrendeld.

Limitations

  • U kunt catalogus-commits voor bestaande tabellen niet in- of uitschakelen met CREATE OR REPLACE TABLE of REPLACE TABLE. Gebruik CREATE TABLE met de eigenschap delta.feature.catalogManaged om deze in te schakelen bij het maken van een tabel, of ALTER TABLE om deze voor een bestaande tabel in of uit te schakelen.
  • Als u catalogus-commits op streamingtabellen wilt gebruiken, moet u contact opnemen met uw Databricks-accountteam en toegang aanvragen voor de Public Preview.
  • Cataloguscommits zijn niet compatibel met toegang tot externe gegevens op streamingtabellen. Als u cataloguscommits wilt gebruiken, moet u eerst externe toegang uitschakelen. Zie Externe gegevenstoegang tot streamingtabellen en gerealiseerde weergaven inschakelen.
  • Tabellen waarvoor catalogusdoorvoeringen zijn ingeschakeld, worden gedeeld via OpenSharing met behulp van vooraf ondertekende URL's in plaats van cloudtokens.
  • Gematerialiseerde weergaven kunnen geen catalogus-commits ingeschakeld hebben.
  • Clusters met één gebruiker hebben geen toegang tot streamingtabellen waarvoor catalogusdoorvoeringen zijn ingeschakeld.

Aanvullende informatiebronnen