Books & Videos

Table of Contents

  1. Introduction

    1. Chapter 1 Why CouchDB?

      1. Relax
      2. A Different Way to Model Your Data
      3. A Better Fit for Common Applications
      4. Building Blocks for Larger Systems
      5. Local Data Is King
      6. Wrapping Up
    2. Chapter 2 Eventual Consistency

      1. Working with the Grain
      2. The CAP Theorem
      3. Local Consistency
      4. Distributed Consistency
      5. Wrapping Up
    3. Chapter 3 Getting Started

      1. All Systems Are Go!
      2. Welcome to Futon
      3. Your First Database and Document
      4. Running a Query Using MapReduce
      5. Triggering Replication
      6. Wrapping Up
    4. Chapter 4 The Core API

      1. Server
      2. Databases
      3. Documents
      4. Replication
      5. Wrapping Up
  2. Developing with CouchDB

    1. Chapter 5 Design Documents

      1. Document Modeling
      2. The Query Server
      3. Applications Are Documents
      4. A Basic Design Document
      5. Looking to the Future
    2. Chapter 6 Finding Your Data with Views

      1. What Is a View?
      2. Efficient Lookups
      3. The View to Get Comments for Posts
      4. Reduce/Rereduce
      5. Wrapping Up
    3. Chapter 7 Validation Functions

      1. Document Validation Functions
      2. Validation’s Context
      3. Writing One
      4. Wrapping Up
    4. Chapter 8 Show Functions

      1. The Show Function API
      2. Side Effect–Free
      3. Design Documents
      4. Querying Show Functions
      5. Etags
      6. Functions and Templates
      7. Learning Shows
      8. Using Templates
      9. Writing Templates
    5. Chapter 9 Transforming Views with List Functions

      1. Arguments to the List Function
      2. An Example List Function
      3. List Theory
      4. Querying Lists
      5. Lists, Etags, and Caching
  3. Example Application

    1. Chapter 10 Standalone Applications

      1. Use the Correct Version
      2. Portable JavaScript
      3. Applications Are Documents
      4. Standalone
      5. In the Wild
      6. Wrapping Up
    2. Chapter 11 Managing Design Documents

      1. Working with the Example Application
      2. Installing CouchApp
      3. Using CouchApp
      4. Download the Sofa Source Code
      5. Deploying Sofa
      6. Set Up Your Admin Account
      7. Configuring CouchApp with .couchapprc
    3. Chapter 12 Storing Documents

      1. JSON Document Format
      2. Beyond _id and _rev: Your Document Data
      3. The Edit Page
      4. Saving a Document
      5. Wrapping Up
    4. Chapter 13 Showing Documents in Custom Formats

      1. Rendering Documents with Show Functions
      2. Dynamic Dates
    5. Chapter 14 Viewing Lists of Blog Posts

      1. Map of Recent Blog Posts
      2. Rendering the View as HTML Using a List Function
  4. Deploying CouchDB

    1. Chapter 15 Scaling Basics

      1. Scaling Read Requests
      2. Scaling Write Requests
      3. Scaling Data
      4. Basics First
    2. Chapter 16 Replication

      1. The Magic
      2. Simple Replication with the Admin Interface
      3. Replication in Detail
      4. Continuous Replication
      5. That’s It?
    3. Chapter 17 Conflict Management

      1. The Split Brain
      2. Conflict Resolution by Example
      3. Working with Conflicts
      4. Deterministic Revision IDs
      5. Wrapping Up
    4. Chapter 18 Load Balancing

      1. Having a Backup
    5. Chapter 19 Clustering

      1. Introducing CouchDB Lounge
      2. Consistent Hashing
      3. Growing the Cluster
  5. Reference

    1. Chapter 20 Change Notifications

      1. Polling for Changes
      2. Long Polling
      3. Continuous Changes
      4. Filters
      5. Wrapping Up
    2. Chapter 21 View Cookbook for SQL Jockeys

      1. Using Views
      2. Look Up by Key
      3. Look Up by Prefix
      4. Aggregate Functions
      5. Get Unique Values
      6. Enforcing Uniqueness
    3. Chapter 22 Security

      1. The Admin Party
      2. Basic Authentication
      3. Cookie Authentication
      4. Network Server Security
    4. Chapter 23 High Performance

      1. Good Benchmarks Are Non-Trivial
      2. High Performance CouchDB
      3. Bulk Inserts and Mostly Monotonic DocIDs
      4. Bulk Document Inserts
      5. Batch Mode
      6. Single Document Inserts
      7. Hovercraft
      8. Trade-Offs
    5. Chapter 24 Recipes

      1. Banking
      2. Ordering Lists
      3. Pagination
  6. Appendixes

    1. Appendix Installing on Unix-like Systems

      1. Debian GNU/Linux
      2. Ubuntu
      3. Gentoo Linux
      4. Problems
    2. Appendix Installing on Mac OS X

      1. CouchDBX
      2. Homebrew
      3. MacPorts
    3. Appendix Installing on Windows

    4. Appendix Installing from Source

      1. Dependencies
      2. Installing
      3. Security Considerations
      4. Running Manually
      5. Running As a Daemon
      6. Troubleshooting
    5. Appendix JSON Primer

      1. Data Types
    6. Appendix The Power of B-trees

  1. Colophon