[erlang-questions] Using CouchDB to hold state for FSM - pros and cons?
Mon May 2 08:56:28 CEST 2011
I've got to build an enormous finite state machine (FSM) to hold state for
tens of thousands of in-flight transactions. The various state transitions
aren't well known yet; all I know is there's going to be lots of state
transactions per transaction, transaction volume will be extremely high, and
I'll probably have a bare minimum of time to throw together a working
In the past I've used mnesia to hold transaction state for similar projects,
but I've read a few articles about problems with it scaling and have a bit
of a concern on that count for this particular project. I've been using
CouchDB for a few unrelated projects recently, and have been impressed with
it on every score - on the surface it seems to be a good fit for my specific
problem. However I haven't stumbled on anybody using CouchDB as a high
throughput, transitional data store - everything I've read about it has
involved CouchDB working more or less as a NoSQL version of a "traditional"
write-once, read-often data store.
My application is far more "write-once, update-many-times-very-quickly,
delete" from a data perspective.
Has anyone used CouchDB as a FSM data store in a similar project in the
past? Pros and cons? Any tips or suggestions?
Thanks in advance
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the erlang-questions