Anteckning
Å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 innehåller en översikt över funktioner och rekommendationer för att göra data hanterade och styrs av Azure Databricks tillgängliga för andra system.
Dessa mönster fokuserar på scenarier där din organisation behöver integrera betrodda verktyg eller system med Azure Databricks-data. Om du vill ha vägledning om hur du delar data utanför organisationen kan du läsa Dela data och AI-tillgångar på ett säkert sätt med användare i andra organisationer.
Vilken extern åtkomst stöder Azure Databricks?
Azure Databricks rekommenderar att du använder Unity Catalog för att styra alla dina datatillgångar. Unity Catalog tillhandahåller integreringar till Delta Lake-klienter med hjälp av Unity REST API och Apache Iceberg-klienter med hjälp av Iceberg REST-katalogen. En fullständig lista över integreringar som stöds finns i Unity Catalog-integreringar.
Följande tabell innehåller en översikt över supportformat och åtkomstmönster för Unity Catalog-objekt.
| Unity Catalog-objekt | Format som stöds | Åtkomstmönster |
|---|---|---|
| Hanterade tabeller | Delta Lake, Isberg | Unity REST API, Iceberg REST-katalog, Deltadelning |
| Externa tabeller | Delta Lake | Unity REST API, Iceberg REST-katalog, Deltadelning, moln-URI:er |
| Externa tabeller | CSV, JSON, Avro, Parquet, ORC, text | Unity REST API, moln-URIer |
| Externa volymer | Alla datatyper | Moln-URI:er |
| Externa tabeller* | Delta Lake, Isberg | Unity REST API, Iceberg REST-katalog, Deltadelning |
| Främmande tabeller* | CSV, JSON, Avro, Parquet, ORC, text | Unity REST API, moln-URIer |
* Endast externa tabeller som federeras med hjälp av katalogfederation stöds. För att garantera färska läsningar från externa motorer på utländska tabeller kan kunderna regelbundet uppdatera metadata med Lakeflow-jobb.
Anmärkning
Beskrivningen av Iceberg-stöd täcker tabeller som skrivs med Azure Databricks och Delta Lake, men som har Iceberg-läsning (UniForm) aktiverad.
Mer information om dessa Unity Catalog-objekt finns i följande:
- Unity Catalog-hanterade tabeller i Azure Databricks för Delta Lake och Apache Iceberg
- Arbeta med externa tabeller
- Vad är Unity Catalog-volymer?
Försörjning av autentiseringsuppgifter för Unity Catalog
Med tilldelning av autentiseringsbevis i Unity Catalog kan användare konfigurera externa klienter att ärva behörigheter för data som styrs av Azure Databricks. Både Iceberg- och Delta-klienter kan hantera autentiseringsdistribution. Se distribution av autentiseringsuppgifter för Unity Catalog för extern systemåtkomst.
Läsa tabeller med Delta-klienter
Använd Unity REST API för att läsa hanterade och externa Unity Catalog-tabeller som backas upp av Delta Lake från deltaklienter som stöds. Se Läsa Databricks-tabeller från Delta-klienter.
Läsa tabeller med Iceberg-klienter
Azure Databricks ger Iceberg-klienter skrivskyddat stöd för tabeller som är registrerade i Unity Catalog. Klienter som stöds är Apache Spark, Apache Flink, Trino och Snowflake. Se Åtkomst till Azure Databricks-tabeller från Apache Iceberg-klienter.
Dela skrivskyddade tabeller mellan domäner
Du kan använda Deltadelning för att bevilja skrivskyddad åtkomst till hanterade eller externa Delta-tabeller över domäner och system som stöds. Programvarusystemen som stöder läsningar utan kopiering av Delta Sharing-tabeller inkluderar SAP, Amperity och Oracle. Se Dela data och AI-tillgångar på ett säkert sätt med användare i andra organisationer.
Anmärkning
Du kan också använda Deltadelning för att bevilja skrivskyddad åtkomst till kunder eller partner. Deltadelning stödjer även data som delas via Databricks Marketplace.
Skapa, läsa och skriva externa Delta-tabeller
Viktigt!
Att skapa externa Unity Catalog-tabeller från externa Delta Lake-klienter finns i offentlig förhandsversion.
Du kan skapa, läsa och skriva externa Unity Catalog-tabeller som backas upp av Delta Lake från externa Delta Lake-klienter med hjälp av URI:er och autentiseringsuppgifter för molnobjektlagring. Information om hur du skapar tabeller finns i Skapa externa Delta-tabeller från externa klienter.
Unity Catalog styr inte läsningar och skrivningar som utförs direkt mot molnobjektlagring från externa system, så du måste konfigurera ytterligare principer och autentiseringsuppgifter i ditt molnkonto för att säkerställa att datastyrningsprinciper respekteras utanför Azure Databricks.
Anmärkning
Azure Databricks-dokumentationen innehåller en lista över begränsningar och kompatibilitetsöverväganden baserat på Databricks Runtime-versioner och plattformsfunktioner. Du måste bekräfta vilka läsar- och skrivprotokoll och tabellfunktioner som klienten stöder. Se delta.io.
Få åtkomst till icke-Delta Lake-tabelldata med externa tabeller
Externa tabeller i Unity Catalog stöder många andra format än Delta Lake, inklusive Parquet, ORC, CSV och JSON. Externa tabeller lagrar alla datafiler i kataloger på en lagringsplats för molnobjekt som anges av en moln-URI som tillhandahålls när tabellen skapas. Andra system har åtkomst till dessa datafiler direkt från molnobjektlagring.
Unity Catalog styr inte läsningar och skrivningar som utförs direkt mot molnobjektlagring från externa system, så du måste konfigurera ytterligare principer och autentiseringsuppgifter i ditt molnkonto för att säkerställa att datastyrningsprinciper respekteras utanför Azure Databricks.
Läsning och skrivning till externa tabeller från flera system kan leda till konsekvensproblem och skadade data eftersom inga transaktionsgarantier ges för andra format än Delta Lake.
Unity Catalog kanske inte hämtar nya partitioner som skrivits till externa tabeller som backas upp av andra format än Delta Lake. Databricks rekommenderar att du kör MSCK REPAIR TABLE table_name regelbundet för att säkerställa att Unity Catalog har registrerat alla datafiler som skrivits av externa system.
Åtkomst till icke-tabelldata med externa volymer
Databricks rekommenderar att du använder externa volymer för att lagra icke-tabellbaserade datafiler som läs- eller skrivs av externa system utöver Azure Databricks. Se Vad är Unity Catalog-volymer?.
Unity Catalog styr inte läsningar och skrivningar som utförs direkt mot molnobjektlagring från externa system, så du måste konfigurera ytterligare principer och autentiseringsuppgifter i ditt molnkonto för att säkerställa att datastyrningsprinciper respekteras utanför Azure Databricks.
Volymer tillhandahåller API:er, SDK:er och andra verktyg för att hämta filer från och placera filer i volymer. Se Arbeta med filer i Unity Catalog-volymer.
Anmärkning
Med Delta Sharing-funktionen kan du dela volymer med andra Azure Databricks-konton, men den integreras inte med externa system.