Pub/Sub Seek을 사용하면 사용자가 이전에 확인된 메시지를 다시 보거나 다시 처리하거나 여러 메시지를 한 번에 확인할 수 있습니다. 그러나 실행 중인 Dataflow 파이프라인에서 Pub/Sub Seek에 직접 액세스하는 것은 권장하지 않습니다. 직접 액세스하면 Dataflow의 워터마크 로직이 무효화되고 한 번에 처리 시 제대로 작동하지 않습니다. 또한 직접 액세스하면 처리된 데이터가 포함된 파이프라인 상태와 충돌하게 됩니다.
다음 워크플로와 함께 Pub/Sub Seek을 사용하는 것이 좋습니다.
- 구독 스냅샷을 만듭니다.
- Dataflow에서 구독 메시지를 드레이닝합니다.
- 파이프라인을 다시 제출합니다.
스냅샷 생성
구독 스냅샷에서 처리를 탐색 및 다시 실행합니다. gcloud
명령줄 도구를 사용하여 이 스냅샷을 만들려면 다음 명령어를 실행합니다.
alias pubsub='gcloud pubsub' pubsub snapshots create my-snapshot --subscription=seek-demo-sub
다음 명령어를 실행하여 스냅샷이 생성되었는지 확인합니다.
pubsub snapshots list
구독 드레이닝
구독을 드레이닝하고 파이프라인을 다시 제출하려면 다음 단계를 따르세요.
- Dataflow 콘솔로 이동하여 스트리밍 파이프라인을 클릭합니다.
- 요약 창에서 작업 중지를 클릭합니다.
- 드레이닝을 선택하여 이동 중인 메시지 처리를 허용하고 작업이 종료될 때까지 기다립니다.
gcloud
명령줄 도구를 사용하여 스냅샷 구독을 탐색합니다.pubsub subscriptions seek seek-demo-sub --snapshot=my-snapshot
- Dataflow 파이프라인을 다시 제출합니다.