mySQL - 大型度量表和繁重的查询性能 - 缓存?

wax*_*cal 2 php mysql performance metrics

我有一个庞大的数据库,非常迅速地扩展,我有很多繁忙的表,记录用户行为的各个方面.

目前,我有一个工作室,用户可以看到这种用法和行为显然显示在图表等等.事情是,现在加载这些东西是非常密集的.有一个项目有80,000人使用,并需要一个年龄来加载统计数据.

现在,这些表格结构良好,并且在连接等方面编入索引.我已经有了建议并且一直在寻求最佳实践的学习,以尝试帮助最好地准备这些数据.但是,如果在查询/表优化中没有更多的范围,我还能如何加速这个密集的过程?.

我注意到大多数分析都允许您在默认情况下查看到昨天.这有帮助吗?

  1. 这是否意味着mysql上的query_cache可以缓存统计信息?如果查询明天不断结束(从而计算今天的统计数据),它会不会缓存吗?
  2. 每小时编译静态XML等更容易被引用,而不是每次都进行查询吗?
  3. 能怎样?

任何想法都非常欢迎.

Mar*_*c B 7

你想把东西分成两个数据库.一个针对插入进行了优化以捕获数据.第二个针对数据检索进行了优化.使用单个数据库处理这两个任务时,您无法执行此操作.优化大量数据插入意味着将索引完成量(基本上只是主键)减少到绝对最小值,并且在进行数据挖掘时删除键会导致性能下降.

所以...两个数据库.将所有数据捕获到插入优化的数据中.然后将当天的数据捕获计划到另一个数据库中,并在那里运行您的分析.

作为副作用,这是"直到昨天"限制的来源.今天的数据将无法使用,因为它位于单独的数据库中.