GoogleGoogle Professional Data Engineer (PDE) Certification·KO·업데이트됨 21 Aug 2026
Dataflow 스트리밍 작업이 Pub/Sub을 읽고, DoFn이 비즈니스 로직을 적용하여 BigQuery에 씁니다. 메시지에 대해 DoFn이 실패하는 경우, 해당 메시지를 알림을 모니터링하는 Pub/Sub 토픽으로 보내려고 합니다. 어떻게 해야 할까요?
정답 선택
옵션을 탭하여 정답을 확인하세요.
정답: Dataflow의 DoFn 코드에서 예외 처리 블록을 사용하여 변환에 실패한 메시지를 사이드 출력을 통해 새 Pub/Sub 토픽으로 푸시합니다. Cloud Monitoring을 사용하여 이 새 토픽의 topic/num_unacked_messages_by_region 지표를 모니터링합니다..
이것이 정답인 이유
Dataflow DoFn 내에서 예외 처리 블록을 사용하여 실패한 메시지를 사이드 출력으로 별도의 Pub/Sub 토픽으로 보내는 것은 실패한 메시지를 격리하고 모니터링하는 표준적이고 유연한 방법입니다. 이 접근 방식은 비즈니스 로직 실패를 명확하게 분리하며, Cloud Monitoring을 통해 해당 토픽의 topic/numunackedmessagesbyregion 지표를 모니터링하여 실패 메시지 수를 추적할 수 있습니다.
다른 옵션들은 다음과 같은 이유로 적절하지 않습니다.
Pub/Sub 승인된 메시지 보존은 메시지 재처리를 위한 것이지, 비즈니스 로직 실패 메시지를 격리하는 용도가 아닙니다.
Pub/Sub 데드 레터링은 메시지 전달 실패(예: 구독자가 메시지를 승인하지 못함)를 처리하는 데 사용되며, Dataflow DoFn 내의 비즈니스 로직 실패와는 다릅니다.
Pub/Sub 스냅샷은 특정 시점의 구독 상태를 저장하는 것으로, 실패한 메시지를 모니터링하는 직접적인 방법이 아닙니다.