couchdb-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <wikidi...@apache.org>
Subject [Couchdb Wiki] Update of "Introduction_to_CouchDB_views" by BrianCandler
Date Thu, 07 Jan 2010 09:51:31 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Couchdb Wiki" for change notification.

The "Introduction_to_CouchDB_views" page has been changed by BrianCandler.
The comment on this change is: Note about equal keys and docids.
http://wiki.apache.org/couchdb/Introduction_to_CouchDB_views?action=diff&rev1=25&rev2=26

--------------------------------------------------

  
  For queries which are not meant to actually condense the amount of information you often
can live without a reduce function. A common strategy is to get the data you are interested
to select by in into the ''key'' part and then use ''startkey'' and ''endkey'' on the result.
  
+ == Equal keys ==
+ 
+ CouchDB actually stores the [key,docid] pair as the key in the btree. This means that:
+  * you always know which document the key and value came from (it's exposed as the 'id'
field in the view result)
+  * view rows with equal keys sort by increasing docid.
+ 
+ If you assign your docids in a time-based way then you can get documents with equal keys
in a natural oldest-to-newest order. Couchdb has a feature to do this, which you can enable
in local.ini:
+ 
+ {{{
+ [uuids]
+ algorithm = utc_random
+ }}}
+ 
  == Lookup Views ==
  
- The second parameter of the ''emit()'' function can be ''NULL''. CouchDB then only stores
the key in the view. If you use the document's ID here, you can use the view as a compact
lookup mechanism and fetch the document's details, if needed, in subsequent requests.
+ The second parameter of the ''emit()'' function can be ''null''. CouchDB then only stores
the [key,docid] in the view. You can use the view as a compact lookup mechanism and fetch
the document's details, if needed, in subsequent requests or by adding parameter ''include_docs=true''
  
  == Complex Keys ==
  

Mime
View raw message