CouchDB Simplicity

Average rating: ****.
(4.60, 5 ratings)

Apache CouchDB implements a reliable storage engine, webserver, and HTTP application server environment, in under 20k lines of Erlang and JavaScript source code (with an additional X lines of test code.)

I’ll show 3 related examples that strike at the core of CouchDB’s simplicity:

The CouchDB storage engine uses crash-only design to simplify operations and ensure reliability. We’ll see how the Erlang message-passing architecture makes “group commit” easy to model.

I’ll show how the Map Reduce view indexes are lazily and incrementally updated, based on the main database, so that indexing never blocks the critical write path.

I’ll also show how the the _changes feed plus MVCC update semantics allows applications to achieve crash only design.

Photo of J. Chris Anderson

J. Chris Anderson


Chris Anderson is an Apache CouchDB committer and co-author of the forthcoming O’Reilly book “CouchDB: The Definitive Guide”. He consults on large scale and custom CouchDB projects, and is also designing and evangelizing the CouchApp JavaScript framework.

Comments on this page are now closed.


John Schulz
04/14/2011 10:02pm PDT

A very well done and interesting presentation about an interesting product well desinged to fit into multi-master with serious eventual consistancy issues.

  • EnterpriseDB
  • Amazon Web Services
  • Clustrix
  • Continuent
  • Facebook
  • HTI Consultoria e Tecnologia
  • Monty Program
  • Percona
  • Rackspace Hosting
  • Schooner Information Technology
  • SkySQL
  • Xeround

Sponsorship Opportunities

For information on exhibition and sponsorship opportunities at the conference, contact Yvonne Romaine at

Media Partners Opportunities

For media partnerships, contact mediapartners@

Press & Media

For media-related inquiries, contact Maureen Jennings at

O'Reilly MySQL Conference Bulletin

To stay abreast of conference news and to receive email notification when registration opens, please sign up for the O'Reilly MySQL Conference Bulletin (login required).

Contact Us

View a complete list of O'Reilly MySQL Conference Contacts