MongoDB数据量大报表慢该怎么办以及怎么做分页?-创新互联

MongoDB数据量大报表慢该怎么办以及怎么做分页?,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

创新互联建站服务项目包括渝北网站建设、渝北网站制作、渝北网页制作以及渝北网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,渝北网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到渝北省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

MongoDB 没有关系数据库之类的分页机制,要实现分页查询得硬编码,可以通过实现 Pageable 接口来自定义分页类,具体网上有很多介绍。

硬编码的缺点是实现太复杂了,也不好维护,对报表开发人员的要求有点高。简单一点的方式是使用支持 MongoDB 分批取数的报表工具,这样就可以解决大数据量查询的问题。可以参考这个: 海量清单与分组报表的实现

这里用了两个异步线程,取数线程通过封装好 MongoDB 接口返回查询游标将数据分批缓存到本地,呈现线程根据页数计算出行数到本地缓存中去获取数据显示,这样可以解决页码大时翻页慢问题。

画个图感受一下:
MongoDB数据量大报表慢该怎么办以及怎么做分页?
②和③分别是两个线程,前者取数线程负责从 MongoDB 里分批取数缓存,后者呈现线程负责读缓存做报表呈现。

这样做以后,除了报表能异步查询外,还能支持导出 Excel 和打印。

关于MongoDB数据量大报表慢该怎么办以及怎么做分页?问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联-成都网站建设公司行业资讯频道了解更多相关知识。


当前名称:MongoDB数据量大报表慢该怎么办以及怎么做分页?-创新互联
分享网址:http://pwwzsj.com/article/ceipoe.html