CouchDB - 访问/事件记录的首选结构
Posted
技术标签:
【中文标题】CouchDB - 访问/事件记录的首选结构【英文标题】:CouchDB - Preferred structure for access/event logging 【发布时间】:2016-03-03 17:06:21 【问题描述】:我刚刚开始使用 CouchDB,正在寻找一些最佳实践。我当前的项目是一个类似于 CMS/Wiki 的工具,其中包含许多内容页面。到目前为止,这似乎很适合 CouchDB。接下来我要做的是跟踪每次访问网站上的页面。
每个访问日志都应该包含时间戳、被访问页面的 URI 以及访问它的用户的 UUID。在 CouchDB 中构建此访问日志信息的最佳方式是什么?任何给定页面每天可能被访问多达 100 次。
到目前为止我的一些想法:
-
每页 1 个 CouchDB 文档,包含所有访问日志。
每个日志 1 个 CouchDB 文档。
如果每个日志只有一个文档,是否所有日志都应该在它们自己的 CouchDB 数据库中以保持主数据库更清洁?
【问题讨论】:
【参考方案1】:绝对不是第一选择。因为 CouchDb 是只追加存储,每次更新文档时,都会创建具有相同 ID 但不同修订版的新文档。如果您在一天内对一个页面有 100 次点击,则会创建 100 个新文档,因此您的数据库将很快变得庞大。所以最好使用第二个选项。
至于日志的单独数据库,这取决于您的数据以及您打算如何使用它。如果您决定将所有数据保存在同一个位置,则可以仅为您的日志创建单独的视图。
【讨论】:
以上是关于CouchDB - 访问/事件记录的首选结构的主要内容,如果未能解决你的问题,请参考以下文章