CouchBase范围搜索

Kai*_*ash 5 search nosql couchbase

我正在考虑使用CouchBase进行非常重读和重写应用程序.我还需要支持基于文档的不同属性以及范围查询进行搜索.

CouchBase具有允许搜索超出键值搜索的视图,但似乎这主要是为了使文档在一定范围内,例如.获取在两个指定键之间索引的所有文档,而不是"将所有具有genre属性的文档提供给'adventure'"或"给我所有创建日期介于1/1/1和2/1/1之间的文档"

有没有办法在没有外部索引的情况下实现我想要的东西?

Mat*_*ron 3

您绝对可以执行您在那里描述的两项操作。您可以使用 Couchbase Server 2.0 中的视图来完成这两项操作。

例如,需要搜索日期范围时的常用技术是从视图中的地图函数发出 JSON 数组。这会给你类似的东西: [2012, 5, 11, 16, 27, 41]

由于当您查询视图时,JSON 数组是起始键和结束键的有效位置,因此您可以指定该范围。

同样,使用 doc _id 从地图函数中提取要发出的所有属性。然后使用Couchbase SDK之一,您可以在查询时设置包含文档选项,并且将自动获取文档。