Nowoczesna architektura analizy przy użyciu usługi Azure Databricks

Azure Databricks
Microsoft Fabric
Power BI
Azure Data Lake Storage

Pomysły dotyczące rozwiązań

W tym artykule opisano pomysł rozwiązania. Architekt chmury może użyć tych wskazówek, aby ułatwić wizualizowanie głównych składników dla typowej implementacji tej architektury. Skorzystaj z tego artykułu jako punktu wyjścia, aby zaprojektować dobrze zaprojektowane rozwiązanie zgodne z konkretnymi wymaganiami obciążenia.

To rozwiązanie przedstawia nowoczesną architekturę danych. Usługa Azure Databricks stanowi rdzeń rozwiązania. Ta platforma bezproblemowo współpracuje z innymi usługami, takimi jak Azure Data Lake Storage Gen2, Microsoft Fabric i Power BI.

Apache i Apache® Spark™ są zastrzeżonymi znakami towarowymi lub znakami towarowymi platformy Apache Software Foundation w Stany Zjednoczone i/lub innych krajach. Użycie tych znaków nie jest dorozumiane przez fundację Apache Software Foundation.

Architektura

Diagram architektury przedstawiający sposób, w jaki nowoczesna architektura danych zbiera, przetwarza, analizuje i wizualizuje dane.

Pobierz plik programu Visio z tą architekturą.

Przepływ danych

  1. Usługa Azure Databricks pozyskuje nieprzetworzone dane przesyłane strumieniowo z usługi Azure Event Hubs przy użyciu tabel delta live.

  2. Usługa Fabric Data Factory ładuje nieprzetworzone dane wsadowe do usługi Data Lake Storage Gen2.

  3. W przypadku magazynu danych:

    • Usługa Data Lake Storage Gen2 zawiera dane wszystkich typów, takie jak ustrukturyzowane, nieustrukturyzowane i częściowo ustrukturyzowane. Przechowuje również dane wsadowe i przesyłane strumieniowo.

    • Usługa Delta Lake tworzy wyselekcjonowane warstwy magazynu data lake. Dane uściślione są przechowywane w formacie open source.

    • Usługa Azure Databricks dobrze współpracuje z architekturą medalionu, która organizuje dane w warstwy:

      • Brąz: przechowuje nieprzetworzone dane.
      • Silver: zawiera oczyszczone, przefiltrowane dane.
      • Złoto: przechowuje zagregowane dane przydatne do analizy biznesowej.
  4. Platforma analityczna pozyskuje dane z różnych źródeł wsadowych i przesyłanych strumieniowo. Analitycy danych używają tych danych do wykonywania następujących zadań:

    • Przygotowywanie danych.
    • Eksploracja danych.
    • Przygotowanie modelu.
    • Trenowanie modelu.

    Rozwiązanie MLflow zarządza parametrami, metrykami i śledzeniem modeli w przebiegach kodu nauki o danych. Możliwości kodowania są elastyczne:

    • Kod może znajdować się w języku SQL, Python, R i Scala.
    • Kod może używać popularnych bibliotek i struktur typu open source, takich jak Koalas, Pandas i scikit-learn, które są wstępnie zainstalowane i zoptymalizowane.
    • Praktycy mogą zoptymalizować wydajność i koszty przy użyciu opcji obliczeniowych z jednym węzłem i wieloma węzłami.
  5. Modele uczenia maszynowego są dostępne w kilku formatach:

    • Usługa Azure Databricks przechowuje informacje o modelach w rejestrze modeli MLflow. Rejestr udostępnia modele za pośrednictwem interfejsów API wsadowych, przesyłanych strumieniowo i REST.
    • Rozwiązanie może również wdrażać modele w usługach sieci Web Azure Machine Learning lub w usłudze Azure Kubernetes Service (AKS).
  6. Usługi współpracujące z danymi łączą się z jednym bazowym źródłem danych w celu zapewnienia spójności. Na przykład użytkownicy mogą uruchamiać zapytania SQL w usłudze Data Lake za pomocą usługi Azure Databricks SQL Warehouses. Ta usługa:

    • Udostępnia edytor zapytań i katalog, historię zapytań, podstawowe pulpity nawigacyjne i alerty.
    • Używa zintegrowanych zabezpieczeń, które obejmują uprawnienia na poziomie wiersza i na poziomie kolumny.
    • Do przyspieszenia wydajności używa aparatu delta obsługiwanego przez aparat delta firmy Photon.
  7. Użytkownicy mogą dublować złote zestawy danych z wykazu aparatu Unity usługi Databricks do sieci szkieletowej. dublowanie usługi Databricks w sieci szkieletowej umożliwia użytkownikom łatwe integrowanie się bez przenoszenia danych lub replikacji danych.

  8. Usługa Power BI generuje raporty analityczne i historyczne oraz pulpity nawigacyjne z ujednoliconej platformy danych. Ta usługa używa tych funkcji podczas pracy z usługą Azure Databricks:

    • Wbudowany łącznik usługi Azure Databricks umożliwiający wizualizowanie bazowych danych.
    • Zoptymalizowane sterowniki łączności bazy danych Java (JDBC) i Open Database Connectivity (ODBC).
    • Dzięki funkcji dublowania usługi Databricks w sieci szkieletowej można użyć usługi Direct Lake w celu załadowania modeli semantycznych usługi PBI na potrzeby zapytań o wyższą wydajność.
  9. Rozwiązanie korzysta z wykazu aparatu Unity i usług platformy Azure do współpracy, wydajności, niezawodności, ładu i zabezpieczeń:

    • Usługa Databricks Unity Catalog zapewnia scentralizowaną kontrolę dostępu, inspekcję, pochodzenie i funkcje odnajdywania danych w obszarach roboczych usługi Azure Databricks.

    • Usługa Microsoft Purview udostępnia usługi odnajdywania danych, klasyfikację poufnych danych i szczegółowe informacje dotyczące ładu w obrębie infrastruktury danych.

    • Usługa Azure DevOps oferuje ciągłą integrację i ciągłe wdrażanie (CI/CD) oraz inne zintegrowane funkcje kontroli wersji.

    • Usługa Azure Key Vault bezpiecznie zarządza wpisami tajnymi, kluczami i certyfikatami.

    • Aprowizacja aplikacji Microsoft Entra ID i SCIM zapewnia logowanie jednokrotne dla użytkowników i grup usługi Azure Databricks. Usługa Azure Databricks obsługuje automatyczną aprowizację użytkowników przy użyciu identyfikatora Entra firmy Microsoft dla następujących zadań:

      • Tworzenie nowych użytkowników i grup.
      • Przypisywanie każdemu użytkownikowi poziomu dostępu.
      • Usuwanie użytkowników i odmawianie im dostępu.
    • Usługa Azure Monitor zbiera i analizuje dane telemetryczne zasobów platformy Azure. Dzięki proaktywnej identyfikacji problemów ta usługa maksymalizuje wydajność i niezawodność.

    • Usługa Microsoft Cost Management zapewnia usługi ładu finansowego dla obciążeń platformy Azure.

Składniki

Rozwiązanie korzysta z następujących składników.

Podstawowe składniki

  • azure Databricks to platforma do analizy danych, która przetwarza duże strumienie danych przy użyciu klastrów Spark. Czyści i przekształca dane nieustrukturyzowane, łączy je z danymi ustrukturyzowanymi oraz mogą trenować i wdrażać modele uczenia maszynowego. W tej architekturze usługa Databricks służy jako centralne narzędzie do pozyskiwania, przetwarzania i obsługi danych, zapewniając ujednolicone środowisko do zarządzania całym cyklem życia danych.

  • usługi Azure Databricks SQL Warehouse to zasoby obliczeniowe, które umożliwiają wykonywanie zapytań i eksplorowanie danych w usłudze Databricks. W tej architekturze można używać punktów końcowych SQL do nawiązywania bezpośredniego połączenia z danymi z usługi Power BI.

  • tabele delta live usługi Azure Databricks to deklaratywna struktura do tworzenia niezawodnych, konserwowalnych i testowalnych potoków przetwarzania danych. W tej architekturze tabele delta live pomagają definiować przekształcenia do wykonywania na danych i zarządzać orkiestracją zadań, zarządzaniem klastrem, monitorowaniem, jakością danych i obsługą błędów w usłudze Databricks.

  • microsoft fabric to kompleksowa platforma do analizy i danych przeznaczona dla przedsiębiorstw wymagających ujednoliconego rozwiązania. Platforma oferuje usługi, takie jak Inżynieria danych, Data Factory, Data Science, Real-Time Analytics, Data Warehouse i Bazy danych. W tej architekturze dublujemy tabele wykazu aparatu Unity w sieci szkieletowej i używamy usługi Direct Lake w usłudze Power BI w celu uzyskania lepszej wydajności.

  • Data Factory w usłudze Microsoft Fabric umożliwia nowoczesne środowisko integracji danych w celu pozyskiwania, przygotowywania i przekształcania danych z bogatego zestawu źródeł danych w usłudze Fabric. W tej architekturze wykorzystujemy wbudowane łączniki do kilku źródeł danych w celu szybkiego pozyskiwania danych do usług ADLS lub OneLake, gdzie usługa Databricks będzie później pobierać i przekształcać dane wsadowe.

  • event hubs to w pełni zarządzana platforma przesyłania strumieniowego danych big data. Jako platforma jako usługa (PaaS) zapewnia możliwości pozyskiwania zdarzeń. W tej architekturze usługa Event Hubs jest używana do przesyłania strumieniowego danych, z którymi usługa Databricks może łączyć się i przetwarzać przy użyciu usługi Spark Streaming lub Delta Live Tables.

  • Data Lake Storage Gen2 to skalowalne i bezpieczne magazyny danych typu data lake na potrzeby analizy o wysokiej wydajności. Obsługuje wiele petabajtów danych i obsługuje setki gigabitów przepływności. Usługa ADLS może przechowywać dane ustrukturyzowane, częściowo ustrukturyzowane i nieustrukturyzowane. W tej architekturze używamy usługi ADLS do przechowywania zarówno danych wsadowych, jak i przesyłanych strumieniowo.

  • Machine Learning to środowisko oparte na chmurze, które ułatwia tworzenie, wdrażanie i zarządzanie rozwiązaniami analizy predykcyjnej. Dzięki tym modelom można prognozować zachowanie, wyniki i trendy. W tej architekturze usługa AML może korzystać z danych przekształconych przez usługę Databricks na potrzeby trenowania i wnioskowania modeli.

  • Usługa AKS jest usługą Kubernetes o wysokiej dostępności, bezpiecznym i w pełni zarządzanym. Usługa AKS ułatwia wdrażanie konteneryzowanych aplikacji i zarządzanie nimi. W tej architekturze usługa AKS jest używana do hostowania modeli uczenia maszynowego w środowisku konteneryzowanym na potrzeby skalowalnego wnioskowania.

  • Usługa Delta Lake to warstwa magazynu, która używa otwartego formatu pliku. Ta warstwa działa na podstawie magazynu w chmurze, takiego jak Data Lake Storage Gen2. Usługa Delta Lake obsługuje przechowywanie wersji danych, wycofywanie i transakcje na potrzeby aktualizowania, usuwania i scalania danych. W tej architekturze funkcja Delta działa jako podstawowy format pliku do zapisywania i odczytywania danych z usługi ADLS.

  • MLflow to platforma typu open source do zarządzania cyklem życia uczenia maszynowego. Jego składniki monitorują modele uczenia maszynowego podczas trenowania i uruchamiania. W tej architekturze, podobnie jak w przypadku języka AML, możesz użyć biblioteki MLflow w usłudze Databricks do zarządzania cyklem życia uczenia maszynowego, w tym trenowania i wnioskowania przy użyciu właśnie przekształconych danych usługi Unity Catalog w usłudze Databricks.

Składniki raportowania i zarządzania

  • wykaz aparatu Unity usługi Databricks zapewnia scentralizowaną kontrolę dostępu, inspekcję, pochodzenie i funkcje odnajdywania danych w obszarach roboczych usługi Azure Databricks. W tej architekturze katalog aparatu Unity działa jako podstawowe narzędzie w usłudze Databricks do zarządzania i zabezpieczania dostępu do danych.

  • Power BI to kolekcja usług i aplikacji oprogramowania. Te usługi tworzą i udostępniają raporty łączące się i wizualizowane niepowiązane źródła danych. W połączeniu z usługą Azure Databricks usługa Power BI może zapewnić ustalenie głównej przyczyny i analizę danych pierwotnych. W tej architekturze usługa Power BI służy do tworzenia pulpitów nawigacyjnych i raportów, które zapewniają wgląd w dane przetwarzane przez usługę Databricks i Fabric.

  • Usługa Microsoft Purview zarządza danymi lokalnymi, wielochmurowymi i oprogramowaniem jako usługą (SaaS). Ta usługa zapewniania ładu obsługuje mapy poziome danych. Funkcje obejmują automatyczne odnajdywanie danych, klasyfikację poufnych danych i pochodzenie danych. W tej architekturze usługa Purview służy do skanowania i śledzenia pozyskanych danych w katalogu aparatu Unity, sieci szkieletowej, usłudze Power BI i usłudze ADLS.

  • Azure DevOps to platforma orkiestracji DevOps . Ten model SaaS udostępnia narzędzia i środowiska do tworzenia, wdrażania i współpracy nad aplikacjami. W tej architekturze usługa Azure DevOps służy do automatyzowania wdrażania infrastruktury platformy Azure. Ponadto możesz wykorzystać usługę GitHub do automatyzacji i kontroli wersji kodu usługi Databricks, aby lepiej współpracować, śledzić zmiany i integrować się z potokami ciągłej integracji/ciągłego wdrażania.

  • Usługa Azure Key Vault przechowuje i kontroluje dostęp do wpisów tajnych, takich jak tokeny, hasła i klucze interfejsu API. Usługa Key Vault tworzy również klucze szyfrowania i kontroluje je oraz zarządza certyfikatami zabezpieczeń. W tym architecure usługa AKV służy do przechowywania kluczy SAS z usługi ADLS. Te klucze są następnie używane w usłudze Databricks i innych usługach do uwierzytelniania.

  • Microsoft Entra ID oferuje oparte na chmurze usługi zarządzania tożsamościami i dostępem. Te funkcje umożliwiają użytkownikom logowanie się i uzyskiwanie dostępu do zasobów. W tym architecure identyfikator Entra służy do uwierzytelniania i autoryzowania użytkowników i usług na platformie Azure.

  • SCIM umożliwia skonfigurowanie aprowizacji na koncie usługi Azure Databricks przy użyciu identyfikatora Microsoft Entra. W tej architekturze jest ona używana do zarządzania użytkownikami, którzy uzyskują dostęp do obszarów roboczych usługi Databricks.

  • Usługa Azure Monitor zbiera i analizuje dane w środowiskach i zasobach platformy Azure. Te dane obejmują dane telemetryczne aplikacji, takie jak metryki wydajności i dzienniki aktywności. W tej architekturze usługa Azure Monitor służy do monitorowania kondycji zasobów obliczeniowych w usłudze Databricks i Usłudze Azure Machine Learning, a także innych składników, które wysyłają dzienniki do usługi Azure Monitor.

  • Usługa Microsoft Cost Management zarządza wydatkami na chmurę. Korzystając z budżetów i zaleceń, ta usługa organizuje wydatki i pokazuje, jak zmniejszyć koszty. W tej architekturze usługa Microsoft Cost Management służy do monitorowania i kontrolowania kosztów całego rozwiązania.

Szczegóły scenariusza

Nowoczesne architektury danych spełniają następujące kryteria:

  • Ujednolicenie obciążeń danych, analiz i sztucznej inteligencji.
  • Wydajnie i niezawodnie uruchamiaj w dowolnej skali.
  • Udostępnianie szczegółowych informacji za pośrednictwem pulpitów nawigacyjnych analizy, raportów operacyjnych lub zaawansowanych analiz.

To rozwiązanie przedstawia nowoczesną architekturę danych, która osiąga te cele. Usługa Azure Databricks stanowi rdzeń rozwiązania. Ta platforma bezproblemowo współpracuje z innymi usługami. Razem te usługi zapewniają rozwiązanie z następującymi cechami:

  • Proste: Ujednolicona analiza, nauka o danych i uczenie maszynowe upraszczają architekturę danych.
  • Otwarte: rozwiązanie obsługuje kod open source, otwarte standardy i otwarte platformy. Współpracuje również z popularnymi zintegrowanymi środowiskami projektowymi (IDE), bibliotekami i językami programowania. Dzięki natywnym łącznikom i interfejsom API rozwiązanie współpracuje również z szeroką gamą innych usług.
  • Współpraca: inżynierowie danych, analitycy danych i analitycy współpracują z tym rozwiązaniem. Mogą używać notesów współpracy, środowisk IDE, pulpitów nawigacyjnych i innych narzędzi do uzyskiwania dostępu do typowych danych bazowych i analizowania ich.

Potencjalne przypadki użycia

System, który Swiss Re Group zbudował dla działu Property & Casualty Reasekursji zainspirował to rozwiązanie. Oprócz branży ubezpieczeniowej każdy obszar, który współpracuje z danymi big data lub uczeniem maszynowym, może również skorzystać z tego rozwiązania. Oto kilka przykładów:

  • Sektor energetyczny
  • Handel detaliczny i elektroniczny
  • Bankowość i finanse
  • Medycyna i opieka zdrowotna

Następne kroki

Aby dowiedzieć się więcej o powiązanych rozwiązaniach, zobacz następujące informacje: