有多个小说app,管理后台需要实时展示各种数据,包括注册人数、阅读人数、付费人数、付费金额等。维度有日期、书籍、分销商、 投放渠道、推广链接等等等。
因为要实时展示数据,且人数相关的指标需要去重统计,一开始就直接在查询时对订单表和点击表等进行聚合,使用了大量count distinct之类的函数,性能不好。之后思考过预聚合数据,但是维度一多,预聚合产生的数据量就会很大。
目前项目使用了sprinboot+mysql+redis,想求一个高性能解决方案。
基于您的业务需求,设计预聚合表,如按日期、书籍、分销商、投放渠道、推广链接等维度预先计算人数和金额的聚合数据。这可以通过Flink实时处理数据流实现,利用其与Hologres的紧密集成。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。