rabblerouser / core

Pluggable, extensible membership database for community organising
GNU Affero General Public License v3.0
17 stars 10 forks source link

RFC: Event persistence #90

Closed camjackson closed 7 years ago

camjackson commented 8 years ago

Soon we'll start to switch things over from a relational data store to an event sourcing model. One of the biggest questions to answer is what exactly we're going to use for our event database.

Some criteria, off the top of my head:

Some contenders:

Event Store:

CouchDB:

DynamoDB

MongoDB

Relational data store e.g. postgres

There's probably a bunch more research that needs to be done before we can make a call, but right now I suppose the biggest question is to what degree we want to be locked in to AWS. On the one hand it gives us a huge advantage in terms of up front infrastructure work now, and maintenance cost later. But on the other hand it may become quite difficult to move away from if we wanted to. Locking our core data store in to AWS is a bigger deal than using S3 for example.

Please add your corrections and additions to the above!

camjackson commented 7 years ago

We're using kinesis for now, with lambdas to forward events to services over HTTP.