Ansluta till molnobjektlagring med Unity Catalog
Den här artikeln ger en översikt över de konfigurationer för molnlagringsanslutning som krävs för att arbeta med data med hjälp av Unity Catalog.
Databricks rekommenderar att du använder Unity Catalog för att hantera åtkomst till alla data som lagras i molnobjektlagring. Unity Catalog innehåller en uppsättning verktyg för att konfigurera säkra anslutningar till molnobjektlagring. Dessa anslutningar ger åtkomst till följande åtgärder:
- Mata in rådata i ett sjöhus.
- Skapa och läsa hanterade tabeller i säker molnlagring.
- Registrera eller skapa externa tabeller som innehåller tabelldata.
- Läsa och skriva ostrukturerade data.
Varning
Ge inte slutanvändarna åtkomst på lagringsnivå till hanterade tabeller eller volymer i Unity Catalog. Detta äventyrar datasäkerhet och styrning.
Att ge användare direkt åtkomst på lagringsnivå till lagring på extern plats i Azure Data Lake Storage Gen2 respekterar inte några behörigheter som beviljats eller granskningar som underhålls av Unity Catalog. Direktåtkomst kringgår granskning, ursprung och andra säkerhets- och övervakningsfunktioner i Unity Catalog, inklusive åtkomstkontroll och behörigheter. Du ansvarar för att hantera direkt lagringsåtkomst via Azure Data Lake Storage Gen2 och se till att användarna har rätt behörigheter som beviljas via Fabric.
Undvik alla scenarier som ger direkt skrivåtkomst på lagringsnivå för bucketar som lagrar Databricks-hanterade tabeller. Om du ändrar, tar bort eller utvecklar objekt direkt via lagring som ursprungligen hanterades av Unity Catalog kan data skadas.
Kommentar
Om arbetsytan skapades före den 9 november 2023 kanske den inte är aktiverad för Unity Catalog. En kontoadministratör måste aktivera Unity Catalog för din arbetsyta. Se Aktivera en arbetsyta för Unity Catalog.
Hur ansluter Unity Catalog objektlagring till Azure Databricks?
Azure Databricks stöder både Azure Data Lake Storage Gen2-containrar och Cloudflare R2-bucketar som molnlagringsplatser för data och AI-tillgångar som registrerats i Unity Catalog. R2 är främst avsett för användningsfall där du vill undvika avgifter för utgående data, till exempel Deltadelning mellan moln och regioner. Mer information finns i Använda Cloudflare R2-repliker eller migrera lagring till R2.
För att hantera åtkomsten till den underliggande molnlagringen som innehåller tabeller och volymer använder Unity Catalog följande objekttyper:
En lagringsautentiseringsuppgift representerar en autentiserings- och auktoriseringsmekanism för åtkomst till data som lagras i din molnklientorganisation, med hjälp av en Azure-hanterad identitet eller tjänstens huvudnamn för Azure Data Lake Storage Gen2-containrar eller en R2 API-token för Cloudflare R2-bucketar. Varje lagringsautentiseringsuppgifter omfattas av åtkomstkontrollprinciper för Unity Catalog som styr vilka användare och grupper som kan komma åt autentiseringsuppgifterna. Om en användare inte har åtkomst till en lagringsautentiseringsuppgift i Unity Catalog misslyckas begäran och Unity Catalog försöker inte autentisera till din molnklient för användarens räkning. Behörighet att skapa autentiseringsuppgifter för lagring bör endast beviljas användare som behöver definiera externa platser. Se Skapa en lagringsautentiseringsuppgift för att ansluta till Azure Data Lake Storage Gen2 och Skapa en lagringsautentiseringsuppgift för anslutning till Cloudflare R2.
En extern plats är ett objekt som kombinerar en molnlagringssökväg med en lagringsautentiseringsuppgift som ger åtkomst till molnlagringssökvägen. Varje lagringsplats omfattas av åtkomstkontrollprinciper för Unity Catalog som styr vilka användare och grupper som kan komma åt autentiseringsuppgifterna. Om en användare inte har åtkomst till en lagringsplats i Unity Catalog misslyckas begäran och Unity Catalog försöker inte autentisera till din molnklient för användarens räkning. Behörighet att skapa och använda externa platser bör endast beviljas användare som behöver skapa externa tabeller, externa volymer eller hanterade lagringsplatser. Se Skapa en extern plats för att ansluta molnlagring till Azure Databricks.
Externa platser används både för externa datatillgångar, till exempel externa tabeller och externa volymer, och för hanterade datatillgångar, till exempel hanterade tabeller och hanterade volymer. Mer information om skillnaden finns i Vad är tabeller och vyer? och Vad är Unity Catalog-volymer?.
När en extern plats används för att lagra hanterade tabeller och hanterade volymer kallas den för en hanterad lagringsplats. Hanterade lagringsplatser kan finnas på metaarkiv-, katalog- eller schemanivå. Databricks rekommenderar att du konfigurerar hanterade lagringsplatser på katalognivå. Om du behöver mer detaljerad isolering kan du ange hanterade lagringsplatser på schemanivå. Arbetsytor som är aktiverade för Unity Catalog har automatiskt ingen lagring på metaarkivnivå som standard, men du kan ange en hanterad lagringsplats på metaarkivnivå för att ange standardplatsen när ingen lagring på katalognivå har definierats. Arbetsytor som är aktiverade för Unity Catalog tar manuellt emot en hanterad lagringsplats på metaarkivnivå som standard. Se Ange en hanterad lagringsplats i Bästa praxis för Unity Catalog och Unity Catalog.
Volymer är det skyddsbara objekt som de flesta Azure Databricks-användare bör använda för att interagera direkt med icke-tabelldata i molnobjektlagring. Se Vad är Unity Catalog-volymer?.
Kommentar
Unity Catalog stöder sökvägsbaserad åtkomst till externa tabeller och externa volymer med hjälp av URI:er för molnlagring, men Databricks rekommenderar att användarna läser och skriver alla Unity Catalog-tabeller med hjälp av tabellnamn och åtkomst till data i volymer med hjälp av /Volumes
sökvägar.
Metodtips för molnlagring med Unity Catalog
Azure Databricks kräver att du använder Azure Data Lake Storage Gen2 som Azure Storage-tjänst för data som bearbetas i Azure Databricks med hjälp av Styrning av Unity Catalog. Med Azure Data Lake Storage Gen2 kan du separera lagrings- och beräkningskostnader och dra nytta av den detaljerade åtkomstkontroll som tillhandahålls av Unity Catalog. Om data lagras i OneLake (Microsoft Fabric-datasjön) och bearbetas av Databricks (kringgår Unity Catalog) medför du paketerade lagrings- och beräkningskostnader. Detta kan leda till kostnader som är ungefär 3 gånger högre för läsningar och 1,6 gånger högre för skrivningar jämfört med Azure Data Lake Storage Gen2 för lagring, läsning och skrivning av data. Azure Blob Storage är också inte kompatibelt med Unity Catalog.
Nästa steg
Om du precis har börjat med Unity Catalog som administratör kan du läsa Konfigurera och hantera Unity Catalog.
Om du är en ny användare och arbetsytan redan är aktiverad för Unity Catalog kan du läsa Självstudie: Skapa din första tabell och bevilja behörigheter.