Several instances of a stream processor split the work across partitions. When one instance restarts, the others must resume each partition from where it stopped. Where does the Event Processor Client keep its per-partition progress markers?
Show answer and explanation
Answer: A
The Event Processor Client records checkpoints, meaning the last processed position in each partition, in a checkpoint store. The usual choice is a Blob Storage container through BlobCheckpointStore. Because the store is shared, instances can divide partition ownership among themselves and resume from the last checkpoint after a restart. Event Hubs does not keep consumer checkpoint state on its own, so the application must supply this store.
Why the other options are wrong
- B. Memory is lost on restart and is not visible to other instances. Other processors could neither coordinate ownership nor resume from the right position after a failure.
- C. Namespace settings describe configuration such as tier, throughput, and networking. They do not record the progress of an individual consumer on each partition.
- D. Event Hubs does not add a hidden partition for consumer bookkeeping. The Event Processor Client persists checkpoints to an external store that the application configures.