Database Reference
In-Depth Information
▪
Client
: RESTful JSON API that allows access from any language capable of making HTTP
requests.
▪
CAP
: Eventually consistent. Replication is used to synchronize multiple copies of data on
different nodes. CouchDB features ACID semantics similar to many relational database sys-
tems.
▪
Production use
: CouchDB is not yet in a 1.0 release as of this writing, but it is used in pro-
duction in a variety of social websites and software applications. See
http://bit.ly/dn73DY
for a list of specific production instances.
▪
Additional features
: MapReduce, incremental replication, and fault-tolerance are all sup-
ported. Comes with a web console.
MongoDB
MongoDB is perhaps most similar to CouchDB. It purports to combine the best of key-value
stores, document databases, object databases, and RDBMS. That is, it shards automatically as
with a key-value store, allows JSON-based dynamic schema documents, and offers a rich query
language in the manner of a relational database.
NOTE
If you'd like to read more about MongoDB, check out the O'Reilly book MongoDB:TheDeinitive
Guide,by Kristina Chodorow and Michael Dirolf.
▪
Website
:
http://www.mongodb.org
▪
Orientation
: Document
▪
Created
: Developed at 10gen by Geir Magnusson and Dwight Merriman
▪
Implementation language
: C++
▪
Distributed
: Yes
▪
Schema
: JSON-style documents are stored, and you can use dynamic schemas.
▪
CAP
: MongoDB uses a single master for any shard, making it completely consistent.
▪
Production use
: MongoDB is used in production at SourceForge, Bit.ly, Foursquare,
GitHub, Shutterfly, Evite, The New York Times, Etsy, and many more.