Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här sidan förklarar hur du aktiverar katalogincheckningar, en deltatabellfunktion som flyttar incheckningssamordningen från filsystemet till Unity Catalog, vilket gör katalogen till den enda sanningskällan för tabelltillstånd.
Översikt
Traditionella Delta Lake-transaktioner samordnar åtaganden på enskild nivå. Varje tabell hanterar sin egen transaktionslogg och konfliktidentifiering oberoende av varandra. Katalogändringar flyttar denna samordning till katalognivå. På så sätt kan organisationer konsekvent styra all åtkomst till Lakehouse via Unity Catalog. Det gör det också möjligt för Unity Catalog att samordna incheckningar över flera tabeller inom en enda transaktionsgräns samtidigt som Delta Lake ACID-garantier bibehålls.
Fördelar
Katalogåtaganden erbjuder följande möjligheter:
Transaktioner som sträcker sig över flera tabeller: Kör flera SQL-instruktioner över flera tabeller i en enda atomisk commithändelse. Alla ändringar lyckas tillsammans eller misslyckas tillsammans. Se Transaktioner.
Viktigt!
Transaktioner som skriver till hanterade Delta-tabeller i Unity Catalog finns i offentlig förhandsversion.
Transaktioner som skriver till hanterade Iceberg-tabeller i Unity Catalog finns i privat förhandsversion. Om du vill ansluta till den här förhandsversionen skickar du registreringsformuläret för förhandsversionen av hanterade Iceberg-tabeller.
Styrd åtkomst: Läs- och skrivoperationer samordnas via Unity Catalog, så att bearbetningsmotorerna ser det senaste bekräftade tillståndet och styrningsprinciperna tillämpas.
Snabbare frågeplanering och skrivningar: Unity Catalog informerar en Delta-klient om metadata på tabellnivå direkt när den kommer åt en tabell, hoppar över molnlagring och tar bort en större källa med svarstider för metadata.
Begränsningar som kan tillämpas: Unity Catalog validerar eller avvisar schema- och begränsningsändringar, vilket förhindrar inkompatibla uppdateringar som kan bryta dataintegriteten eller nedströmsarbetsbelastningar.
Extern åtkomst: Skriv säkert till hanterade Unity Catalog-tabeller från externa motorer. Unity Catalog samordnar incheckningar och ändringar för att förebygga korruption och samtidighetskonflikter. Se Åtkomst till Databricks-data med externa system.
Viktigt!
Den här funktionen finns i Beta. Arbetsyteadministratörer kan styra åtkomsten till den här funktionen från sidan Förhandsversioner . Se Hantera Azure Databricks förhandsversioner.
Requirements
- Tabeller måste vara hanterade Unity Catalog-tabeller (Delta eller Iceberg).
- Databricks Runtime 16.4 och senare krävs för att läsa från, skriva till eller skapa tabeller med katalogkommittér aktiverade.
- Databricks Runtime 18.0 och senare krävs för att aktivera eller inaktivera katalogändringar i befintliga tabeller.
Aktivera katalogincheckningar
Du kan aktivera katalogincheckningar i nya och befintliga tabeller.
Aktivera katalogkompletteringar för nya tabeller
Använd tabellegenskapen delta.feature.catalogManaged när du skapar en tabell:
CREATE TABLE sales_data (
sale_id BIGINT,
amount DECIMAL(10,2),
sale_date DATE
)
TBLPROPERTIES ('delta.feature.catalogManaged' = 'supported');
Aktivera katalogåtgärder för befintliga tabeller
Använd ALTER TABLE för att lägga till katalogkommandon i en befintlig tabell:
ALTER TABLE sales_data SET TBLPROPERTIES ('delta.feature.catalogManaged' = 'supported');
Viktigt!
Om du aktiverar katalogincheckningar i en befintlig tabell synkroniseras tabelltillståndet med katalogen. Den här åtgärden kan ta flera minuter för tabeller med höga skrivarbetsbelastningar.
Kontrollera om katalogkommitteringar är aktiverade
Så här kontrollerar du om katalogkommandon är aktiverade för en tabell:
DESCRIBE DETAIL sales_data;
Om det är aktiverat visas catalogManaged i tableFeatures kolumnen.
Inaktivera katalogincheckningar
Du kan inaktivera katalogändringar i Databricks Runtime 18.0 och senare. Se Ta bort en Delta Lake-tabellfunktion och nedgradera tabellprotokollet.
Varning
Avbryt inte uppgraderings- eller nedgraderingsåtgärder medan ALTER eller DROP instruktioner utförs. Avbrott kan lämna tabellen i ett delvis uppgraderat eller nedgraderat tillstånd, vilket låser den från alla framtida läsningar och skrivningar. Om du vill återställa kör du lämpligt kommando igen i stället för att avbryta. Kontakta Databricks-supporten om tabellen blir låst.
Begränsningar
- Du kan inte aktivera eller inaktivera katalogincheckningar med hjälp av
CREATE OR REPLACE TABLEellerREPLACE TABLE. AnvändCREATE TABLEmed egenskapendelta.feature.catalogManagedför att aktivera den när du skapar en tabell ellerALTER TABLEför att aktivera eller inaktivera den i en befintlig tabell.
- Tabeller med aktiverade katalogincheckningar delas via Deltadelning med förhandsignade URL:ar i stället för molntoken.
- Vyer ovanpå tabeller med katalogincheckningar aktiverade kan inte delas med Delta.
- Materialiserade vyer och strömmande tabeller kan inte ha katalogincheckningar aktiverade.
- Tabeller med katalogincheckningar aktiverade kan inte vara källtabellen för en Lakeflow-jobbutlösare.
- Zerobus kan inte skriva till tabeller med katalogincheckningar aktiverade.