Czym są pipelines?

Potok to główna jednostka programowania i wykonywania potoków deklaratywnych platformy Apache Spark™ (SDP) w usłudze Lakeflow. Potok przetwarzania to zbiór plików kodu źródłowego oraz konfiguracji. Pliki źródłowe deklarują zbiory danych (tabele strumieniowe, widoki materializowane i widoki) wraz z zapytaniami i przepływami, które je generują. Konfiguracja określa sposób działania potoku i miejsce przechowywania danych.

Pipeline to kontener dla przepływów, tabel strumieniowych, widoków zmaterializowanych i odbiorników, które definiujesz. Podczas działania potoku analizuje on zależności między tymi obiektami i automatycznie koordynuje kolejność ich wykonywania oraz równoległe uruchamianie. Szczegółowe informacje na temat obiektów zawartych w potoku można znaleźć w sekcji Czym są potoki Lakeflow?. Aby zapoznać się z porównaniem potoków lakeflow i potoków deklaratywnych platformy Apache Spark, zobacz Potoki deklaratywne platformy Apache Spark™.

Kod źródłowy pipeline’u

Kod źródłowy potoku jest napisany w Pythonie lub w SQL. Pojedynczy potok może łączyć pliki źródłowe w językach Python i SQL, ale każdy plik może zawierać tylko jeden język. Ponieważ potok analizuje zależności zestawu danych we wszystkich plikach źródłowych, można organizować kod źródłowy między plikami w dowolnej kolejności.

Aby uzyskać wskazówki programistyczne dla poszczególnych języków, zobacz sekcje Tworzenie kodu potoku przy użyciu języka Python i Tworzenie kodu potoków Lakeflow przy użyciu języka SQL.

Wykres potoku

Potoki automatycznie określają zależności między zestawami danych i układają je w skierowany graf acykliczny (DAG). Wykres określa kolejność oceny: nadrzędne zestawy danych są obliczane przed podrzędnymi. W edytorze Lakeflow Pipelines Editor możesz wyświetlać wykres potoku i wchodzić z nim w interakcję.

Aktualizacje potoku

Aktualizacja potoku oblicza bieżący stan każdego zbioru danych w następujący sposób:

  1. Uruchamianie klastra z poprawną konfiguracją.
  2. Analizowanie plików źródłowych i tworzenie grafu zależności.
  3. Obliczanie lub przyrostowe aktualizowanie każdego zestawu danych w kolejności zależności.

Potoki działają w dwóch trybach:

  • Wyzwalane: potok jest uruchamiany raz i zatrzymuje się, gdy wszystkie zestawy danych są aktualne.
  • Ciągły: Potok działa bezterminowo i przetwarza nowe dane w miarę ich napływania.

Aktualizacje wyzwalane interaktywnie z poziomu edytora są zoptymalizowane pod kątem szybkiej iteracji, ponownego użycia klastra i wyłączania automatycznych ponownych prób. Zobacz Zachowanie przebiegu aktualizacji.

Typy potoków

Lista Zadania i potoki obejmuje nie tylko potoki utworzone za pomocą funkcji Lakeflow Pipelines. Azure Databricks uruchamia wiele różnych typów potoków, a lista Jobs & Pipelines oraz strona monitorowania potoku oznaczają każdy z nich odpowiednim typem, dzięki czemu można łatwo odróżnić jeden od drugiego. Poniższa tabela przyporządkowuje każdy typ potoku do pipeline_type wartości zapisanej w dzienniku zdarzeń:

Wpisz w Zadania i potoki pipeline_type w dzienniku zdarzeń Description
ETL WORKSPACE Potok Lakeflow. Zobacz Potoki deklaratywne platformy Spark.
Spożycie MANAGED_INGESTION Zarządzany potok pozyskiwania danych utworzony przy użyciu Lakeflow Connect. Zobacz koncepcje złącza Lakeflow Connect.
MV/ST DBSQL Samodzielny potok przetwarzania. Zobacz Niezależne potoki.
Synchronizacja tabel bazy danych DATABASE_TABLE_SYNC Potok do synchronizacji tabeli z bazą danych Lakebase. Zobacz Udostępnianie danych Lakehouse poprzez zsynchronizowane tabele.

Potoki autonomiczne

Poza potokiem Lakeflow można tworzyć tabele strumieniowe i widoki materializowane oraz nimi zarządzać jako samodzielnymi potokami. Możesz używać usługi Databricks SQL lub języka Python do tworzenia i odświeżania samodzielnych tabel strumieniowych oraz zmaterializowanych widoków. Działają w tej samej infrastrukturze Azure Databricks i mają taką samą semantykę przetwarzania jak w potoku Lakeflow. Podczas definiowania autonomicznej tabeli przesyłania strumieniowego lub zmaterializowanego widoku przepływy są definiowane niejawnie jako część tabeli przesyłania strumieniowego lub zmaterializowanej definicji widoku.

Szczegółowe informacje znajdziesz w sekcji Samodzielne potoki.

Edytor potoków Lakeflow

Edytor potoków Lakeflow to środowisko IDE stworzone do tworzenia potoków. Zapewnia:

  • Edytor kodu z wieloma plikami dla plików źródłowych Python i SQL
  • Przeglądarka zasobów pipeline do organizowania plików i folderów
  • Interaktywny wykres potoku przedstawiający zależności i stan zestawu danych
  • Podglądy danych dla tabel strumieniowych i widoków zmaterializowanych
  • Informacje o wykonaniu i panel problemów pokazujący wyniki z ostatniego uruchomienia
  • Selektywne uruchamianie w celu odświeżenia pojedynczych plików lub tabel bez uruchamiania pełnego potoku przetwarzania

Edytor integruje się z platformą Azure Databricks i obsługuje kontrolę wersji za pośrednictwem folderów Git. Aby uzyskać szczegółowe wskazówki, zobacz Develop and debug ETL pipelines with the Lakeflow Pipelines Editor (Opracowywanie i debugowanie potoków ETL za pomocą edytora potoków lakeflow).

Dodatkowe zasoby