Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
User Journal

Journal beachdog's Journal: Mini review of Couchdb: The definitive guide

Mini-review of:
Couchdb: The Definitive Guide âoeTime to Relaxâ
by
J. Chris Anderson, Jan Lehnardt and Noah Slater
Published by
O'Reilly Media, Inc., Sebastopol, CA.
Copyright 2010, ISBN 978-0-596-15589-6, Price $39.99.
reviewed by Lee McKusick
02/24/10

Couchdb is an open source free document oriented data storage and retrieval system.
It stores data in key:value blocks. It is a looser storage style than a relational data base.

It uses the http protocol to send instructions and data to couchdb. The administrative interface futon is a web page.
The data returned by couchdb is usually formated in the Javascript object notation (JSON). An example is {"ok":true}

It is part of a series of Apache.org programming projects to provide free software tools for large scale web computing

Couchdb: The Definitive Guide is an open book. The text can be read at http://books.couchdb.org/relax

Couchdb can be set up on a single server and it is designed to scale up to serve many users and run on many server computers.

In a relational database, there is indexing, sorting and selecting as the feature operations.

For parallel computing, as Couchdb provides it, the indexing and sorting job is split into two parts.

  First the program maps the job out to all the individual computers. Couchdb does the map step by means of a special view document. This view document is sent out to each individual computer. The view document document uses a meta language to specify what will be selected and sorted in this particular view of this particular grouping of documents. The view document tells each individual computer running an instance of Couchdb how to sort and index the specific data on that computer.

The second part of the parallel computing task is to collect up the indexed data from the individual computers and reduce the multiple lists down to one list.

  (Now I am not sure if I understand couchdb yet, but here is my guess). Couchdb does two things, first couchdb organizes data items by version. Both the original and the modified version are kept. One thing couchdb does is it sends the latest version of a file out to all the machines that do not have the latest version. Couchdb synchronizes all the copies of the data. Does it actually merge index files from different computers? I don't quite understand yet.

A related and complimentary system is Hadoop, which is a free and open source implementation of the map and reduce parallel computing system that has been patented by Google

The recommended method of installing couchdb is to get the pre-compiled packages for your particular version of Linux or Mac computer.

This discussion has been archived. No new comments can be posted.

Mini review of Couchdb: The definitive guide

Comments Filter:

I've noticed several design suggestions in your code.

Working...