N1QL 查询与 couch base 中的多键值查询

N1QL queries vs multi key value queries in couch base

我们正在使用 couch base node.js SDK 我们正在从外部服务获取 ID 列表(可能是 200-500 个 ID),我们需要从我们的存储桶中获取文档,这些文档根据各种属性进行排序、过滤和分页。

问题是最好的方法是什么? 1 N1QL 查询,"SELECT x,y,z FROM docs WHERE docs.id IN [list of ids dynamically set] ORDER BY docs.title LIMIT 10 OFFSET 50"

或创建多 KV 查询并在节点应用程序本身中进行排序和过滤。

在搜索 ID 列表时,索引会给我们任何值吗?

您可以在 N1QL 中使用 USE KEYS。如果需要附加条件,您还可以添加 WHERE 子句。

SELECT x,y,z
FROM docs
USE KEYS [list of ids dynamically set]
ORDER BY docs.title
LIMIT 10
OFFSET 50;