Konfigurera och hantera Unity Catalog

Den här artikeln beskriver hur du konfigurerar och använder Unity Catalog för att hantera data på din Azure Databricks-arbetsyta. Det är främst avsett för arbetsyteadministratörer som använder Unity Catalog för första gången.

I slutet av den här artikeln har du:

  • En arbetsyta som är aktiverad för Unity Catalog.
  • Beräkning som har åtkomst till Unity Catalog.
  • Användare med behörighet att komma åt och skapa objekt i Unity Catalog.

Du kanske också vill granska andra introduktionsartiklar:

Kommentar

Om du vill uppgradera en befintlig arbetsyta som inte är en Unity-katalog till Unity Catalog kan du dra nytta av att använda UCX, ett Databricks Labs-projekt som tillhandahåller en uppsättning arbetsflöden och verktyg för att uppgradera identiteter, behörigheter och tabeller till Unity Catalog. Se Använda UCX-verktygen för att uppgradera din arbetsyta till Unity Catalog.

Översikt över aktivering av Unity-katalog

Om du vill använda Unity Catalog måste dina Azure Databricks-arbetsytor vara aktiverade för Unity Catalog, vilket innebär att arbetsytorna är anslutna till ett Unity Catalog-metaarkiv, den översta containern för Unity Catalog-metadata.

Hur administratörer konfigurerar Unity Catalog beror på om arbetsytan aktiverades automatiskt för Unity Catalog eller kräver manuell aktivering.

Automatisk aktivering av Unity Catalog

Databricks började aktivera nya arbetsytor för Unity Catalog automatiskt den 9 november 2023, med en distribution som fortsätter gradvis mellan konton. Arbetsytor som aktiverades automatiskt har följande egenskaper:

  • Ett automatiskt etablerat Unity Catalog-metaarkiv (såvida inte ett Unity Catalog-metaarkiv redan fanns för arbetsyteregionen och metaarkivet är aktiverat för automatisk tilldelning av arbetsytor).

  • Standardbehörigheter för arbetsyteadministratörer, till exempel möjligheten att skapa en katalog eller en extern databasanslutning.

  • Ingen metaarkivadministratör (såvida inte ett befintligt Unity Catalog-metaarkiv användes och en metaarkivadministratör redan har tilldelats).

  • Ingen lagring på metaarkivnivå för hanterade tabeller och hanterade volymer (såvida inte ett befintligt Unity Catalog-metaarkiv med lagring på metaarkivnivå användes).

  • En arbetsytekatalog som, när den ursprungligen etablerades, namnges efter din arbetsyta.

    Alla användare på din arbetsyta kan skapa tillgångar i schemat i den default här katalogen. Som standard är den här katalogen bunden till din arbetsyta, vilket innebär att den bara kan nås via din arbetsyta. Automatisk etablering av arbetsytekatalogen vid skapande av arbetsytor distribueras gradvis mellan konton.

Dessa standardkonfigurationer fungerar bra för de flesta arbetsytor, men alla kan ändras av en arbetsyteadministratör eller kontoadministratör. En kontoadministratör kan till exempel tilldela en metaarkivadministratör och skapa lagring på metaarkivnivå, och en administratör för arbetsytan kan ändra katalognamnet och åtkomsten för arbetsytan.

Vad händer om min arbetsyta inte har aktiverats för Unity Catalog automatiskt?

Om arbetsytan inte har aktiverats automatiskt för Unity Catalog måste en kontoadministratör eller metaarkivadministratör manuellt koppla arbetsytan till ett Unity Catalog-metaarkiv i samma region. Om det inte finns något Unity Catalog-metaarkiv i regionen måste en kontoadministratör skapa ett. Instruktioner finns i Skapa ett Unity Catalog-metaarkiv.

Hur gör jag för att vet du om min arbetsyta har aktiverats för Unity Catalog?

Om du vill kontrollera om din arbetsyta är aktiverad för Unity Catalog ber du en administratör för Azure Databricks-arbetsytan eller kontoadministratören att söka efter dig. Se även Steg 1: Bekräfta att arbetsytan är aktiverad för Unity Catalog.

Hur gör jag för att veta om min arbetsyta innehåller en katalog för arbetsytor?

Vissa nya arbetsytor har en arbetsytekatalog som, när den ursprungligen etablerades, namnges efter din arbetsyta. Om du vill ta reda på om arbetsytan har en klickar du på Katalogikon Katalog i sidofältet för att öppna Katalogutforskaren och söker efter en katalog som använder arbetsytans namn som katalognamn.

Kommentar

Arbetsytekatalogen är som vilken annan katalog som helst i Unity Catalog: en arbetsyteadministratör kan ändra sitt namn, ändra ägarskapet eller till och med ta bort den. Men omedelbart efter att arbetsytan har skapats bär den arbetsytans namn

Innan du börjar

Innan du påbörjar de uppgifter som beskrivs i den här artikeln bör du bekanta dig med de grundläggande begreppen i Unity Catalog, inklusive metaarkiv, administratörsroller och hanterad lagring. Se Vad är Unity Catalog?.

Du bör också bekräfta att du uppfyller följande krav:

  • En Azure Databricks-arbetsyta i Premium-planen.

  • Följande roller och behörigheter, som beror på arbetsytans status:

    • Arbetsyteadministratör: Om arbetsytan aktiverades automatiskt för Unity Catalog när den skapades måste du vara administratör för arbetsytan för att slutföra de uppgifter som krävs.

    • Kontoadministratör: Om arbetsytan inte redan är aktiverad för Unity Catalog måste en kontoadministratör koppla arbetsytan till metaarkivet.

      Om det inte finns något Unity Catalog-metaarkiv i samma region som arbetsytan måste en kontoadministratör också skapa Unity Catalog-metaarkivet.

      Instruktioner för att avgöra om det finns ett metaarkiv för din arbetsyteregion, tillsammans med instruktioner för att skapa ett metaarkiv, följer i den här artikeln.

    Se Administratörsbehörigheter i Unity Catalog och Automatisk aktivering av Unity Catalog.

Steg 1: Bekräfta att arbetsytan är aktiverad för Unity Catalog

I det här steget avgör du om arbetsytan redan är aktiverad för Unity Catalog, där aktivering definieras som att ha ett Unity Catalog-metaarkiv kopplat till arbetsytan. Om arbetsytan inte är aktiverad för Unity Catalog måste du aktivera arbetsytan för Unity Catalog manuellt. Se Nästa steg om arbetsytan inte är aktiverad för Unity Catalog.

Bekräfta genom att göra något av följande.

Använd kontokonsolen för att bekräfta att Unity Catalog har aktiverats

  1. Logga in på kontokonsolen som administratör för Azure Databricks-kontot.
  2. Klicka på Ikon för arbetsytor Arbetsytor.
  3. Leta upp din arbetsyta och kontrollera kolumnen Metaarkiv . Om ett metaarkivnamn finns är arbetsytan kopplad till ett Unity Catalog-metaarkiv och aktiveras därför för Unity Catalog.

Köra en SQL-fråga för att bekräfta aktivering av Unity Catalog

Kör följande SQL-fråga i SQL-frågeredigeraren eller en notebook-fil som är kopplad till ett kluster som använder åtkomstläge för delad eller enskild användare . Se Åtkomstlägen. Ingen administratörsroll krävs.

SELECT CURRENT_METASTORE();

Om frågan returnerar ett metaarkiv-ID som följande är arbetsytan kopplad till ett Unity Catalog-metaarkiv och aktiveras därför för Unity Catalog.

Aktuella metaarkivutdata

Nästa steg om arbetsytan inte är aktiverad för Unity Catalog

Om din arbetsyta inte är aktiverad för Unity Catalog (ansluten till ett metaarkiv) beror nästa steg på om du redan har definierat ett Unity Catalog-metaarkiv för din arbetsyteregion:

  • Om ditt konto redan har ett Unity Catalog-metaarkiv definierat för din arbetsyteregion kan du helt enkelt koppla arbetsytan till det befintliga metaarkivet. Gå till Aktivera din arbetsyta för Unity Catalog.
  • Om det inte finns något Unity Catalog-metaarkiv som har definierats för arbetsytans region måste du skapa ett metaarkiv och sedan koppla arbetsytan. Gå till Skapa ett Unity Catalog-metaarkiv.

När din arbetsyta är aktiverad för Unity Catalog går du till nästa steg.

Steg 2: Lägg till användare och tilldela administratörsrollen för arbetsytan

Användaren som skapar arbetsytan läggs automatiskt till som en arbetsyteanvändare med administratörsrollen för arbetsytan (det vill: en användare i den admins arbetsytelokala gruppen). Som arbetsyteadministratör kan du lägga till och bjuda in användare till arbetsytan, tilldela administratörsrollen för arbetsytan till andra användare och skapa tjänstens huvudnamn och grupper.

Kontoadministratörer har också möjlighet att lägga till användare, tjänstens huvudnamn och grupper på din arbetsyta. De kan ge administratörs- och metaarkivadministratörsrollerna för kontot.

Mer information finns i Hantera användare.

Det kan vara praktiskt att hantera användaråtkomst till Azure Databricks genom att konfigurera etablering från Microsoft Entra-ID. Fullständiga instruktioner finns i Synkronisera användare och grupper från Microsoft Entra-ID.

Steg 3: Skapa kluster eller SQL-lager som användarna kan använda för att köra frågor och skapa objekt

Om du vill köra Unity Catalog-arbetsbelastningar måste beräkningsresurserna uppfylla vissa säkerhetskrav. Icke-kompatibla beräkningsresurser kan inte komma åt data eller andra objekt i Unity Catalog. SQL-lager uppfyller alltid kraven för Unity Catalog, men vissa klusteråtkomstlägen gör det inte. Se Åtkomstlägen.

Som administratör för arbetsytan kan du välja att begränsa skapandet av beräkning till administratörer eller låta användarna skapa egna SQL-lager och -kluster. Du kan också skapa klusterprinciper som gör det möjligt för användare att skapa sina egna kluster med hjälp av enhetskatalogkompatibla specifikationer som du tillämpar. Se Beräkningsbehörigheter och Skapa och hantera beräkningsprinciper.

Steg 4: Bevilja behörigheter till användare

Om du vill skapa objekt och komma åt dem i Unity Catalog-kataloger och scheman måste en användare ha behörighet att göra det. I det här avsnittet beskrivs användar- och administratörsbehörigheter som beviljats på vissa arbetsytor som standard och beskriver hur du beviljar ytterligare behörigheter.

Standardbehörigheter för användare

Vissa arbetsytor har standardbehörighet för användare (icke-administratör) vid start:

  • Om din arbetsyta startas med en automatiskt etablerad arbetsytekatalog kan alla arbetsyteanvändare skapa objekt i arbetsytekatalogens default schema.

    Information om hur du avgör om din arbetsyta har en arbetsytekatalog finns i Hur gör jag för att veta om min arbetsyta innehåller en arbetsytekatalog?.

  • Om din arbetsyta har aktiverats för Unity Catalog manuellt har den en main katalog etablerad automatiskt.

    Arbetsyteanvändare har behörigheten USE CATALOG i main katalogen, vilket inte ger möjlighet att skapa eller välja bland objekt i katalogen, men är en förutsättning för att arbeta med objekt i katalogen. Användaren som skapade metaarkivet main äger katalogen som standard och kan både överföra ägarskapet och ge åtkomst till andra användare.

    Om metaarkivlagring läggs till efter att metaarkivet har skapats etableras ingen main katalog.

Andra arbetsytor har inga kataloger som skapats som standard och inga användarbehörigheter som inte är administratör aktiverade som standard. En arbetsyteadministratör måste skapa den första katalogen och ge användarna åtkomst till den och objekten i den. Gå vidare till Steg 5: Skapa nya kataloger och scheman innan du slutför stegen i det här avsnittet.

Standardbehörigheter för administratörer

Vissa arbetsytor har standardbehörighet som administratör för arbetsytor vid start:

  • Om din arbetsyta har aktiverats för Unity Catalog automatiskt:
    • Arbetsyteadministratörer kan skapa nya kataloger och objekt i nya kataloger och ge åtkomst till dem.
    • Det finns ingen metaarkivadministratör som standard.
    • Arbetsyteadministratörer äger arbetsytekatalogen (om det finns en) och kan ge åtkomst till katalogen och alla objekt i katalogen.
  • Om din arbetsyta har aktiverats för Unity Catalog manuellt:
    • Arbetsyteadministratörer har som standard inga särskilda behörigheter för Unity Catalog.
    • Metaarkivadministratörer måste finnas och kan skapa alla Unity Catalog-objekt och kan ta över ägarskapet för alla Unity Catalog-objekt.

En lista över ytterligare objektbehörigheter som beviljats arbetsyteadministratörer i automatiskt aktiverade Unity Catalog-arbetsytor finns i Administratörsbehörigheter för arbetsytor när arbetsytor aktiveras automatiskt för Unity Catalog.

Bevilja behörigheter

För åtkomst till andra objekt än de som anges i föregående avsnitt måste en privilegierad användare bevilja den åtkomsten.

Om du till exempel vill ge en grupp möjlighet att skapa nya scheman i my-catalogkan katalogägaren köra följande i SQL-redigeraren eller en notebook-fil:

GRANT CREATE SCHEMA ON my-catalog TO `data-consumers`;

Om din arbetsyta aktiverades automatiskt för Unity Catalog äger arbetsyteadministratören arbetsytekatalogen och kan ge möjlighet att skapa nya scheman:

GRANT CREATE SCHEMA ON <workspace-catalog> TO `data-consumers`;

Du kan också bevilja och återkalla behörigheter med hjälp av Catalog Explorer.

Viktigt!

Du kan inte bevilja behörigheter till arbetsytans lokala users eller admins grupper. Om du vill bevilja behörigheter för grupper måste de vara grupper på kontonivå.

Mer information om hur du hanterar privilegier i Unity Catalog finns i Hantera privilegier i Unity Catalog.

Steg 5: Skapa nya kataloger och scheman

Om du vill börja använda Unity Catalog måste du ha minst en katalog definierad. Kataloger är den primära enheten för dataisolering och organisation i Unity Catalog. Alla scheman och tabeller finns i kataloger, liksom volymer, vyer och modeller.

Vissa arbetsytor har ingen automatiskt etablerad katalog. Om du vill använda Unity Catalog måste en arbetsyteadministratör skapa den första katalogen för sådana arbetsytor.

Andra arbetsytor har åtkomst till en företablerad katalog som användarna kan komma igång med (antingen arbetsytekatalogen main eller katalogen, beroende på hur din arbetsyta har aktiverats för Unity Catalog). När du lägger till mer data och AI-tillgångar i Azure Databricks kan du skapa ytterligare kataloger för att gruppera dessa tillgångar på ett sätt som gör det enkelt att styra data logiskt.

Rekommendationer om hur du bäst använder kataloger och scheman för att organisera dina data och AI-tillgångar finns i Metodtips för Unity Catalog.

Som metaarkivadministratör, arbetsyteadministratör (endast automatiskt aktiverade arbetsytor) eller annan användare med behörighet kan CREATE CATALOG du skapa nya kataloger i metaarkivet. När du gör det bör du:

  1. Skapa hanterad lagring för den nya katalogen.

    Hanterad lagring är en dedikerad lagringsplats i ditt Azure-konto för hanterade tabeller och hanterade volymer. Du kan tilldela hanterad lagring till metaarkivet, till kataloger och till scheman. När en användare skapar en tabell lagras data på den lagringsplats som är lägst i hierarkin. Om till exempel en lagringsplats har definierats för metaarkivet och katalogen, men inte schemat, lagras data på den plats som definierats för katalogen.

    Databricks rekommenderar att du tilldelar hanterad lagring på katalognivå, eftersom kataloger vanligtvis representerar logiska dataisoleringsenheter. Om du är bekväm med att data i flera kataloger delar samma lagringsplats kan du som standard använda lagringsplatsen på metaarkivnivå. Om din arbetsyta har aktiverats för Unity Catalog automatiskt finns det ingen lagring på metaarkivnivå som standard. En kontoadministratör har möjlighet att konfigurera lagring på metaarkivnivå. Se Ange en hanterad lagringsplats i Unity Catalog och Lägg till hanterad lagring i ett befintligt metaarkiv.

    När du tilldelar hanterad lagring till en katalog måste du skapa:

    • En lagringsautentiseringsuppgift.
    • En extern plats som refererar till lagringsautentiseringsuppgifterna.

    En introduktion till dessa objekt och instruktioner för att skapa dem finns i Ansluta till molnobjektlagring med Unity Catalog.

  2. Binda den nya katalogen till din arbetsyta om du vill begränsa åtkomsten från andra arbetsytor som delar samma metaarkiv.

    Se Begränsa katalogåtkomst till specifika arbetsytor.

  3. Bevilja behörigheter i katalogen.

Detaljerade anvisningar finns i Skapa kataloger.

Exempel på katalogskapande

I följande exempel visas skapandet av en katalog med hanterad lagring, följt av beviljande av behörighet för SELECT katalogen:

CREATE CATALOG IF NOT EXISTS mycatalog
  MANAGED LOCATION 'abfss://mycontainer@<myaccount.dfs.core.windows.net//depts/finance';

GRANT SELECT ON mycatalog TO `finance-team`;

Fler exempel, inklusive instruktioner för att skapa kataloger med Hjälp av Katalogutforskaren, finns i Skapa kataloger.

Skapa ett schema

Scheman representerar mer detaljerade grupper (t.ex. avdelningar eller projekt) än kataloger. Alla tabeller och andra Unity Catalog-objekt i katalogen finns i scheman. Som ägare till en ny katalog kanske du vill skapa scheman i katalogen. Men du kanske i stället vill delegera möjligheten att skapa scheman till andra användare genom att ge dem behörigheten CREATE SCHEMA i katalogen.

Detaljerade instruktioner finns i Skapa scheman.

(Valfritt) Tilldela administratörsrollen för metaarkivet

Om din arbetsyta aktiverades automatiskt för Unity Catalog tilldelas ingen administratörsroll för metaarkivet som standard. Metaarkivadministratörer har vissa privilegier som arbetsyteadministratörer inte har.

Du kanske vill tilldela en metaarkivadministratör om du behöver:

Detaljerad information om administratörsrollen för metaarkivet och instruktioner för att tilldela den finns i Tilldela en metaarkivadministratör.

Uppgradera tabeller i Hive-metaarkivet till Unity Catalog-tabeller

Om din arbetsyta var i tjänst innan den aktiverades för Unity Catalog har den förmodligen ett Hive-metaarkiv som innehåller data som du vill fortsätta att använda. Databricks rekommenderar att du migrerar tabellerna som hanteras av Hive-metaarkivet till Unity Catalog-metaarkivet.

Se Uppgradera Hive-tabeller och vyer till Unity Catalog och Använd UCX-verktygen för att uppgradera din arbetsyta till Unity Catalog.

(Valfritt) Fortsätt arbeta med hive-metaarkivet

Om din arbetsyta har ett Hive-metaarkiv som innehåller data som du vill fortsätta att använda, och du väljer att inte följa rekommendationen att uppgradera tabellerna som hanteras av Hive-metaarkivet till Unity Catalog-metaarkivet, kan du fortsätta att arbeta med data i Hive-metaarkivet tillsammans med data i Unity Catalog-metaarkivet.

Hive-metaarkivet representeras i Unity Catalog-gränssnitt som en katalog med namnet hive_metastore. Om du vill fortsätta arbeta med data i Hive-metaarkivet utan att behöva uppdatera frågor för att ange hive_metastore katalogen kan du ange arbetsytans standardkatalog till hive_metastore. Se Hantera standardkatalogen.

Beroende på när din arbetsyta har aktiverats för Unity Catalog kan standardkatalogen redan vara hive_metastore.

(Valfritt) Skapa lagring på metaarkivnivå

Även om Databricks rekommenderar att du skapar en separat hanterad lagringsplats för varje katalog i metaarkivet (och du kan göra samma sak för scheman), kan du i stället välja att skapa en hanterad plats på metaarkivnivå och använda den som lagringsplats för flera kataloger och scheman.

Om du vill ha lagring på metaarkivnivå måste du även tilldela en metaarkivadministratör. Se (Valfritt) Tilldela administratörsrollen för metaarkivet.

Lagring på metaarkivnivå krävs endast om följande är sant:

  • Du vill dela notebook-filer med hjälp av Databricks-till-Databricks Delta-delning.
  • Du använder en Produktintegrering av Databricks-partner som förlitar sig på personliga mellanlagringsplatser (inaktuella).

Mer information om hierarkin för hanterade lagringsplatser finns i Data är fysiskt avgränsade i lagring.

Information om hur du lägger till lagring på metaarkivnivå i metaarkiv som inte har något finns i Lägga till hanterad lagring i ett befintligt metaarkiv.

Kommentar

De flesta arbetsytor som var aktiverade för Unity Catalog före den 9 november 2023 har en lagringsrot på metaarkivnivå.

Nästa steg