大数据量的报表如何快速分页呈现,有什么好的处理方法

Posted xmilu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据量的报表如何快速分页呈现,有什么好的处理方法相关的知识,希望对你有一定的参考价值。

在说明这个问题的处理方法前,先了解下是什么原因导致的大数据量报表呈现慢的问题。

一般不外乎这两种原因:

1 . 数据查询业务,查询条件宽泛,导致数据库查询后的结果集数据条数达到几百上千万甚至过亿;

2 . 采用内存运算机制,即如此庞大的数据量要一次性在内存计算完成,后再进行呈现,用户体验特别不好,这个过程中很可能因为计算量大 出现内存溢出,无法继续计算。

针对这种情况,我们可以采用异步处理的方式,将取数和呈现分为两个线程异步处理,取数线程发出 SQL 后不断取出数据缓存到本地,由呈现线程从本地缓存中获取数据进行显示。这样,已经取出并缓存的数据就能快速呈现,不再有等待感;而取数线程所涉及的 SQL,在数据库中保持同一个事务,也不会有不一致的问题,前面提到的两个问题全部得以完美解决。

同时,借助二进制文件存储格式,报表还可以按行号随机访问记录,而不用每次通过遍历查找数据。也就是说,这种存储格式支持跳转到任意页访问,从而极大地改善了用户体验。不过,由于采用了异步机制,页面端显示的总页数和总记录数会随着取数过程不断变化。

目前润乾报表已经将这种处理机制产品化,只需要一个简单的设置就可以了。

详细设置可参考:

秒级展现的百万级大清单报表怎么做

以上是关于大数据量的报表如何快速分页呈现,有什么好的处理方法的主要内容,如果未能解决你的问题,请参考以下文章

什么报表工具对大数据量报表的支持最好?

什么报表工具对大数据量报表的支持最好?

如何设计java程序能提高大数据量的计算速度?

大清单报表应当怎么做?

润乾报表大数据量展现报错内存溢出怎么办呀?

sqlserver2000 如何提高分页查询大数据量的效率