Uruchamianie aktualizacji potoku delta live tables

W tym artykule wyjaśniono, czym jest aktualizacja potoku delta live tables i jak go uruchomić.

Po utworzeniu potoku i przygotowaniu go do uruchomienia należy rozpocząć aktualizację. Aktualizacja potoku wykonuje następujące czynności:

  • Uruchamia klaster z poprawną konfiguracją.
  • Odnajduje wszystkie zdefiniowane tabele i widoki oraz sprawdza błędy analizy, takie jak nieprawidłowe nazwy kolumn, brakujące zależności i błędy składni.
  • Tworzy lub aktualizuje tabele i widoki z najnowszymi dostępnymi danymi.

Możesz sprawdzić problemy w kodzie źródłowym potoku bez oczekiwania na utworzenie lub zaktualizowanie tabel przy użyciu aktualizacji Validate. Ta funkcja jest przydatna Validate podczas opracowywania lub testowania potoków, umożliwiając szybkie znajdowanie i naprawianie błędów w potoku, takich jak niepoprawne nazwy tabel lub kolumn.

Aby dowiedzieć się, jak utworzyć potok, zobacz Samouczek: uruchamianie pierwszego potoku tabel na żywo usługi Delta.

Uruchamianie aktualizacji potoku

Usługa Azure Databricks oferuje kilka opcji uruchamiania aktualizacji potoku, w tym następujące:

  • W interfejsie użytkownika funkcji Delta Live Tables dostępne są następujące opcje:
    • Ikona uruchamiania tabel na żywo usługi Delta Kliknij przycisk na stronie szczegółów potoku.
    • Na liście potoków kliknij Ikona strzałki w prawo kolumnę Actions (Akcje ).
  • Aby rozpocząć aktualizację w notesie, kliknij pozycję Delta Live Tables > Start na pasku narzędzi notesu. Zobacz Otwieranie lub uruchamianie potoku delta Live Tables z notesu.
  • Potoki można wyzwalać programowo przy użyciu interfejsu API lub interfejsu wiersza polecenia. Zobacz Delta Live Tables API guide (Przewodnik interfejsu API delta live tables).
  • Potok można zaplanować jako zadanie przy użyciu interfejsu użytkownika funkcji Delta Live Tables lub interfejsu użytkownika zadań. Zobacz Planowanie potoku.

Jak tabele na żywo funkcji Delta aktualizuje tabele i widoki

Zaktualizowane tabele i widoki oraz sposób aktualizowania tych tabel zależą od typu aktualizacji:

  • Odśwież wszystkie: wszystkie tabele na żywo są aktualizowane w celu odzwierciedlenia bieżącego stanu ich wejściowych źródeł danych. Dla wszystkich tabel przesyłania strumieniowego nowe wiersze są dołączane do tabeli.
  • Wszystkie pełne odświeżanie: wszystkie tabele na żywo są aktualizowane w celu odzwierciedlenia bieżącego stanu ich wejściowych źródeł danych. W przypadku wszystkich tabel przesyłania strumieniowego tabele delta Live Tables próbują wyczyścić wszystkie dane z każdej tabeli, a następnie załadować wszystkie dane ze źródła przesyłania strumieniowego.
  • Wybór odświeżania: zachowanie elementu refresh selection jest identyczne z refresh allparametrem , ale umożliwia odświeżanie tylko wybranych tabel. Wybrane tabele na żywo są aktualizowane w celu odzwierciedlenia bieżącego stanu ich wejściowych źródeł danych. W przypadku wybranych tabel przesyłania strumieniowego nowe wiersze są dołączane do tabeli.
  • Wybór pełnego odświeżania: zachowanie full refresh selection funkcji jest identyczne z full refresh allparametrem , ale umożliwia pełne odświeżanie tylko wybranych tabel. Wybrane tabele na żywo są aktualizowane w celu odzwierciedlenia bieżącego stanu ich wejściowych źródeł danych. W przypadku wybranych tabel przesyłania strumieniowego tabele delta Live Tables próbują wyczyścić wszystkie dane z każdej tabeli, a następnie załadować wszystkie dane ze źródła przesyłania strumieniowego.

W przypadku istniejących tabel na żywo aktualizacja ma takie samo zachowanie jak sql REFRESH w zmaterializowanym widoku. W przypadku nowych tabel na żywo zachowanie jest takie samo jak operacja SQL CREATE .

Uruchamianie aktualizacji potoku dla wybranych tabel

Możesz chcieć ponownie przetworzyć dane tylko dla wybranych tabel w potoku. Na przykład podczas programowania zmieniasz tylko jedną tabelę i chcesz skrócić czas testowania lub aktualizacja potoku kończy się niepowodzeniem i chcesz odświeżyć tylko tabele, które uległy awarii.

Uwaga

Można użyć odświeżania selektywnego tylko z wyzwalanymi potokami.

Aby rozpocząć aktualizację, która odświeża tylko wybrane tabele, na stronie Szczegóły potoku:

  1. Kliknij pozycję Wybierz tabele, aby odświeżyć. Zostanie wyświetlone okno dialogowe Wybieranie tabel do odświeżenia .

    Jeśli nie widzisz przycisku Wybierz tabele do odświeżenia , upewnij się, że na stronie Szczegóły potoku jest wyświetlana najnowsza aktualizacja, a aktualizacja została ukończona. Jeśli grupa DAG nie jest wyświetlana dla najnowszej aktualizacji, na przykład, ponieważ aktualizacja nie powiodła się, przycisk Wybierz tabele do odświeżenia nie jest wyświetlany.

  2. Aby wybrać tabele do odświeżenia, kliknij każdą tabelę. Wybrane tabele są wyróżnione i oznaczone etykietami. Aby usunąć tabelę z aktualizacji, kliknij ponownie tabelę.

  3. Kliknij pozycję Odśwież zaznaczenie.

    Uwaga

    Przycisk Odśwież zaznaczenie wyświetla liczbę wybranych tabel w nawiasach.

Aby ponownie przetworzyć dane, które zostały już pozyskane dla wybranych tabel, kliknij Niebieski daszek w dółobok przycisku Odśwież zaznaczenie, a następnie kliknij pozycję Odśwież zaznaczenie.

Uruchamianie aktualizacji potoku dla tabel, które zakończyły się niepowodzeniem

Jeśli aktualizacja potoku zakończy się niepowodzeniem z powodu błędów w co najmniej jednej tabeli na grafie potoku, możesz uruchomić aktualizację tylko tabel, które zakończyły się niepowodzeniem i wszelkimi zależnościami podrzędnym.

Uwaga

Wykluczone tabele nie są odświeżane, nawet jeśli zależą one od tabeli, która zakończyła się niepowodzeniem.

Aby zaktualizować tabele, które zakończyły się niepowodzeniem, na stronie Szczegóły potoku kliknij pozycję Odśwież tabele, które zakończyły się niepowodzeniem.

Aby zaktualizować tylko wybrane tabele, które zakończyły się niepowodzeniem:

  1. Kliknij Przycisk strzałki w dół przycisk Odśwież tabele, które zakończyły się niepowodzeniem, a następnie kliknij pozycję Wybierz tabele do odświeżenia. Zostanie wyświetlone okno dialogowe Wybieranie tabel do odświeżenia .

  2. Aby wybrać tabele do odświeżenia, kliknij każdą tabelę. Wybrane tabele są wyróżnione i oznaczone etykietami. Aby usunąć tabelę z aktualizacji, kliknij ponownie tabelę.

  3. Kliknij pozycję Odśwież zaznaczenie.

    Uwaga

    Przycisk Odśwież zaznaczenie wyświetla liczbę wybranych tabel w nawiasach.

Aby ponownie przetworzyć dane, które zostały już pozyskane dla wybranych tabel, kliknij Niebieski daszek w dółobok przycisku Odśwież zaznaczenie, a następnie kliknij pozycję Odśwież zaznaczenie.

Sprawdzanie potoku pod kątem błędów bez oczekiwania na aktualizację tabel

Ważne

Funkcja aktualizacji delta live tables Validate jest dostępna w publicznej wersji zapoznawczej.

Aby sprawdzić, czy kod źródłowy potoku jest prawidłowy bez uruchamiania pełnej aktualizacji, użyj polecenia Validate. Aktualizacja Validate rozwiązuje definicje zestawów danych i przepływów zdefiniowanych w potoku, ale nie materializuje ani nie publikuje żadnych zestawów danych. Błędy występujące podczas walidacji, takie jak niepoprawne nazwy tabel lub kolumn, są zgłaszane w interfejsie użytkownika.

Aby uruchomić aktualizacjęValidate, na stronie szczegółów potoku kliknij przyciskNiebieski daszek w dółobok pozycji Start i kliknij pozycję Weryfikuj.

Po zakończeniu aktualizacji w dzienniku Validate zdarzeń są wyświetlane zdarzenia związane tylko Validate z aktualizacją, a w grupie DAG nie są wyświetlane żadne metryki. Jeśli zostaną znalezione błędy, szczegółowe informacje są dostępne w dzienniku zdarzeń.

Wyniki są widoczne tylko dla najnowszej Validate aktualizacji. Validate Jeśli aktualizacja była ostatnio uruchomioną aktualizacją, możesz zobaczyć wyniki, wybierając ją w historii aktualizacji. Jeśli po Validate aktualizacji zostanie uruchomiona inna aktualizacja, wyniki nie będą już dostępne w interfejsie użytkownika.

Ciągłe a wyzwalane wykonywanie potoku

Jeśli potok korzysta z trybu wykonywania wyzwalanego , system zatrzymuje przetwarzanie po pomyślnym odświeżeniu wszystkich tabel lub wybranych tabel w potoku raz, upewniając się, że każda tabela, która jest częścią aktualizacji, zostanie zaktualizowana na podstawie danych dostępnych po rozpoczęciu aktualizacji.

Jeśli potok używa ciągłego wykonywania, funkcja Delta Live Tables przetwarza nowe dane w miarę ich dostarczania w źródłach danych, aby zachować nowe tabele w całym potoku.

Tryb wykonywania jest niezależny od typu obliczanej tabeli. Oba zmaterializowane widoki i tabele przesyłania strumieniowego można aktualizować w obu trybach wykonywania. Aby uniknąć niepotrzebnego przetwarzania w trybie ciągłego wykonywania, potoki automatycznie monitorują zależne tabele delty i wykonują aktualizację tylko wtedy, gdy zawartość tych tabel zależnych uległa zmianie.

Uwaga

Środowisko uruchomieniowe delta Live Tables nie może wykryć zmian w źródłach danych innych niż delta. Tabela jest nadal regularnie aktualizowana, ale z wyższym domyślnym interwałem wyzwalacza, aby zapobiec nadmiernej ponownej kompilacji, spowalniając wszelkie operacje przetwarzania przyrostowego wykonywanego w klastrze.

Tabela porównująca tryby wykonywania potoku danych

W poniższej tabeli przedstawiono różnice między tymi trybami wykonywania:

Wyzwolone Ciągłe
Kiedy aktualizacja zostanie zatrzymana? Automatycznie po zakończeniu. Działa w sposób ciągły do momentu ręcznego zatrzymania.
Jakie dane są przetwarzane? Dane dostępne po uruchomieniu aktualizacji. Wszystkie dane docierające do skonfigurowanych źródeł.
Jakie wymagania dotyczące aktualności danych są najlepsze? Aktualizacje danych są uruchamiane co 10 minut, co godzinę lub codziennie. Aktualizacje danych są wymagane od co 10 sekund do kilku minut.

Wyzwalane potoki mogą zmniejszyć zużycie zasobów i wydatki, ponieważ klaster działa wystarczająco długo, aby wykonać potok. Jednak nowe dane nie będą przetwarzane, dopóki potok nie zostanie wyzwolony. Potoki ciągłe wymagają zawsze uruchomionego klastra, który jest droższy, ale zmniejsza opóźnienie przetwarzania.

Tryb wykonywania można skonfigurować za pomocą opcji Tryb potoku w ustawieniach.

Jak wybrać granice potoku

Potok delta Live Tables może przetwarzać aktualizacje pojedynczej tabeli, wiele tabel z relacjami zależnymi, wiele tabel bez relacji lub wiele niezależnych przepływów tabel z relacjami zależnymi. Ta sekcja zawiera zagadnienia ułatwiające określenie sposobu podziału potoków.

Większe potoki tabel na żywo delty mają wiele korzyści. Należą do nich następujące funkcje:

  • Wydajniejsze korzystanie z zasobów klastra.
  • Zmniejsz liczbę potoków w obszarze roboczym.
  • Zmniejsz złożoność aranżacji przepływu pracy.

Niektóre typowe zalecenia dotyczące sposobu dzielenia potoków przetwarzania obejmują następujące elementy:

  • Podziel funkcje na granicach zespołu. Na przykład zespół ds. danych może obsługiwać potoki w celu przekształcania danych, podczas gdy analitycy danych utrzymują potoki analizujące przekształcone dane.
  • Podziel funkcje na granicach specyficznych dla aplikacji, aby zmniejszyć sprzężenie i ułatwić ponowne użycie typowych funkcji.

Tryby programowania i produkcji

Możesz zoptymalizować wykonywanie potoku, przełączając się między trybami programowania i produkcji. Ikona przełączania środowiska tabel na żywo funkcji Delta Użyj przycisków w interfejsie użytkownika potoków, aby przełączać się między tymi dwoma trybami. Domyślnie potoki są uruchamiane w trybie programowania.

Po uruchomieniu potoku w trybie programowania system Delta Live Tables wykonuje następujące czynności:

  • Ponownie używa klastra, aby uniknąć obciążenia związanego z ponownym uruchamianiem. Domyślnie klastry działają przez dwie godziny, gdy tryb programowania jest włączony. Możesz to zmienić za pipelines.clusterShutdown.delay pomocą ustawienia w obszarze Konfigurowanie ustawień obliczeniowych.
  • Wyłącza ponawianie prób potoku, dzięki czemu można natychmiast wykrywać i naprawiać błędy.

W trybie produkcyjnym system Delta Live Tables wykonuje następujące czynności:

  • Uruchamia ponownie klaster w celu uzyskania określonych błędów możliwych do odzyskania, w tym przecieków pamięci i nieaktualnych poświadczeń.
  • Ponowne wykonanie próby w przypadku określonych błędów, na przykład niepowodzenie uruchomienia klastra.

Uwaga

Przełączanie między trybami programowania i produkcji steruje tylko zachowaniem wykonywania klastra i potoku. Lokalizacje magazynu i schematy docelowe w wykazie dla tabel publikowania muszą być skonfigurowane jako część ustawień potoku i nie mają wpływu na przełączanie między trybami.

Planowanie potoku

Potok wyzwalany można uruchomić ręcznie lub uruchomić potok zgodnie z harmonogramem za pomocą zadania usługi Azure Databricks. Zadanie można utworzyć i zaplanować za pomocą jednego zadania potoku bezpośrednio w interfejsie użytkownika tabel delta Live Tables lub dodać zadanie potoku do przepływu pracy obejmującego wiele zadań w interfejsie użytkownika zadań.

Aby utworzyć zadanie pojedynczego zadania i harmonogram zadania w interfejsie użytkownika tabel delta Live Tables:

  1. Kliknij pozycję Harmonogram > Dodaj harmonogram. Przycisk Harmonogram jest aktualizowany, aby wyświetlić liczbę istniejących harmonogramów, jeśli potok jest uwzględniony w co najmniej jednym zaplanowanym zadań, na przykład Harmonogram (5).
  2. Wprowadź nazwę zadania w polu Nazwa zadania.
  3. Ustaw wartość Harmonogram na Zaplanowane.
  4. Określ okres, czas rozpoczęcia i strefę czasową.
  5. Skonfiguruj co najmniej jeden adres e-mail, aby otrzymywać alerty dotyczące rozpoczęcia, powodzenia lub niepowodzenia potoku.
  6. Kliknij pozycję Utwórz.