如何为流量分析系统构建合适的数据库?

Ric*_*rdo 6 php mysql

如何为分析服务构建适当的结构?目前我有一个表存储有关每个用户访问该页面的用户ID的数据,所以稍后我的客户将能够查看特定日期的统计数据.

我今天想了一下,我想知道:假设我有1000个用户,每个人每天在他们的网站上有大约1,000次展示,这意味着我每天会在一张桌子上获得1,000,000(1M)条新记录.2个月左右(表格达到6000万条记录)后如何运作?

我只是认为经过一段时间后会有如此多的记录,以至于提取数据的PHP查询会非常繁重,速度慢并占用大量资源,这是真的吗?以及如何防止这种情况?

我的一个朋友在做类似的事情,他会为每个客户制作一张新桌子,这是正确的方法吗?

谢谢!

lin*_*asy 1

考虑此链接到 Google Analytics Platform 组件概述页面,并特别注意数据写入数据库的方式,仅基于整个系统的架构。

您可以将所有内容写入日志文件,然后稍后处理日志(也许在流量不太高的时候),而不是立即将所有内容写入数据库。最终,您仍然需要对数据库进行所有这些写入,但是如果您将它们一起批处理并在这种负载更容易忍受的时候执行它们,您的系统将会更好地扩展。