5

我正在考虑将 CouchBase 用于读取繁重和写入繁重的应用程序。我还需要支持基于文档的不同属性的搜索以及范围查询。

CouchBase 具有允许搜索超出键值搜索的视图,但似乎这主要是为了获取特定范围内的文档,例如。获取在两个指定键之间索引的所有文档,而不是“给我所有具有 'adventure' 的流派属性的文档”或“给我所有创建日期在 1/1/1 和 2/1/1 之间的文档”

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

4

1 回答 1

3

你绝对可以做你在那里描述的事情。您可以在 Couchbase Server 2.0 中同时使用视图。

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

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

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

于 2012-05-11T16:31:43.290 回答