{"userpreferences": {
"displayName": "Don'tHitOnMe",
"gender":"DoNotDisplay",
"siteTheme":"Springtime",
"postsDisplayed":"25",
"keepLoggedIn":"True"
}
}
LISTING 29.2 Matthew’s Preferences
Click here to view code image
{"userpreferences": {
"siteTheme":"TieDye",
}
}
CouchDB
CouchDB began in 2005 as a self-funded personal project of Damien Katz. In
2008, it was given to Apache, where development continues. The goal of
CouchDB is to provide a database useful for serving web applications. The
emphasis is on scalability and fault tolerance while using commodity
hardware. (Couch is an acronym for cluster of unreliable commodity
hardware.) This is not an easy task, but when done successfully, it lowers
costs.
CouchDB uses a RESTful HTTP API that is designed from the beginning to
be used on and for the web. All stored items have a unique uniform resource
identifier (URI), and full create, read, update, and delete (CRUD) functions
are available directly using standard HTTP calls, making CouchDB very easy
to integrate into web applications. These calls can be made from a browser or
from a command line, using a tool like cURL, which is available on many
typical server platforms, including Ubuntu.
A nice feature of CouchDB is that, unlike many NoSQL options, it is
designed with the ability to include ACID compliance. This makes it possible
to use CouchDB with more consistency-sensitive data.
CouchDB is written in Erlang, which is a language designed for concurrency.
This makes CouchDB even better suited for use in a concurrent distributed
system. CouchDB is designed to store JSON document objects.
CouchDB is used by several software and web applications, including many