php - mysql 大数据 按时间 统计总数 必须用count吗?
世界只因有你
世界只因有你 2017-05-16 13:11:10
0
2
556

1、想统计今日新增客户数,昨日新增客户数,以及今日跟进记录数等等,数据量很大,前面用的是加1减1的方式,但经常会出现误差,怎么解决这个统计的问题?难道必须用count吗?

世界只因有你
世界只因有你

全部回复(2)
洪涛

大数据量的统计最好不要直接在主库上搞 -- 加1减1的方式不锁表不准确,锁表影响性能,而count性能也会很差。

建议把统计功能独立成一个子系统,业务服务器通过消息队列把新增客户/删除客户的操作通知到这个统计子系统里面。

在这个子系统里面可以考虑使用时间序列数据库(比如开源的Elasticsearch)来存储,非常方便统计。即使不用专门的时间序列数据库,而直接用mysql的话,可以单独搞个mysql数据库,这样锁表来加1减1,或者count都可以,反正不是主库。

左手右手慢动作
  • 如果是自增的id可以用今天最后一个减去昨天最后一个来计算。

  • 使用的统计表加1减1

  • 使用count

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板