Uruchom aktualizację potoku Delta Live Tables
W tym artykule opisano aktualizacje potoku i podano szczegóły dotyczące sposobu wyzwalania aktualizacji.
Co to jest aktualizacja potoku danych?
Po utworzeniu potoku i jesteś gotowy do jego uruchomienia, uruchamiasz aktualizację. Aktualizacja pipeline'u 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.
Używając weryfikacji aktualizacji, można sprawdzić problemy w kodzie źródłowym potoku bez czekania na utworzenie lub zaktualizowanie tabel. Ta funkcja jest przydatna podczas opracowywania lub testowania potoków, ponieważ umożliwia szybkie znajdowanie i naprawianie błędów w potoku, takich jak niepoprawne nazwy tabel lub kolumn.
Jak są wyzwalane aktualizacje przepływu?
Użyj jednej z następujących opcji, aby uruchomić aktualizacje potoku:
Wyzwalacz aktualizacji | Szczegóły |
---|---|
Instrukcja | Ręczne aktualizacje potoku można uruchomić z poziomu interfejsu użytkownika potoku, listy potoków lub zeszytu dołączonego do potoku. Zobacz Ręcznie wyzwól aktualizację potoku i Tworzenie oraz debugowanie potoków Delta Live Tables w notatnikach. |
Zaplanowane | Można zaplanować aktualizacje potoków za pomocą zadań. Zobacz zadanie potoku Tabele na żywo delty dla zadań. |
Programatyczny | Aktualizacje można wyzwalać programowo przy użyciu narzędzi innych firm, interfejsów API i wiersza poleceń. Zobacz Uruchamianie potoku delty tabel na żywo w przepływie pracy i interfejsie API potoku . |
Ręczne wyzwalanie aktualizacji potoku
Użyj jednej z następujących opcji, aby ręcznie wyzwolić aktualizację pipeline:
- Kliknij przycisk
na stronie szczegółów potoku.
- Na liście potoków kliknij
Ikona strzałki w prawo w kolumnie Akcje.
Uwaga
Domyślne zachowanie aktualizacji potoku wyzwalanych ręcznie polega na odświeżeniu wszystkich zestawów danych zdefiniowanych w potoku.
semantyka odświeżania potoku
W poniższej tabeli opisano działanie zmaterializowanych widoków i tabel strumieniowych na potrzeby domyślnego odświeżania i pełnego odświeżania.
Typ aktualizacji | Semantyka zmaterializowanego widoku | Semantyka tabeli przesyłania strumieniowego |
---|---|---|
Odświeżanie (ustawienie domyślne) | Aktualizuje wyniki odzwierciedlające bieżące wyniki dla zapytania definiującego. | Przetwarza nowe rekordy w oparciu o logikę zdefiniowaną w tabelach strumieniowych i przepływach. |
Pełne odświeżanie | Aktualizuje wyniki odzwierciedlające bieżące wyniki dla zapytania definiującego. | Czyści dane z tabel przesyłania strumieniowego, czyści informacje o stanie (punkty kontrolne) z przepływów i ponownie przetwarza wszystkie rekordy ze źródła danych. |
Domyślnie wszystkie zmaterializowane widoki i tabele przesyłania strumieniowego odświeżają się w potoku z każdą aktualizacją. Opcjonalnie można pominąć tabele z aktualizacji przy użyciu następujących funkcji:
- Wybierz tabele do odświeżania: użyj tego interfejsu użytkownika, aby dodać lub usunąć zmaterializowane widoki i tabele strumieniowe przed uruchomieniem aktualizacji. Zobacz: Rozpocznij aktualizację potoku dla wybranych tabel.
- Odświeżenie nieudanych tabel: Rozpocznij aktualizację dla nieudanych zmaterializowanych widoków i tabel przesyłania strumieniowego, uwzględniając zależności podrzędne. Zobacz Uruchamianie aktualizacji potoku dla tabel, które zakończyły się niepowodzeniem,.
Obie te cechy obsługują domyślną semantykę odświeżania lub pełne odświeżanie. Opcjonalnie możesz użyć okna dialogowego Wybieranie tabel do odświeżania, aby wykluczyć dodatkowe tabele podczas uruchamiania odświeżania dla tabel, które zakończyły się niepowodzeniem.
Czy należy używać pełnego odświeżania?
Usługa Databricks zaleca uruchamianie pełnych odświeżeń tylko wtedy, gdy jest to konieczne. Pełne odświeżanie zawsze ponownie przetwarza wszystkie rekordy z określonych źródeł danych za pomocą logiki definiującej zestaw danych. Czas i zasoby do ukończenia pełnego odświeżania są skorelowane z rozmiarem danych źródłowych.
Zmaterializowane widoki zwracają te same wyniki, niezależnie od tego, czy jest używane domyślne, czy pełne odświeżanie. Użycie pełnego odświeżania z tabelami przesyłania strumieniowego resetuje wszystkie informacje o przetwarzaniu stanów i punktach kontrolnych i może skutkować utratą rekordów, jeśli dane wejściowe nie są już dostępne.
Usługa Databricks zaleca pełne odświeżanie tylko wtedy, gdy wejściowe źródła danych zawierają dane potrzebne do odtworzenia żądanego stanu tabeli lub widoku. Rozważmy następujące scenariusze, w których dane wejściowe nie są już dostępne i rezultat przeprowadzenia pełnego odświeżania:
Źródło danych | Brak danych wejściowych dotyczących przyczyny | Wynik pełnego odświeżenia |
---|---|---|
Kafka | Próg krótkiego przechowywania | Rekordy, które nie są już obecne w źródle Kafka, są usuwane z tabeli docelowej. |
Pliki w przechowywaniu obiektowym | Zasady cyklu życia | Pliki danych, które nie są już obecne w katalogu źródłowym, są usuwane z tabeli docelowej. |
Rekordy w tabeli | Usunięto pod kątem zgodności | Przetwarzane są tylko rekordy obecne w tabeli źródłowej. |
Aby zapobiec uruchamianiu pełnych odświeżeń w tabeli lub widoku, ustaw właściwość tabeli pipelines.reset.allowed
na false
. Zobacz właściwości tabel Delta Live Tables. Możesz również użyć przepływu dołączania , aby dołączyć dane do istniejącej tabeli przesyłania strumieniowego bez konieczności pełnego odświeżania.
Uruchamianie aktualizacji potoku dla wybranych tabel
Opcjonalnie mogą Państwo ponownie przetwarzać dane tylko dla wybranych tabel w swoim 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 zakończyły się niepowodzeniem .
Uwaga
Można użyć odświeżania selektywnego tylko z wyzwalanymi potokami.
Aby uruchomić aktualizację, która odświeża tylko wybrane tabele, przejdź do strony szczegóły potoku .
Kliknij pozycję Wybierz tabele, aby odświeżyć. Pojawi się okno dialogowe
Select tables for refresh (Wybierz tabele do odświeżenia).Jeśli nie widzisz przycisku Wybierz tabele na potrzeby odświeżania, upewnij się, że na stronie Szczegóły potoku jest wyświetlana najnowsza aktualizacja i że aktualizacja została ukończona. Jeśli DAG nie jest pokazany dla najnowszej aktualizacji, na przykład ponieważ aktualizacja nie powiodła się, przycisk Wybierz tabele do odświeżenia nie jest wyświetlany.
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ę.
Kliknij Odśwież zaznaczenie.
Uwaga
Przycisk Odśwież zaznaczenie wyświetla liczbę zaznaczonych tabel w nawiasach.
Aby ponownie przetworzyć dane już pozyskane dla wybranych tabel, kliknij obok przycisku Odśwież zaznaczenie, a następnie kliknij wybierz Pełne odświeżanie.
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 napotkały błędy, oraz wszystkich zależności podrzędnych.
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 nieudane tabele:
Kliknij przycisk
obok przycisku Odśwież nieudane tabele, a następnie kliknij Wybierz tabele do odświeżenia. Pojawi się okno dialogowe
Select tables for refresh (Wybierz tabele do odświeżenia).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ę.
Kliknij Odśwież zaznaczenie.
Uwaga
Przycisk Odśwież zaznaczenie wyświetla liczbę zaznaczonych tabel w nawiasach.
Aby ponownie przetworzyć dane już pozyskane dla wybranych tabel, kliknij obok przycisku Odśwież zaznaczenie, a następnie kliknij wybierz Pełne odświeżanie.
Sprawdź potok pod kątem błędów bez oczekiwania na aktualizowanie tabel
Ważne
Funkcja aktualizacji Delta Live Tables Validate
jest dostępna w ramach publicznej wersji zapoznawczej.
Aby zweryfikować, czy kod źródłowy potoku jest prawidłowy, bez uruchamiania pełnej aktualizacji, użyj polecenia Validate. Aktualizacja Validate
rozwiązuje definicje zbiorów danych i przepływów zdefiniowanych w potoku, ale nie tworzy ani nie publikuje żadnych zbioró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
, kliknij na stronie szczegółów potoku obok przycisku Start i kliknij przycisk Weryfikuj.
Po zakończeniu aktualizacji Validate
dziennik zdarzeń pokazuje zdarzenia związane tylko z aktualizacją Validate
, 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 aktualizacji Validate
. Jeśli aktualizacja Validate
była ostatnio uruchomioną aktualizacją, możesz zobaczyć wyniki, wybierając ją w historii aktualizacji . Jeśli po aktualizacji Validate
zostanie uruchomiona inna aktualizacja, wyniki nie będą już dostępne w interfejsie użytkownika.
Tryby programowania i produkcji
Możesz zoptymalizować wykonywanie potoku, przełączając się między trybami programowania i produkcji. Użyj ikon przełącznika środowiska tabel Delta Live 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 deweloperskim, 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 pomocą ustawienia
pipelines.clusterShutdown.delay
w Konfigurowaniu obliczeń dla potoku Delta Live Tables. - 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ń.
- Ponawia próbę wykonania w przypadku określonych błędów, takich jak niepowodzenie uruchomienia klastra.
Uwaga
Przełączanie między trybami programowania i produkcji steruje tylko zachowaniem wykonywania klastra i potoku. Lokalizacje magazynowe i docelowe schematy w katalogu dla publikowanych tabel muszą być skonfigurowane jako część ustawień potoku i nie są wpływane przez zmiany trybów.