0

1) 我的第一个问题是关于使用 mongoDB 存储统计信息的最佳解决方案

如果我想存储大量统计数据(假设特定站点上的访问者 - 每小时一次),像 mongoDB 这样的 noSQL DB 似乎工作得很好。但是如何构建这些表以充分利用 mongoDB?

每次用户访问该页面时,我都会将该特定对象 ID(例如 SITE_MONTH_DAY_YEAR_SOMEOTHERFANCYPARAMETER)的访问者数量增加一。但是如果数据库变大(>10g),那会不会变慢(就像在 mysql 上一样),因为它必须搜索 object_id 并更新它?更新数据时数据是否始终准确(afaik mongoDB 没有任何表锁定?)

为每位访客插入一行会不会更快?(更准确)另一方面,使用我的第一个解决方案读取统计数据会更快,不是吗?(特别是在按站点/日期/[...]“分组”方面)。

2)对于每个计算的访问者,我想在两个用户之间进行转账。至关重要的是,这些转移始终是准确的。你将如何做到这一点?我在考虑每小时从 mongoDB.statistics 中挑选过去一小时的访问者数量并更新用户余额的 cron。我更喜欢在计算用户时直接/实时执行此操作 - 但是如果成千上万的访问者同时调用脚本会发生什么情况,是否存在余额错误的风险?

4

0 回答 0