Sessions at OSCON Data 2011 about JSON and NoSQL in Oregon Ballroom 204

Wednesday 27th July 2011

CouchDB is a document-oriented database that uses JSON documents, has a RESTful HTTP API, and is queried using map/reduce views. Each of these properties alone, especially MapReduce views, may seem foreign to developers more familiar with relational databases. This tutorial will teach web developers the concepts they need to get started using CouchDB in their projects. CouchDB’s RESTful HTTP API makes it suitable for interfacing with any programming language. CouchDB libraries are available for many programming languages and we will take a look at some of the more popular ones.

Several techniques and approaches to scaling CouchDB will be discussed. You will learn about CouchDB’s peer-based, bi-directional replication, how to handle conflicts, and the concept of eventual consistency. We will discuss the how CouchDB relates to other SQL alternatives, what problems CouchDB is good at solving, the trade-offs as compared to other tools, and what makes CouchDB unique. We will also cover authentication, authorization, show functions, list functions. We will take a brief look at ways of distributing CouchDB including to mobile devices and CouchApps (web applications built using CouchDB, JavaScript, and HTML5).