Tworzenie nowoczesnej architektury analitycznej przy użyciu usługi Azure Databricks
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 kluczowe zasady i składniki nowoczesnych 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, 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
Pobierz plik programu Visio z tą architekturą.
Przepływ danych
Usługa Azure Databricks pozyskiwa nieprzetworzone dane przesyłane strumieniowo z usługi Azure Event Hubs przy użyciu tabel delta live.
Usługa Fabric Data Factory ładuje nieprzetworzone dane wsadowe do usługi Data Lake Storage.
W przypadku magazynu danych:
Usługa Data Lake Storage zawiera wszystkie typy danych, w tym dane 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:
- Warstwa z brązu: przechowuje nieprzetworzone dane.
- Warstwa silver: zawiera oczyszczone, przefiltrowane dane.
- Warstwa złota: przechowuje zagregowane dane przydatne do analizy biznesowej.
Platforma analityczna pozyskuje dane z różnych źródeł wsadowych i przesyłanych strumieniowo. Analitycy danych używają tych danych do wykonywania zadań, takich jak:
- 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.
- Użytkownicy mogą zoptymalizować wydajność i koszty przy użyciu opcji obliczeniowych z jednym węzłem i wieloma węzłami.
Modele uczenia maszynowego są dostępne w następujących 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).
Usługi współpracujące z danymi łączą się z pojedynczym bazowym źródłem danych, aby zapewnić spójność. Na przykład zapytania SQL można uruchamiać w usłudze Data Lake przy użyciu 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 uprawnienia na poziomie kolumny.
- W celu zwiększenia wydajności używa aparatu delta obsługiwanego przez aparat delta firmy Photon.
Złote zestawy danych można dublować z katalogu aparatu Unity usługi Azure Databricks w usłudze Fabric. Używanie funkcji dublowania usługi Azure Databricks w sieci szkieletowej w celu łatwej integracji bez konieczności przenoszenia lub replikowania danych.
Usługa Power BI generuje raporty analityczne i historyczne oraz pulpity nawigacyjne z ujednoliconej platformy danych. Ta usługa używa następujących funkcji podczas pracy z usługą Azure Databricks:
- Wbudowany łącznik usługi Azure Databricks umożliwiający wizualizowanie bazowych danych.
- Zoptymalizowano łączność z bazą danych Java i sterowniki open database Connectivity.
- Usługa Direct Lake z dublowaniem usługi Azure Databricks w sieci szkieletowej umożliwia ładowanie semantycznych modeli usługi Power BI na potrzeby zapytań o wyższą wydajność.
Rozwiązanie korzysta z wykazu aparatu Unity i usług platformy Azure do współpracy, wydajności, niezawodności, ładu i zabezpieczeń:
Usługa Azure 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 ułatwia bezpieczne zarządzanie wpisami tajnymi, kluczami i certyfikatami.
Microsoft Entra ID i System for Cross-domain Identity Management (SCIM) aprowizacji zapewniają 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 w celu:
- Utwórz nowych użytkowników i grupy.
- Przypisz każdemu użytkownikowi poziom dostępu.
- Usuń użytkowników i odmów 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
To rozwiązanie używa 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 i łączy je ze strukturą. Może również trenować i wdrażać modele uczenia maszynowego. W tej architekturze usługa Azure Databricks służy jako centralne narzędzie do pozyskiwania, przetwarzania i obsługi danych. Zapewnia ujednolicone środowisko do zarządzania całym cyklem życia danych.
Magazyny SQL usługi Azure Databricks to zasoby obliczeniowe, których można użyć do wykonywania zapytań i eksplorowania danych w usłudze Azure 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 wykonania na danych. Ułatwia również zarządzanie orkiestracją zadań, zarządzaniem klastrem, monitorowaniem, jakością danych i obsługą błędów w usłudze Azure Databricks.
Microsoft Fabric to kompleksowa platforma do analizy i danych dla organizacji, które potrzebują ujednoliconego rozwiązania. Platforma udostępnia usługi, takie jak Inżynieria danych, Fabryka danych, Nauka o danych, Real-Time Intelligence, Data Warehouse i Bazy danych. Ta architektura odzwierciedla tabele wykazu aparatu Unity w sieci szkieletowej i używa usługi Direct Lake w usłudze Power BI w celu uzyskania lepszej wydajności.
Usługa Data Factory w usłudze Microsoft Fabric to nowoczesna platforma integracji danych, która umożliwia pozyskiwanie, przygotowywanie i przekształcanie danych z bogatego zestawu źródeł danych w usłudze Fabric. Ta architektura używa wbudowanych łączników do kilku źródeł danych w celu szybkiego pozyskiwania danych do usługi Data Lake Storage lub OneLake. Usługa Azure Databricks później pobiera i dalej przekształca dane wsadowe.
event hubs to w pełni zarządzana platforma przesyłania strumieniowego danych big data. Jako platforma jako usługa zapewnia możliwości pozyskiwania zdarzeń. Ta architektura używa usługi Event Hubs do przesyłania strumieniowego danych. Usługa Azure Databricks może łączyć się z danymi i przetwarzać je przy użyciu usługi Spark Streaming lub delta Live Tables.
Usługa Data Lake Storage to skalowalne i bezpieczne magazyny danych do analizy o wysokiej wydajności. Obsługuje wiele petabajtów danych i obsługuje setki gigabitów przepływności. Usługa Data Lake Storage może przechowywać dane ustrukturyzowane, częściowo ustrukturyzowane i nieustrukturyzowane. Ta architektura używa usługi Data Lake Storage 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. Korzystając z tych modeli, można prognozować zachowanie, wyniki i trendy. W tej architekturze usługa Machine Learning używa danych przekształcanych przez usługę Azure 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 hostuje modele 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 rozwiązań magazynu w chmurze, takich jak Data Lake Storage. Usługa Delta Lake obsługuje przechowywanie wersji danych, wycofywanie i transakcje na potrzeby aktualizowania, usuwania i scalania danych. W tej architekturze usługa Delta Lake działa jako podstawowy format pliku do zapisywania i odczytywania danych z usługi Data Lake Storage.
MLflow to platforma typu open source do zarządzania cyklem życia uczenia maszynowego. Jego składniki monitorują modele uczenia maszynowego podczas trenowania i działania. W tej architekturze, podobnie jak w przypadku uczenia maszynowego, możesz zarządzać cyklem życia uczenia maszynowego za pomocą biblioteki MLflow w usłudze Azure Databricks. Trenowanie i wnioskowanie modeli przy użyciu danych wykazu aparatu Unity przekształconych w usłudze Azure Databricks.
Składniki raportowania i zarządzania
Usługa Azure Databricks Unity Catalog 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 Azure Databricks w celu 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. Ta architektura używa usługi Power BI do tworzenia pulpitów nawigacyjnych i raportów, które zapewniają wgląd w dane przetwarzane przez usługę Azure Databricks i sieć szkieletowa.
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. Jej funkcje obejmują automatyczne odnajdywanie danych, klasyfikację poufnych danych i pochodzenie danych. Ta architektura używa usługi Microsoft Purview do skanowania i śledzenia danych pozyskanych w wykazie aparatu Unity, sieci szkieletowej, usłudze Power BI i usłudze Data Lake Storage.
Azure DevOps to platforma orkiestracji DevOps . Ten model SaaS udostępnia narzędzia i środowiska do tworzenia, wdrażania i współpracy nad aplikacjami. Ta architektura używa usługi Azure DevOps do automatyzowania wdrażania infrastruktury platformy Azure. Możesz również użyć usługi GitHub do automatyzacji i kontroli wersji kodu usługi Azure Databricks w celu lepszej współpracy, śledzenia zmian i integracji z potokami ciągłej integracji/ciągłego wdrażania.
Usługa 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ń. Ta architektura używa usługi Key Vault do przechowywania kluczy sygnatur dostępu współdzielonego z usługi Data Lake Storage. Te klucze są następnie używane w usłudze Azure 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. Ta architektura używa identyfikatora Entra firmy Microsoft do uwierzytelniania i autoryzacji użytkowników i usług na platformie Azure.
Program SCIM umożliwia skonfigurowanie aprowizacji na koncie usługi Azure Databricks przy użyciu identyfikatora Microsoft Entra ID. Ta architektura używa rozwiązania SCIM do zarządzania użytkownikami, którzy uzyskują dostęp do obszarów roboczych usługi Azure 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. Ta architektura używa usługi Azure Monitor do monitorowania kondycji zasobów obliczeniowych w usługach Azure Databricks i Machine Learning oraz innych składnikach, które wysyłają dzienniki do usługi Azure Monitor.
Usługa Cost Management ułatwia zarządzanie wydatkami na chmurę. Korzystając z budżetów i zaleceń, ta usługa organizuje wydatki i pokazuje, jak zmniejszyć koszty. Ta architektura używa usługi Cost Management do monitorowania i kontrolowania kosztów całego rozwiązania.
Szczegóły scenariusza
Nowoczesne architektury danych:
- 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, które jest następujące:
- 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 handel elektroniczny.
- Bankowość i finanse.
- Medycyna i opieka zdrowotna.
Następne kroki
- Tworzenie kompleksowego potoku danych w usłudze Azure Databricks
- Uruchamianie pierwszego potoku delta live tables
Powiązane zasoby
Aby dowiedzieć się więcej o powiązanych rozwiązaniach, zobacz następujące przewodniki i architektury.
Powiązane przewodniki dotyczące architektury
- Porównanie produktów uczenia maszynowego firmy Microsoft
- Wybieranie technologii przetwarzania języka naturalnego
- Wybieranie technologii przetwarzania strumieniowego