# event sourcing
###### tags: `eventsourcing`
https://www.youtube.com/watch?v=i2eVTk2Fb40&ab_channel=ADev%27Story
* complete rebuild
* temporal query
* event replay
owing to object state record by log of events,
we can get the object status at any time before now

### snapshot: record the compiled object in the past
### example:
1. git commit
2. good for parallel processing, log only support read, log as immutable when support parallel process
3. problem for only eventual consistency:
### CQRS: command query responsibility segregation
path of writing data different from reading
pros :
1. split read/write make scale each one easier
2. compatible with event driven
cons:
1. complex pattern
used case:
when great amount of unbalance btw read and write