couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Norman Rosner <>
Subject Re: Chaining of views/MapReduce
Date Sat, 20 Feb 2010 18:30:23 GMT

Am 19.02.2010 um 16:10 schrieb J Chris Anderson <>:

> On Feb 17, 2010, at 5:29 PM, Norman Rosner wrote:
>> On 17.02.2010, at 23:15, Mario Scheliga wrote:
>>> Hi Norman,
>>> updating a document from map-function its not possible and seems  
>>> to be the wrong way.
>>> Thinking of map function processing docs seperatly (sandbox), so  
>>> you are able to
>>> spread the execution over thousand of servers ;-)
>> True that! But: suppose I'm just creating/updating one document per  
>> couchdb-instance, that should be ok, right? Because after that, I  
>> can easily get all the result documents and merge them together. I  
>> would do it in as similar way in Hadoop. And as far as I read in  
>> the loooong archives of this list, I'm not the only one who wants  
>> to do such things.
> The "proper" way to do this is to have a simple CouchDB map reduce  
> view that is the 1st phase of your chain.
> Then query the view with group=true and store the output into an  
> empty db (one document per row).
> Now you can write another view on top of the derived db to do the  
> second phase (sort by value, etc).
> Chris

Hey Chris

in the end I did in a similar way but I was wondering if I could do it  
in the map function. But I'm aware now that it is not possible. As I  
wrote in the beginning: Im just getting started with CouchDB. But  
thanks for the proper Way explanation.

>> cheers,
>> norman
>>> greez
>>> mario
>>> Am 17.02.2010 um 21:04 schrieb Norman Rosner:
>>>> Hi folks,
>>>> first, I'll have to admit that I'm kinda new to JavaScript and of  
>>>> course to CouchDB.  Second I just reuse the subject so I hope it  
>>>> also pops up if anybody searches for it.
>>>> As I read chaining of views is not possible yet but it's  
>>>> mentioned couple of times on the mailing list. So here's what I  
>>>> want to do:
>>>> 1. Create a list of unique labels/tags/whatever through all of  
>>>> the documents (e.g. all nouns that are in the documents)
>>>> 2. Extract all labels/tags/nouns of each document and check them  
>>>> again the before calculated result in some kind of way
>>>> For the second point I created a view which works except of the  
>>>> checking against the result from point 1. Now I'm trying to solve  
>>>> point 1.
>>>> And here my questions begin: How can I create/update a document  
>>>> from inside of a map function? As I think of it, I'll have to  
>>>> make a HTTP GET to load the document in each iteration. I found  
>>>> some HTTP stuff in the test.js in the test folder, but I'm not  
>>>> quite sure how to use it and if it's the right way of thinking?  
>>>> Is there any way of using global variables throughout  
>>>> 'couchapps' (e.g. through the lib folder and thelike)?
>>>> Any help of you CouchDB kings would be greatly appreciated!
>>>> Cheers,
>>>> norman
>>> --
>>> Sourcegarden GmbH HR: B-104357
>>> Steuernummer: 37/167/21214 USt-ID: DE814784953
>>> Geschaeftsfuehrer: Mario Scheliga, Rene Otto
>>> Bank: Deutsche Bank, BLZ: 10070024, KTO: 0810929
>>> Schoenhauser Allee 51, 10437 Berlin

View raw message