Dela via


Använda Azure Databricks i analys i molnskala i Azure

Azure Databricks är en dataanalysplattform som är optimerad för Microsoft Azure Cloud Services-plattformen. Azure Databricks erbjuder två miljöer för att utveckla dataintensiva program:

  • Azure Databricks SQL som gör att du kan köra snabba ad hoc SQL-frågor på din datasjö.

  • Azure Databricks Datavetenskap & Engineering (kallas ibland bara "Arbetsyta") är en analysplattform baserad på Apache Spark. Den är integrerad med Azure för att tillhandahålla enkel installation, effektiva arbetsflöden och en interaktiv arbetsyta som möjliggör samarbete mellan datatekniker, dataforskare och maskininlärningstekniker.

För analys i molnskala fokuserar vi på Azure Databricks Datavetenskap & Engineering.

Översikt

För varje datalandningszon som du distribuerar kan du distribuera två delade arbetsytor. En för dataagnostisk inmatning och en annan för analys.

  • Den tekniska arbetsytan i Azure Databricks för inmatning och bearbetning ansluter till Azure Data Lake via Azure-tjänstens huvudnamn. Den anropas av dataagnostisk inmatning.
  • Azure Databricks-analysarbetsytan kan etableras för alla dataforskare och datadriftsteam. Den här arbetsytan skulle ansluta till Azure Data Lake med hjälp av Microsoft Entra-direktautentisering. Du delar Azure Databricks-analys- och datavetenskapsarbetsytan i datalandningszonen med alla användare som har åtkomst till arbetsytan.

Om du har en automatiserad dataagnostisk inmatningsmotor använder azure Databricks-arbetsytan både en Azure Key Vault-instans som skapats i Resursgruppen för Azure-metadatatjänsten för att köra pipelines för datainmatning från rådata till berikad.

Azure Databricks-analysarbetsytan bör ha klusterprinciper som kräver att du skapar kluster med hög samtidighet. Med den här typen av kluster kan datasjö utforskas med hjälp av Microsoft Entra-autentiseringsuppgifter. Mer information finns i Åtkomstkontroll och datasjökonfigurationer i Azure Data Lake Storage.

Konfigurera Azure Databricks

Azure Databricks-distributionen är delvis parameterbaserad via en Azure Resource Manager-mall och YAML-skript, men det krävs också manuella åtgärder för att konfigurera alla arbetsytor.

Alla Azure Databricks-arbetsytor bör använda Premium-planen, som innehåller följande nödvändiga funktioner:

  • Optimerad automatisk skalning av databehandling
  • Direktautentisering med Microsoft Entra-autentiseringsuppgifter
  • Villkorsstyrd autentisering
  • Rollbaserad åtkomstkontroll för anteckningsböcker, kluster, jobb och tabeller
  • Granskningsloggar

För att anpassa till analys i molnskala rekommenderar vi att alla arbetsytor har följande standarddistributionsalternativ konfigurerade:

  • Azure Databricks-arbetsytorna ansluter till en extern Apache Hive-metaarkivinstans i datalandningszonen.
  • Konfigurera varje arbetsyta för att skicka Databricks-diagnostikloggning till Azure Log Analytics i databricks-monitoring-rg
  • Implementera klusterprinciper för att begränsa möjligheten att skapa kluster baserat på en uppsättning regler. Mer information finns i Hantera klusterprinciper.
    • Definiera principer för flera kluster. Som en del av registreringsprocessen tilldelar du varje målgrupp behörighet att använda av datalandningszonens driftteam. Som standard ges behörighet att skapa kluster endast till åtgärdsteamet. Olika team eller grupper får behörighet att använda klusterprinciper.
    • Använd klusterprinciper i kombination med Azure Databricks-pooler för att minska tiden för klusterstart och automatisk skalning genom att underhålla en uppsättning inaktiva instanser som är redo att användas. Mer information finns i Pooler.
  • Hämta alla azure Databricks-drifthemligheter, till exempel SPN-autentiseringsuppgifter och anslutningssträng, från en Azure Key Vault-instans.
  • Konfigurera ett separat företagsprogram per arbetsyta för användning med SCIM (system för identitetshantering mellan domäner). Länka till Azure Databricks-arbetsytan för att styra åtkomst och behörigheter till varje arbetsyta. Mer information finns i Etablera användare och grupper med SCIM och konfigurera SCIM-etablering för Microsoft Entra-ID.

Varning

Om du inte konfigurerar Azure Databricks-arbetsytan så att den använder AZURE Databricks SCIM-gränssnittet påverkas hur du tillhandahåller säkerhetskontroller. Den flyttas från en automatiserad till en manuell process och bryter alla CI/CD-pipelines för distribution.

Följande alternativ för åtkomstkontroll anges för alla Databricks-arbetsytor:

  • Synlighetskontroll för arbetsyta: aktiverad (standard: inaktiverad)
  • Kontroll av klustersynlighet: aktiverad (standard: inaktiverad)
  • Kontroll av jobbsynlighet: aktiverad (standard: inaktiverad)

Du kanske vill aktivera följande alternativ för Azure Databricks-analysarbetsytan:

  • Exportera notebook-fil: inaktiverad (standard: aktiverad)
  • Funktioner i Urklipp för notebook-tabell: inaktiverad (standard: aktiverad)
  • Tabellåtkomstkontroll: aktiverad (standard: inaktiverad)
  • Villkorsstyrd åtkomst för Microsoft Entra

Distribuera Azure Databricks

Om du distribuerar Azure Databricks-arbetsytor som en del av en ny distribution av datalandningszoner. Följande bild visar ett exempelarbetsflöde för att distribuera en Azure Databricks-miljö i molnskala.

Diagram of an Azure Databricks deployment into a data landing zone.

  1. Etableringsprocessen ser först till att det finns en Apache Hive-metaarkivinstans i datalandningszonen. Om det inte går att hitta Apache Hive-metaarkivet avslutas det och genererar ett fel.
  2. När apache Hive-metaarkivet har hittats skapas en arbetsyta.
  3. Processen söker efter en Log Analytics-arbetsyta i datalandningszonen. Om den inte hittar Log Analytics-arbetsytan avslutas den och skapar ett fel.
  4. För varje arbetsyta skapas ett Microsoft Entra-program och SCIM konfigureras.

För Azure Databricks-inmatningsarbetsytan:

  1. Processen konfigurerar arbetsytan med tjänstens huvudnamnsåtkomst.
  2. Datateknikprinciper som har definierats av dataplattformens driftteam distribueras.
  3. Om datalandningszonens driftteam har begärt Databricks-pooler eller -kluster kan de integreras i distributionsprocessen.
  4. Det möjliggör arbetsytealternativ som är specifika för den tekniska arbetsytan i Azure Databricks.

För Azure Databricks-analysarbetsytan:

  1. Processen distribuerar dataanalysprinciper som har definierats av dataplattformens driftsteam.
  2. Om datalandningszonens driftteam har begärt Databricks-pooler eller -kluster kan de integreras i distributionsprocessen.
  3. Det möjliggör arbetsytealternativ som är specifika för den tekniska arbetsytan i Azure Databricks.

Externt Hive-metaarkiv

I en azure Databricks-arbetsytedistribution:

  • Ett nytt globalt init-skript konfigurerar Apache Hive-metaarkivinställningar för alla kluster. Det här skriptet hanteras av det nya api:et för globala init-skript .

Det nya API:et för globala init-skript finns i offentlig förhandsversion. Funktioner för offentlig förhandsversion i Azure Databricks är redo för produktionsmiljöer och stöds av supportteamet. Mer information finns i Förhandsversioner av Azure Databricks.

  • Den här lösningen använder Azure Database for MySQL för att lagra Apache Hive-metaarkivinstansen. Den här databasen valdes för kostnadseffektivitet och hög kompatibilitet med Apache Hive.

Nästa steg

Analys i molnskala tar hänsyn till följande riktlinjer för integrering av Azure Databricks: