我有一个店员管理系统,店员1W,表members,店员有推荐机制(店员几乎是级别无限制的推荐)。
还有一个店员的销售业绩表,member_sales,每一个店员销售一笔,就会向member_sales写一条数据。
现在我每天要统计一个店员和他的所有下级店员每天的营业额,如果达到我的业绩要求,就会给他发奖金。
现在数据不太多,我开了5个crontab 每隔一小时统计2000个店员,5小时完事儿。
但是我怕店员多了以后,这样的笨方法就不行了,要怎么办?
我有一个店员管理系统,店员1W,表members,店员有推荐机制(店员几乎是级别无限制的推荐)。
还有一个店员的销售业绩表,member_sales,每一个店员销售一笔,就会向member_sales写一条数据。
现在我每天要统计一个店员和他的所有下级店员每天的营业额,如果达到我的业绩要求,就会给他发奖金。
现在数据不太多,我开了5个crontab 每隔一小时统计2000个店员,5小时完事儿。
但是我怕店员多了以后,这样的笨方法就不行了,要怎么办?
用数据库啊,mysql简单够用
使用数据库,对数据进行统计,说不定后期你还能做数据分析呢
每天凌晨跑一次就行了吧,每个小时跑一次没必要吧
用了数据库么, sql
查询不可能一个小时才2000个啊,crontab
具体是执行的什么任务呢?
这种数量级的关系型数据库妥妥的
你统计的SQL应该是有问题的,是不是内嵌了循环select。
重做吧。店员的树形结构设计本身有问题,统计的逻辑也不对,所以时间超长,不是几十句话能说明白的。
店员必须是树形结构的,其销售业绩是自身及其下所有子节点的销售业绩的总和。
此外member_sales表应该有销售日期和销售时间两个字段,销售日期用来统计,而不能通过格式化销售时间转换日期。
树形结构可以参考无限分类。
把你定时任务的SQL和程序全部贴出来看看