Dataflow DoFn이 잘못된 입력으로 인해 실패하고 손상된 레코드를 안정적으로 캡처하고 재처리해야 합니다. 올바른 설계 변경 사항은 무엇입니까?
정답 선택
옵션을 탭하여 정답을 확인하세요.
정답: 데이터를 변환하는 DoFn에 try…catch 블록을 추가하고 sideOutput을 사용하여 나중에 Pub/Sub에 저장할 수 있는 PCollection을 생성합니다..
이것이 정답인 이유
데이터플로우에서 잘못된 입력으로 인한 실패를 안정적으로 처리하고 재처리하려면, 변환 DoFn 내부에 try...catch 블록을 사용하여 예외를 포착해야 합니다. 오류가 발생한 레코드는 sideOutput을 통해 별도의 PCollection으로 분리하는 것이 가장 효과적인 설계 변경입니다. 이렇게 하면 정상적인 데이터 처리 흐름을 방해하지 않으면서, 오류 레코드만을 담은 PCollection을 생성할 수 있습니다. 이 PCollection을 나중에 Pub/Sub과 같은 메시징 시스템에 저장하여 재처리 파이프라인으로 전달하거나, 분석을 위해 별도로 저장할 수 있습니다. 다른 옵션들은 다음과 같은 이유로 적절하지 않습니다. 필터링 단계 추가는 오류를 건너뛸 뿐, 손상된 레코드를 캡처하거나 재처리하는 데 도움이 되지 않습니다. 로그에서 오류 행을 추출하는 것은 수동적이고 확장성이 떨어지며, 자동화된 재처리 흐름을 구축하기 어렵습니다. DoFn에서 직접 Pub/Sub에 쓰는 것은 DoFn의 단일 책임 원칙을 위반하고, 테스트 및 유지보수를 복잡하게 만들 수 있습니다. sideOutput을 통해 PCollection으로 분리한 후 별도의 단계에서 Pub/Sub에 쓰는 것이 더 유연하고 모듈화된 접근 방식입니다.
끝없는 정답 찾기 없이 시험 합격
이 시험에 대한 모든 검증된 문제와 설명을 한곳에서 얻고, 준비 시간을 몇 시간 절약하세요. 1,000개 이상의 자격증 · 20개 이상의 언어 · 무료로 시작.
더 빠르게 시험 합격 → 카드 필요 없음