incubator-couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ryan Zec <bas...@gmail.com>
Subject Re: CouchDB vs RavenDB (Specific features)
Date Mon, 27 Jun 2011 14:50:25 GMT
All,

I have been looking at a number of options for data storage for video game
meta data (high score lists (daily, weekly, monthly, all time, etc...),
other stats) and from what I can see I think the best option would be a
NoSQL Database.  The three major contenders so far are RavenDB, CouchDB, and
MongoDB.  I really like RavenDB however having to maintain one to multiple
windows server can be a bit expensive and I don't feel that RavenDB/Windows
would be much more stable than CouchDB/Linux or MongoDB/Linux to warrent the
cost.  I also don't quite know if I am going to developing the web
infrastructure in ASP.NET <http://asp.net/> (if i did, it would make RavenDB
the easy choice for me).  That said there are a number of features of
RavenDB that I really like and was wondering if it was CouchDB has some of
these features in one way or another:

*Transactions
*This is kind of important for me.  An example would be sending scores to
the database.  When someone sends a score to the database, first I am going
to store that score as its own entity.  Then I am going to want to update
the record that stores the total for the day, week, month, etc...  If any
one of these updates fail, I don't want to any of the updates to save
(saving the insert is fine).  Is there a way to do this for CouchDB?

*Writing To Disk
*I really like that RavenDB by default writes to disk as it makes sure that
when data is sent to the server, the data will be there even if there is a
power outage or some other event that happens that is out or your control.
I would rather sacrifice a little write performance to maintain a much
better chance that data is not lost.  While that data I am storage is not
super mission critical (like payment information), it is still pretty
important to the players of the game and important if we want the meta game
to be successful.  Can CouchDB configured to write to disk instead of memory
(or does it do that be default)?

*Sharding
*From my understanding, CouchDB supports replication but not sharding out of
the box.  Are there any good sharding solutions for CouchDB?

*Auto Indexing
*One thing that is really nice with RavenDB is that is has auto index where
if you use an index that is not manually create a lot, RavenDB will
automatically turn the temporary index into an real index for you.  Can
CouchDB do this?

Any information about these features would be great.

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message