[erlang-questions] Using CouchDB to hold state for FSM - pros and cons?

Jan Lehnardt <>
Sun May 8 18:35:06 CEST 2011


On 2 May 2011, at 09:52, Joe Armstrong wrote:

> CouchDb will store all the data forever, which is probably not what you want. Scalaris or Riak 
> sounds like a better fit.

CouchDB is well capable of deleting data if you ask it to :)

I agree with the other comments Joe and Ulf made, though.

Cheers
Jan
-- 


> 
> /Joe
> 
> 
> On Mon, May 2, 2011 at 8:56 AM, David Mitchell <> wrote:
> Hi all,
> 
> 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 solution ;->
> 
> 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
> 
> David Mitchell
> 
> _______________________________________________
> erlang-questions mailing list
> 
> http://erlang.org/mailman/listinfo/erlang-questions
> 
> 
> _______________________________________________
> erlang-questions mailing list
> 
> http://erlang.org/mailman/listinfo/erlang-questions




More information about the erlang-questions mailing list