I’m wondering about using an Event Store to track “life cycle” of sent data Packages. I want to create stream for each Package (with stream maxAge = 1 day) and put Events for stream when Package is Received/Accepted/Sent/Delivered (see image below). Each event has some data, which weight ~ 5kB. There will be ~ 150 000 Packages every day (so the same number of Streams).
I’d like to use Projections (with “categroy type” stream) to track undelivered Packages + “event type” subscriptions when message is received.
And now I have some questions:
- Is it a good idea to use Event Store in this case?
- Is it a good design to create separate stream per Package?
- Is it a good idea to store 5kB additional “data” in each Event? (it will be the same in each event)
- Does the Event Store can handle such load without any issues?
- Do you advice some custom Event Store configuration, setup, anything to handle such load?