0

我想存储在 couhbase 中的一种文档可以在各种字段组合上进行查询。

我应该有多个视图对应于每种类型的查询,还是有一个视图在所有查询中发出所有相关字段?

发出以下键的视图:

[blah_id, col1]
[blah_id, col2, timestamp]
[blah_id, timestamp]
[blah_id]

V/s

生成密钥的单个视图

[blah_id, col1, col2, timestamp]

(然后在特定查询中使用您不关心的列的最小值和最大值)

4

1 回答 1

2

在做出决定之前,您应该了解几个方面:

  1. 可维护性方面。在定义单个视图时,我怀疑您将拥有该视图的多个消费者……如果您需要更改该视图结构怎么办?这意味着更改将对所有现有的视图使用者产生影响。但是,如果您定义为多个视图(每个特定功能消费者一个)......对其中一个视图的更改将与其他消费者隔离。

  2. 性能方面。这取决于您的数据大小。如果您有一个视图,您应该询问它将返回多少条目与多个视图。与多个(可以说是更小的条目)视图相比,这会更慢吗?

所以如果我是你,我会进行一些规模和性能测试来选择多视图和单视图方法。根据消费者可维护性方面,我个人更喜欢更多的视图。

于 2014-12-22T17:45:32.350 回答