DoFn w Dataflow kończy się niepowodzeniem z powodu nieprawidłowo sformatowanych danych wejściowych, a Ty musisz niezawodnie przechwytywać i ponownie przetwarzać błędne rekordy. Jaka jest prawidłowa zmiana w projekcie?
Wybierz odpowiedź
Dotknij opcji, aby sprawdzić swoją odpowiedź.
Poprawna odpowiedź: Dodaj blok try…catch do swojego DoFn, który przekształca dane, użyj sideOutput do utworzenia PCollection, którą można później zapisać do Pub/Sub..
Dlaczego to jest odpowiedź
Prawidłowa odpowiedź to użycie bloku try…catch w DoFn wraz z sideOutput. Blok try…catch pozwala na przechwycenie wyjątków spowodowanych nieprawidłowo sformatowanymi danymi. SideOutput jest standardowym mechanizmem Apache Beam/Dataflow do rozdzielania elementów na wiele PCollection, co umożliwia skierowanie błędnych rekordów do oddzielnego strumienia danych. Ten strumień może być następnie zapisany do Pub/Sub lub innego miejsca docelowego w celu dalszej analizy lub ponownego przetworzenia, zapewniając niezawodne przechwytywanie błędów bez przerywania głównego potoku. Pozostałe opcje są mniej efektywne lub niezgodne z najlepszymi praktykami Dataflow. Wyodrębnianie błędnych wierszy z logów jest nieefektywne i niegwarantuje kompletności, a bezpośrednie zapisywanie do Pub/Sub z DoFn jest mniej elastyczne niż użycie sideOutput.
Zdaj egzamin — bez niekończącego się szukania odpowiedzi
Uzyskaj wszystkie zweryfikowane pytania i wyjaśnienia do tego egzaminu w jednym miejscu i zaoszczędź godziny przygotowań. Ponad 1000 certyfikacji · Ponad 20 języków · Zacznij za darmo.
Zdaj egzamin szybciej → Karta nie jest wymagana