CouchDB can be queried and indexed in a MapReduce fashion using JavaScript.
Basically, a CouchDB document is an object that consists of named fields.
These field values can be anything from numbers, dates, strings, ordered lists and even associative maps.
A CouchDB database is a flat collection of these documents.
Each document is identified by a unique ID.
CouchDB provides a RESTful JSON API than can be accessed from any environment that allows HTTP requests on these documents.
CouchDB comes with a built-in Web administration console.
The console can communicate directly to the database using HTTP requests issued from the browser.
Here are some key features of "Apache CouchDB":
· Document database server, accessible via a RESTful JSON API.
· Ad-hoc and schema-free with a flat address space.
· Distributed, featuring robust, incremental replication with bi-directional conflict detection and management.
· Query-able and index-able, featuring a table oriented reporting engine that uses JavaScript as a query language.
Limitations:
· It is not:
· A relational database.
· A replacement for relational databases.
· An object-oriented database. Or more specifically, meant to function as a seamless persistence layer for an OO programming language.
What's New in This Release: [ read full changelog ]
· Added a native JSON parser
· Optional file compression (database and view index files)
· Several performance improvements, especially regarding database writes and view indexing
· Performance improvements for the built-in changes feed filters _doc_ids and _design