Handling a large number of events when searching for sources

An event source CQRS looks perfect as an architecture for one of our systems, there is only one small thing that we are worried about right now: Handling a large number of events and handling huge event stores as a result.

Our current system receives about a million events per day (which currently has nothing to do with event sources), if we store them for a longer period of time, our event stores can become quite large, but if we dump / clean up Often, we can lose one of the big advantages of the event source: moving information about the system’s history and playback.

What are common ways to solve this problem in the CQRS architecture? Is this a problem at all? Are we just throwing more equipment into the event repository or something we can do at the architectural design level?

+5
source share
2 answers

I think the most common approach is to use snapshots and persistent reading models. That is, you do not actually reproduce your events very often, unless you need to create a new reading model or change the way the existing one works. By saving snapshots of your domain objects, you avoid repeating long streams of events.

, , CQRS . , .

, , , . , .

+7

" ". , , , , , , , ? , ( ). , , - , ( ), . , , , , .

- . , , , , , -, ( , , ). , .

. ( ).

+3

All Articles