Potoki pozyskiwania, etL i przetwarzania strumieniowego za pomocą usług Azure Databricks i Delta Lake

Azure Databricks
Azure Data Lake Storage
Azure IoT Hub
Azure Data Factory
Azure Event Hubs

Pomysły dotyczące rozwiązań

Ten artykuł jest pomysłem na rozwiązanie. Jeśli chcesz, abyśmy rozszerzyli zawartość o więcej informacji, takich jak potencjalne przypadki użycia, alternatywne usługi, zagadnienia dotyczące implementacji lub wskazówki dotyczące cen, daj nam znać, przekazując opinię w usłudze GitHub.

Twoja organizacja musi pozyskiwać dane w dowolnym formacie, rozmiarze i szybkości w chmurze w spójny sposób. Rozwiązanie w tym artykule spełnia tę potrzebę z architekturą implementjącą wyodrębnianie, przekształcanie i ładowanie (ETL) ze źródeł danych do magazynu data lake. Usługa Data Lake może przechowywać wszystkie dane, w tym przekształcone i wyselekcjonowane wersje w różnych skalach. Dane mogą być używane do analizy danych, analizy biznesowej (BI), raportowania, nauki o danych i uczenia maszynowego.

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 that shows the architecture and data flow for ETL and stream processing with Azure Databricks.

Pobierz plik programu Visio z tą architekturą.

Przepływ danych

  1. Dane są pozyskiwane na następujące sposoby:

    • Kolejki zdarzeń, takie jak Event Hubs, IoT Hub lub Kafka, wysyłają dane przesyłane strumieniowo do usługi Azure Databricks, która używa zoptymalizowanego aparatu delty do odczytywania danych.
    • Zaplanowane lub wyzwalane potoki usługi Data Factory kopiują dane z różnych źródeł danych w formatach pierwotnych. Moduł automatycznego ładowania w usłudze Azure Databricks przetwarza dane w miarę ich nadejścia.
  2. Usługa Azure Databricks ładuje dane do zoptymalizowanych, skompresowanych tabel lub folderów usługi Delta Lake w warstwie Brązowa w usłudze Data Lake Storage.

  3. Zadania przesyłania strumieniowego, zaplanowane lub wyzwalane w usłudze Azure Databricks odczytują nowe transakcje z warstwy brązu usługi Data Lake Storage. Zadania łączą się, czyszczą, przekształcają i agregują dane przed użyciem transakcji ACID w celu załadowania ich do wyselekcjonowanych zestawów danych w warstwach Silver i Gold usługi Data Lake Storage.

  4. Zestawy danych są przechowywane w usłudze Delta Lake w usłudze Data Lake Storage.

Każda usługa pozyskuje dane w typowym formacie, aby zapewnić spójność. Architektura korzysta z udostępnionego magazynu data lake w oparciu o otwarty format usługi Delta Lake. Nieprzetworzone dane są pozyskiwane z różnych źródeł wsadowych i przesyłanych strumieniowo w celu utworzenia ujednoliconej platformy danych. Platformę można używać do podrzędnych przypadków użycia, takich jak analiza, raportowanie analizy biznesowej, nauka o danych, sztuczna inteligencja i uczenie maszynowe.

Warstwy magazynowania z brązu, srebra i złota

Wzór medalionu składający się z warstw magazynowania Brązowa, Srebrna i Złota klienci mają elastyczny dostęp i rozszerzalne przetwarzanie danych.

  • Tabele z brązu zapewniają punkt wejścia dla danych pierwotnych, gdy ląduje w usłudze Data Lake Storage. Dane są pobierane w formacie nieprzetworzonym źródła i konwertowane na otwarty, transakcyjny format usługi Delta Lake na potrzeby przetwarzania. Rozwiązanie pozyskuje dane w warstwie Brązowa przy użyciu:
    • Interfejsy API platformy Apache Spark w usłudze Azure Databricks. Interfejsy API odczytują zdarzenia przesyłania strumieniowego z usługi Event Hubs lub usługi IoT Hub, a następnie konwertują te zdarzenia lub nieprzetworzone pliki na format usługi Delta Lake.
    • POLECENIE COPY INTO . Użyj polecenia , aby skopiować dane bezpośrednio z pliku źródłowego lub katalogu do usługi Delta Lake.
    • Moduł automatycznego ładowania usługi Azure Databricks. Moduł automatycznego ładowania pobiera pliki po przybyciu do magazynu data lake i zapisuje je w formacie usługi Delta Lake.
    • Działanie kopiowania w usłudze Data Factory. Klienci mogą użyć tej opcji, aby przekonwertować dane z dowolnego z obsługiwanych formatów na format usługi Delta Lake.
  • Tabele silver przechowują dane, gdy są zoptymalizowane pod kątem przypadków użycia analizy biznesowej i nauki o danych. Warstwa Brązowa pozyskuje nieprzetworzone dane, a następnie wykonuje więcej zadań ETL i przetwarzania strumieniowego w celu filtrowania, czyszczenia, przekształcania, łączenia i agregowania danych do wyselekcjonowanych zestawów danych silver. Firmy mogą używać spójnego aparatu obliczeniowego, takiego jak aparat delta engine open-standards, podczas korzystania z usługi Azure Databricks jako początkowej usługi dla tych zadań. Następnie mogą używać znanych języków programowania, takich jak SQL, Python, R lub Scala. Firmy mogą również używać powtarzalnych procesów DevOps i efemerycznych klastrów obliczeniowych o rozmiarze do poszczególnych obciążeń.
  • Złote tabele zawierają wzbogacone dane, gotowe do analizy i raportowania. Analitycy mogą używać wybranej metody, takiej jak PySpark, Koalas, SQL, Power BI i Excel, aby uzyskać nowe szczegółowe informacje i formułować zapytania.

Składniki

  • Usługa Event Hubs analizuje i ocenia komunikaty przesyłane strumieniowo z różnych źródeł, w tym systemów lokalnych i udostępnia informacje w czasie rzeczywistym.
  • Usługa Data Factory organizuje potoki danych na potrzeby pozyskiwania, przygotowywania i przekształcania wszystkich danych w dowolnej skali.
  • Usługa Data Lake Storage łączy dane przesyłane strumieniowo i wsadowe, w tym dane ustrukturyzowane, nieustrukturyzowane i częściowo ustrukturyzowane, takie jak dzienniki, pliki i nośniki.
  • Usługa Azure Databricks czyści i przekształca bez struktury zestawy danych i łączy je ze ustrukturyzowanymi danymi z operacyjnych baz danych lub magazynów danych.
  • Usługa IoT Hub zapewnia wysoce bezpieczną i niezawodną komunikację między aplikacją IoT a urządzeniami.
  • Usługa Delta Lake w usłudze Data Lake Storage obsługuje transakcje ACID pod kątem niezawodności i jest zoptymalizowana pod kątem wydajnego pozyskiwania, przetwarzania i zapytań.

Szczegóły scenariusza

Pozyskiwanie, etL i przetwarzanie strumieniowe za pomocą usługi Azure Databricks jest proste, otwarte i wspólne:

  • Proste: open data lake z wyselekcjonaną warstwą w formacie open source upraszcza architekturę danych. Usługa Delta Lake, narzędzie typu open source, zapewnia dostęp do usługi Azure Data Lake Storage data lake. Usługa Delta Lake w usłudze Data Lake Storage obsługuje niepodzielność, spójność, izolację i trwałość transakcji (ACID) w celu zapewnienia niezawodności. Usługa Delta Lake jest zoptymalizowana pod kątem wydajnego pozyskiwania, przetwarzania i zapytań.
  • 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.

Usługa Azure Databricks bezproblemowo integruje się z innymi usługami platformy Azure, takimi jak Data Lake Storage, Azure Data Factory, Azure Event Hubs i Azure IoT Hub.

Potencjalne przypadki użycia

To rozwiązanie jest inspirowane przez system, który Providence Health Care zbudowany na potrzeby analizy w czasie rzeczywistym. Każda branża, która pozyskiwa dane wsadowe lub przesyłane strumieniowo, może również rozważyć to rozwiązanie. Oto kilka przykładów:

  • Handel detaliczny i elektroniczny
  • Finance
  • Opieka zdrowotna i nauki przyrodnicze
  • Dostawcy energii

Następne kroki

  • Spanish Point Technologies buduje aparat dopasowania przy użyciu usług Azure Databricks i Azure Data Factory w celu pozyskiwania danych na dużą skalę, aby pomóc muzykom w uczciwej płatności.

Przewodniki i w pełni wdrożone architektury: