php - 在MySql中存储每小时更新的数据

标签 php mysql database sql-update dashboard

网站上有几千个产品列表。

目标是每 15 分钟左右在 MySql 数据库中存储每个产品的更新列表信息(浏览/喜欢/等),同时保留以前的结果。

此数据将用于显示图表,能够显示每小时、每天、每周等统计数据。

问题是,在 mysql 表中存储这些数据的最有效方法是什么?

我能想到两种方法:

1) 将每个 15 分钟更新存储为单独的记录,然后在需要时检索数据范围。这样做的问题是,该表可以快速升级为数百万张表,这似乎根本没有那么高效。

2) 对于每个 15 分钟的更新,将所需的数据( View /喜欢/等)附加到相应列中现有数据字符串的末尾,然后在检索时将该字符串分解为数组。由于没有范围,我可以存储最后更新的数据标记并从那里计算范围。这样做的问题是它可能不太可靠,并且数据字符串也会随着时间的推移而变大。

提前致谢!

最佳答案

解决方案一是迄今为止更好的答案。不用担心创建了多少行。由于某种原因,人们对表有多少行很着迷。后一个答案是,您将通过在单个记录中存储多个值来违反数据库规范化。

关于php - 在MySql中存储每小时更新的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35108202/

相关文章:

php - 选择指定id的条目,以及前后具有相同外键值的条目

PHP+AJAX 与 MySQL - 每 2 秒查询一次,在 TIME_WAIT 中太多

php - MySQL:从两个表中的任意一个删除行

c# - 数据库连接不起作用 C#

PHP PDO 准备语句缓存

php - 在 PHP5 中用多个/不同的值搜索和替换多个值?

mysql - 如何计算年份及其值(value)?

mysql - 如何根据不相关的关系过滤 Symfony 表单实体输出

mysql - 处理大型数据库表的策略

python - Mongodb查找列表中包含特定discipline_Name的所有字典并提取该字典的单个数据