CouchDB
CouchDB is an open-source NoSQL database. It mainly focuses on ease of use. It was developed by the Apache software foundation.
Apache CouchDB is one of the latest breed of databases. CouchDB is a multi-master application released in 2005 and became an Apache project in 2008. It is written in the Erlang programming language. It is basically a document-oriented database and within each document fields are stored as key-value maps. Fields can be either a simple key/value pair, list, or map.
CouchDB uses HTTP protocol for API. It uses javascript as its query language to transform the documents and JSON to store data.
Why CouchDB ?
CouchDB is used as it very powerful to query your data. It also has a schema-free document model which makes it more friendly with the common application and makes it easy to use.
- The data we store is in a flexible document-based structure which eliminates the need to worry about the structure of your data, either before or during your application development.
- It provides users with powerful data mapping, which gives access for filtering of information, combining and querying.
- CouchDB has an HTTP-based REST API, which helps to communicate with the database easily.
- Methods like GET, PUT, DELETE are very easy to understand, use and develop with.
CouchDB Data Model :
- In CouchDB each database is a collection of independent documents which makes the outermost data structure/container of it.
- Each document maintains its own data and self-contained schema.
- To merge the differences occurred while the databases were disconnected, Document metadata contains revision information.
- To avoid the need to lock the database field during writes, it implements multi version concurrency control.
Installing CouchDB :
- Download CouchDB software from official website.
- Install the downloaded software.
- Now visit the link http://127.0.0.1:5984/.
- To interact with CouchDB web interface go to the link http://127.0.0.1:5984/_utils/.
Now, you have successfully installed CouchDB.
Please Login to comment...