title: Launching a new microservice that consumes other microservices' events
body: <p>I was concerned about this problem:
  suppose you have an already existent microservice environment and you want to launch a new microservice that offers new functionalities. If this microservices needs to consumes old events to provide its functionalities how this should be handled?</p>
  
  <p>Suppose you want to launch a recommendation service that need to consume user related events, how can it get old events?</p>
  
  <p>On a event sourcing based architecture you could query the Event Store, but tipically the ES is organized in <em>event streams</em> and is difficult keep track of all the existent streams in order to query all the events.</p>
  
  <p>My idea was to keep an eventual consistent repository where I store all the events in the order they happened (let's call it <em>event history</em>). Launching a new MS, it will subscribe to the topics of interest and query the <em>event history</em> until a certain point.
  It feels like I'm duplicating unnecessary data and I was looking for better solutions.</p>
  
  <p>Thanks in advance for your help!</p>