Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Event Store Launch

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.
Avatar for eventstore eventstore
September 17, 2012

Event Store Launch

Avatar for eventstore

eventstore

September 17, 2012
Tweet

Other Decks in Programming

Transcript

  1. Agenda •  Demo •  How to interact with the Event

    Store •  Internal architecture, decisions made •  Something else… •  Summary •  Questions
  2. Scavenge 7 6 5 4 3 2 1 0 Index

    has (1,2,7) deleted Scavenge 6 5 4 3 0 6 à 4 5 à 3 4 à 2 3 à 1 0 à 0
  3. Transaction File Chunk 1 (1MB) Chunk 3 (1MB) Chunk 2

    (1MB) Chunk 1a (1MB-) (items removed)
  4. Simple When you look at what you have done and

    think “Wow, it’s really simple” you have probably done something right.
  5. Benchmarks! •  Have indexed over 1B items with log(n) performance

    •  Writes! 15,000+/sec over TCP •  Reads! 50,000+/sec over TCP
  6. Projections from_all().when( AccountCreated: function(state,event) { state.Name = event.CustomerName; state.Balance =

    0; }, TransactionOccurred: function(state,event) { state.Balance += event.value; } );