Been looking for an eventstore database for our next CQRS driven arquitecture project and geteventstore is one of the possibilities.
Mind you I don’t know much about geteventstore as I only started yesterday trying to figure out my head around it. I do have knowledge about CQRS but documentation and samples seams lacking in certain areas, at least I could not finding anything convincing for Sagas and View Models.
I had a look on projections and here are two questions:
- Is it a good practice to build a V>iew and store it a stream? By reading about projections it seams feasible to start a projection with some View state and have it emit View changes into what I could call a view stream. The thing would go like this:
Say I have a order-21056 stream, a customer-201221 stream and a order-view-21056 stream:
step 1: on $init load the projection state with the latest changed event from the Order View Stream
step 2: compute the view based on subscribed events from the streams,
step 3. emit a view changed to the Order View Stream
Here I’m concerned with memory as I would have a projection per order
Cant the same principles be used for a Saga? Say the state containing the Saga state …
Can we add, suspend and remove projections dynamically?
Thank you for any help
PS: I’m consideting this to avoid developing the piping and other stuff to compute projections for views and sagas.