我一直在寻找这个。我正在运行 CouchDB 2.0,并且了解在检索一组数据时,我可以在使用传统视图或更新的 Mango 查询之间做出选择。
所以我目前正在使用 Mango 查询语法并获得我需要的结果 - 但是我现在需要实现分页。在 CouchDB 2.0 中研究分页时,我发现围绕该主题进行了精彩的讨论:
http://docs.couchdb.org/en/2.0.0/couchapp/views/pagination.html
它表明对大型数据集进行分页的最佳方法不是使用跳过,而是使用 startkey 并执行一种从一页到下一页的链表分页。
所以这对我来说很有意义并且适用于我的应用程序,但是当我转向 Mango/_find API 时,我看不到任何传入 startkey 的方法:
http://docs.couchdb.org/en/2.0.0/api/database/find.html
令人困惑的是,它确实接受了一个跳过参数,但没有 startkey。
有人能解释这里发生了什么吗?Mango/_find 中的性能特征是否有很大不同,以便我们可以安全地在大型数据集上使用 skip?或者我们应该在遍历更大的数据集合时使用带有 startkey 的视图?
在最近的任何文档 AFAIK 中似乎都没有回答这个特定的问题。任何帮助将不胜感激。