千万级历史数据跑报表 性能优化方案
各位社区的大佬:
小弟 现在有个千万数据量的会员表,有注册时间及注册渠道。现在有个业务需求需要把这些数据清洗到数据报表(数据表)里面
数据报表格式如下
register_date | register_channel | count |
---|---|---|
2020-01-01 | 1 | 10 |
2020-01-01 | 2 | 13 |
2020-01-02 | 1 | 12 |
2020-01-02 | 2 | 11 |
… | … | … |
目前我的做法是查询表里最早注册时间循环至当前时间,在循环里面查询日期下 ->groupBy('registered_channel')->selectRaw('registered_channel as register_channel, count(1) as register_num')
渠道 及渠道注册人数;
不知各位还有什么更好的优化方案
推荐文章: