[
https://issues.apache.org/jira/browse/COUCHDB-244?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Paul Joseph Davis updated COUCHDB-244:
--------------------------------------
Skill Level: Committers Level (Medium to Hard)
> Striped queries
> ---------------
>
> Key: COUCHDB-244
> URL: https://issues.apache.org/jira/browse/COUCHDB-244
> Project: CouchDB
> Issue Type: New Feature
> Components: Database Core
> Reporter: Frederik Fix
> Attachments: striped_queries.diff
>
>
> I have implemented striped queries, where you can specify multiple
> startkey/endkey ranges in a single request. As a nice side effect this allows
> faceted search (for discrete keys). Heres an example:
> Say I have the following map function:
> function() {
> emit([doc.rooms, doc.price], doc);
> }
> where doc.rooms and doc.price are both integers. Now lets say i want to find
> every document with a number of rooms between 2 and 4 and a price between 100
> and 1000. I can then do the following query:
> db.view("my_view",{},{stripes: [{startkey: [2, 100], endkey: [2, 1000]},
> {startkey: [3, 100], endkey: [3, 1000]}, {startkey: [4, 100], endkey: [4,
> 1000]}]});
> If the view included a reduce function that would work too.
> As you can probably see this patch introduced a change to the JS API (but not
> the HTTP). The keys parameter is now a hash which can either take a keys
> param or a stripes. The keys param works as before. The stripes param takes
> an array of hashes each having a startkey, endkey key.
> The state of the patch is still somewhat raw, with no error checking on the
> stripes part of the API. Furthermore it might be useful to extend the limit,
> skip and descending options to the stripes.
> The patch is against the current trunk version (rev 742925) and all tests
> pass.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.