CouchDB:性能动态和静态内容

时间:2016-01-21 17:08:11

标签: performance dynamic static couchdb

在我的CouchDB中,我保存了1000个文档,每个文档都在这里 有动态和静态的内容。 让我们说一些具有随机静态内容和动态内容的文档 喜欢"最后访问日期","访问次数"等。 每次读取的服务器端例程都会更改动态内容 访问。静态内容在创建后永远不会更改。

我的问题是:

  1. 如果我将动态和静态内容存储在单独的文档中,是否会影响阅读内容的性能?

  2. 我对文档的静态内容有多个视图。是意见 如果我更改动态内容,会更新?

  3. 提前致谢, 的Sascha

2 个答案:

答案 0 :(得分:2)

是的,是的。

我的意思是:如果在上次调用视图后对象已经更新,则下次调用视图时,地图函数将应用于您更改的对象(并且减少的函数将应用于"减少已经失效的分支"。

在实际设置中测试您的解决方案。如果此更新对您的应用程序性能有影响,那么,是的,将更多动态内容保存在不同文档中可能是个好主意。

但是请注意,只有在两个视图调用之间存在大量更新文档的情况下,或者在单个文档的处理很长或发出许多密钥的情况下,这可能是必要的。

答案 1 :(得分:2)

继Aurélien的回答之后,如果您决定拆分“静态”和“动态”内容,您应该考虑通过为每次访问创建一个简单的日志文档来实现,而不是为每个“静态”创建一个“动态”对应文件'文件。这将减少对读取的争用。然后,您可以使用reduce函数对数据进行分组以供查看,并且您可以定期将特定“静态”文档的日志收集到单个日志条目中。