【发布时间】:2015-08-15 03:04:38
【问题描述】:
假设我有一个包含 10000 个用户的数组,对于每个用户,我需要存储他们最近执行的 100 个操作,以及该操作的时间。
这些数据也存储在 mysql 数据库中。 每秒钟,我需要检查 100 个用户操作,这意味着我需要为每分钟 100 个用户迭代所有这 100 个操作和操作时间。
那么哪个更快?每分钟查询数据库 100 次?或检查这些数组 100 次。
我在这里要问的是,一般来说,如果您处于需要每秒对大量数据(10000*200 = 2,000,000 条记录)执行大量数据库查询(每秒 100 次)的情况),您还可以将该数据存储在数组中并在这些数组中进行本地搜索,您会选择哪种方法?还假设在数组和数据库中的搜索都是优化的方法。 (例如它不是冒泡数组排序和搜索;))
【问题讨论】:
-
我们不知道。您必须对其进行基准测试。例如运行 10,000 个 sql 查询的时间是多少?加载/解析/扫描数组10000次的时间?
-
这是与this one 不同的问题吗?
标签: php mysql arrays performance optimization