Newbies What Next ? News Forums Calendar


News Sections
General News (3987/0)
Reviews (636/0)
Press Releases (465/0)
Distributions (197/0)
Software (906/0)
Hardware (537/0)
Security (192/0)
Tutorials (356/0)
Off Topic (181/0)

User Functions


Don't have an account yet? Sign up as a New User

There are no upcoming events

Apache CouchDB

Apache CouchDB

Apache CouchDB, commonly referred to as CouchDB, is an open source, document-oriented, non-relational database management server accessible using a RESTful JavaScript Object Notation (JSON) API. The database can be queried and indexed in a MapReduce fashion using JavaScript. If you are looking for a relational database, a replacement for all databases, or an object-oriented datbase, CouchCB is not for you.

It is written in the Erlang programming language which has an emphasis on fault tolerance. CouchDB borrows from NoSQL and is designed for local replication and to scale horizontally across a wide range of devices.

CouchDB is a peer based distributed database system. Any number of CouchDB hosts (servers and offline-clients) can have independent "replica copies" of the same database, where applications have full database interactivity (query, add, edit, delete). When back online or on a schedule, database changes are replicated bi-directionally

CouchDB is supported by commercial enterprises Couchbase and Cloudant. It is used in large and small organizations for a variety of applications where a traditional SQL database is not the best solution for the problem at hand.

 CouchDB 1.5.1

Free to download


Apache License 2.0

Apache Software Foundation


System Requirements
Spidermonkey 1.7
Erlang 5.6.0 or higher
ICU 3.0 or higher
cURL 7.15.5 or higher

Wiki, FAQ, Mailing Lists, CouchDB - the Definitive Guide, NoSQLDatabases, Scaling CouchDB, Planet CouchDB, Twitter, The Ruby Reflector

Selected Reviews:

Features include:

  • Futon, a browser based graphical user interface
  • Document storage - CouchDB stores documents in their entirety. You can think of a document as one or more field/value pairs expressed as JSON. Field values may be strings, numbers, dates, or even ordered lists and associative maps. Every document in a CouchDB database has a unique id and there is no required document schema
  • ACID Semantics - Like many relational database engines, CouchDB provides ACID semantics. It does this by implementing a form of Multi-Version Concurrency Control (MVCC) not unlike InnoDB or Oracle. That means CouchDB can handle a high volume of concurrent readers and writers without conflict
  • Map/Reduce Views and Indexes - To provide some structure to the data stored in CouchDB, you can develop views that are similar to their relational database counterparts. In CouchDB, each view is constructed by a JavaScript function (server-side JavaScript by using CommonJS and SpiderMonkey) that acts as the Map half of a MapReduce operation. The function takes a document and transforms it into a single value which it returns. The logic in your JavaScript functions can be arbitrarily complex. Since computing a view over a large database can be an expensive operation, CouchDB can index views and keep those indexes updated as documents are added, removed, or updated. This provides a very powerful indexing mechanism that grants unprecedented control compared to most databases
  • Robust, incremental replication with bi-directional conflict detection/resolution - this means multiple replicas can have their own copies of the same data, modify it, and then sync those changes at a later time. The replication framework offers:
    • Master to Slave replication
    • Master <--> Master replication
    • Filtered replication
    • Incremental replication with bi-directional conflict detection/resolution
  • REST API - CouchDB treats all stored items (there are others besides documents) as a resource. All items have a unique URI that gets exposed via HTTP. REST uses the HTTP methods POST, GET, PUT and DELETE for the four basic CRUD (Create, Read, Update, Delete) operations on all resources. HTTP is widely understood, interoperable, scalable and proven technology. A lot of tools, software and hardware, are available to do all sorts of things with HTTP like caching, proxying and load balancing
  • Excellent data integrity/reliability utilizing MVCC
  • Stores BLOBs (Binary Large Objects) natively
  • Effectively no storage limit
  • Native SSL support
  • Easy installation on many platforms

Futon in action

Return to Document-Oriented Databases Home Page

Bookmark and Share

Last Updated Monday, May 26 2014 @ 10:47 AM EDT

We have written a range of guides highlighting excellent free books for popular programming languages. Check out the following guides: C, C++, C#, Java, JavaScript, CoffeeScript, HTML, Python, Ruby, Perl, Haskell, PHP, Lisp, R, Prolog, Scala, Scheme, Forth, SQL, Node.js (new), Fortran (new), Erlang (new), Pascal (new), and Ada (new).

Group Tests
All Group Tests

Top Free Software
5 Office Suites
7 Document Processors
6 Lean Desktops
6 Desktop Search
9 Project Management
9 Groupware Apps
14 File Managers
10 Databases
21 Backup Tools
21 DVD Tools
21 Window Managers
21 Productivity Tools
9 Terminal Emulators
21 Financial Tools
21 Text Editors
21 Video Emulators
21 Home Emulators
42 Graphics Apps
6 CAD Apps
42 Scientific Apps
10 Web Browsers
42 Email Apps
12 Instant Messaging
10 IRC Clients
7 Twitter Clients
12 News Aggregators
11 VoIP Apps
11 Remote Display Apps
42 Best Games
42 More Games
21 More Games
21 Notable Games (1)
21 Notable Games (2)
21 Notable Games (3)
8 ASCII Games
9 Educational Games
42 Audio Apps
42 Video Apps
6 Screencasting Apps
80 Security Apps
9 System Monitoring
6 Family History Apps
11 PDF Tools
6 Music Servers
6 Collection Managers
7 Calculator Apps
8 Geometry Apps
Free Console Apps
14 Multimedia
8 Compilers
9 IDEs
9 Debuggers
7 Revision Control Apps
6 Doc Generators
'Free' Proprietary
21 Closed-Source Apps
Top Commercial Apps
42 Games
Free Web Software
21 Web CMS
14 Wiki Engines
8 Blog Apps
6 eCommerce Apps
5 Human Resource Apps
10 ERP
10 CRM
6 Data Warehouse Apps
8 Business Intelligence
6 Point-of-Sale

All Group Tests

Other Articles
Migrating from Windows
Back up your data
Distribution Guide
Distro Portal Pages
20 Free Linux Books
Running Linux Under Windows

Older Stories
Friday 03/06
  • Raspberry Pi 2 review (0)

  • Sunday 02/22
  • Chess in a Few Bytes (0)
  • Learn the Art of Computer Programming With These Great Free Beginner Books (2)
  • CD Audio Grabbers (0)

  • Monday 01/19
  • fitlet is a tiny fanless PC full of openness (0)

  • Sunday 01/18
  • MintBox Mini gives Linux users a pocket-sized PC (0)
  • 6 Invaluable Assembly Books (0)

  • Wednesday 01/14
  • Why Mac users donít switch to Linux (0)
  • MIPS Creator CI20 review (0)

  • Tuesday 01/13
  • Getting a Time Without NTP (0)

  • Vote

    What Linux distribution do you run on your main computer?

    634 votes | 3 comments

    Built with GeekLog and phpBB
    Comments to the webmaster are welcome
    Copyright 2009 - All rights reserved