CouchDB

From Wikipedia, the free encyclopedia

Jump to: navigation, search
Apache CouchDB
logo
Original author(s) Damien Katz, Jan Lehnardt, Noah Slater, Christopher Lenz, J. Chris Anderson
Developer(s) Apache Software Foundation
Initial release 2005
Stable release 0.9.0 / 2009-03-30; 3 months ago
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.

Contents

[edit] Overview

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] Despite its low version number of 0.9, it is already in use in many software projects and web sites.[4]

[edit] References

  1. ^ View Server Documentation on wiki.apache.org
  2. ^ Apache mailing list announcement on mail-archives.apache.org
  3. ^ Re: Proposed Resolution: Establish CouchDB TLP on mail-archives.apache.org
  4. ^ CouchDB in the wild A list of software projects and websites using CouchDB

[edit] Bibliography

[edit] See also

[edit] External links

Personal tools
Languages