title: Solution for composite events with Apache Kafka?
body: <p>Architecture question: We have an Apache Kafka based eventing system and multiple systems producing / sending events. Each event has some data including an ID and I need to implement a "ID is complete"-event. Example:
  <code>
  Event_A(id)
  Event_B(id)
  Event_C(id)
  </code>
  are received asynchonrously, and only once all 3 events are received, I need to send a <code>Event_Complete(id)</code>. The problem is that we have multiple clusters of consumers and our database is eventual consistent.</p>
  
  <p>A simple way would be to use the eventually consistent DB to store which events we have for each ID and add a "cron" job to catch race conditions eventually.</p>
  
  <p>It feels like a problem that might have been solved out there already. So my question is, is there a better way to do it (without introducing a consistent datastore to the picture)?</p>
  
  <p>Thanks a bunch!</p>