CouchDB
From Wikipedia, the free encyclopedia
Design by | Damien Katz, Jan Lehnardt, Noah Slater, Christopher Lenz, J. Chris Anderson |
---|---|
Developed by | Apache Software Foundation |
Initial release | 2005 |
Latest release | 0.9.0 / 2009-03-30 |
Written in | Erlang |
Operating system | Cross-platform |
Available in | English |
Development status | Active |
Type | Document-oriented database |
License | Apache Licence 2.0 |
Website | http://couchdb.apache.org/ |
Apache CouchDB, commonly referred to as CouchDB, is a free and open source document-oriented database written in the Erlang programming language. It is designed for extreme scalability and is easily deployed to multi-core or multi-server clusters.
Like other document-oriented database systems such as Lotus Notes, CouchDB is not a relational database management system. Instead of storing data in rows and columns, the database manages a collection of JSON documents (early versions of CouchDB used XML). As a result, it is often compared with column-oriented datastores like Google's BigTable; however, CouchDB is not a column-oriented store, since the documents in a collection need not share a schema.
Views are defined with aggregate functions and filters and are computed in parallel, much like MapReduce. Views are generally stored in the database and their indexes updated continuously, although queries may introduce temporary views.
CouchDB exposes a RESTful HTTP API and a large number of pre-written clients are available. Additionally, a plugin architecture allows for using different computer languages as the view server such as JavaScript (default), PHP, Ruby and Python. Support for other languages can be easily added.
CouchDB supports a view system using external socket servers and a JSON based protocol.[1] As a consequence, view servers have been developed in a series of languages.
CouchDB was accepted into Apache incubation in February 2008[2] and became a top level project in November 2008.[3]
Contents |
[edit] References
- ^ View Server Documentation on wiki.apache.org
- ^ Apache mailing list announcement on mail-archives.apache.org
- ^ Re: Proposed Resolution: Establish CouchDB TLP on mail-archives.apache.org
[edit] Books
- Anderson, J. Chris; Slater, Noah; Lehnardt, Jan (July 2009), CouchDB: Rough Cuts Version (1st ed.), O'Reilly Media, pp. 300, ISBN 0-596-15816-5, http://oreilly.com/catalog/9780596158163/
[edit] See also
- Document-oriented database
- EXist Open source native XML database
- Mnesia
[edit] External links
|