Event Sourcing in C# using RavenDB
Event Sourcing is all about making your data more interesting.
It's a different way of approaching how you build persistence in your systems.
Instead of tracking the state of the system, you track changes to the system.
It allows you to separate the logic of what happens from the event that happened.
If you want to use normal state-based programming, you have to notice changes and recalculate accordingly.
But with Event Based systems, you just have to say - event A, event B, event C; that's the state that you keep. You're able to apply your business logic at a later stage.
This frees you from having to deal with the dual-purpose mode of standard models which demand you optimize for both writes and reads at the same time. In traditional databases this can be hard. In event sourcing you use a different model for each, so it frees you to optimize them individually.
Today, RavenDB CEO Oren Eini will talk about how to utilize some of the more advanced features of RavenDB so you can build non-trivial processes inside of your database directly.
You will discover:
- The fundamentals of Event Sourcing
- How to use RavenDB to build data transformation processes that modify how your systems behave and work
- How to leverage this model to make some really interesting things with your data
1. What is Event Sourcing
2. Distinguishing events in your data
3. Advantages of Event Sourcing
4. Modelling Events in RavenDB
5. Multi-Map Reduce
6. Using Subscriptions to Subscribe to Events
7. Use Cases for Event Sourcing
8. Simple examples with a short walkthrough of relevant documentation
9. Questions and Answers