I need to store a lot of data in Reliable dictionaries on the Service Fabric. We implement the event repository as a series of reliable dictionaries, so every event emitted by a domain ends in a store. I would like to know the difference in performance in the following two scenarios:
- use one (very large) reliable dictionary to store all events for a specific type of aggregate: this leads to a small number of dictionaries, each of which contains millions of events
- use a small reliable dictionary to store events of one aggregate instance: this leads to a large number of small dictionaries (I think millions), each of which contains several events
In light of the replication of the state and read and write performance, what would be the most efficient way to move forward?
source
share