I'm going to create Cloud Dataflow pipeline (using Apache beam) which assumes next steps:
- Reading messages from Kafka
- Processing messages
- Writing processed messages to Google Cloud Storage
I would like to commit offset to Kafka only if the message is stored in GCS succesfully, that is, implement exactly-once semantic to this flow.
How can I do it, is there any out-of-box support in KafkaIO.Read of at least any possibility to manage offsets manually?