`
lc90
  • 浏览: 67761 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

存在汇总统计等功能的大数据量报表的优化方案

阅读更多
对于大数据量,多层分组的的汇总报表不能采用分页标签,可以采用如下的优化方案:

一、先初步对报表进行优化:

1、尽量在sql实现group分组,数据库虽然要进行分组运算,但是数据库中有索引,运算速度快,且 取到报表服务器端的记录数大大减少,取数速度大大加快,因此在报表端进行分组运算的时候只要对 很少的记录数进行,报表的运算速度大大加快了。

2、修改背景色的表达式尽量少采用row(),比如在每一行的一个格子里算出来行号,然后在背景 色表达式判断。 背景色的奇偶行判断,比如:if(row()%2==0,-3342337),主要是row(),是因为这种函数无法优化计 算,有多少个表达式就要计算多少次,而且必须在扩展完后拖后计算。这样的话,如果扩展比较多的 话,对性能就会有比较大的影响。

3、对于交叉分组要尽量减少数据集个数,尽量用单数据集。

二、配置优化:

以JVM内存设置为1G的服务器为例子,假设并发量最大为5,用户请求的报表为200单元格*1000页(数 据量可能上千万,但通过条件查询,最其中几千条记录),一般大数据量都没有图片,所以以每一个 单元格为0.5k计算,那么在最大并发量下,得出报表系统内存使用量为: 200*1000*5*0.5/1024K=488.28125M 根据以上计算,我们在实际生产系统中,我们建议:

cachedReportTimeout设置成180分钟,用户数据量大的情况下,增大报表缓存时间。
alwaysReloadDefine设置为no,开启缓存,这样客户在翻页时,不再与数据库交互,减轻数据库服务器的负担。
同时在tag标签中把useCache设置为yes。
timeout可以根据自己的实时要求进行设置,如果数据一天都不会变的话,建议设置为-1 。
maxConcurrentForReport为5,即并发量为5。
maxWaitForReport设置为10 ,即等待队列里允许的最大报表量。
maxWaitTimeForReport设置为300秒钟,6分钟内得不到响应,用户需要再次请求。
maxCellNum,在内存中,同时计算的单元格数量建议为200单元格*500页=100000格。
如果不能用缓存,可以将缓存开关关掉,重点关注一下并发和最大格子数的设置。

另外,报表里,报表属性-格子数,这个属性可以写成这样的表达式:ds1.count()*13,如果还有一些固定格子,可以写成ds1.count()*13+固定格子数.
分享到:
评论

相关推荐

    人力资源管理软件(完全免费)

    工资编辑支持从考勤月统计数据导入相关数据(感谢天隼、沈振刚) 人力资源管理软件增加考勤工资计算公式定义,不同员工可对应不同公式 绩效考核计划和考核做了很大优化(感谢annemy)(人力资源软件) 修正环境变量...

    ERP5.0采购管理系统需求方案讲演稿

    这种局面导致信息反馈比较缓慢,单据传递不及时、报表统计工作量大以及工作效率低下等现象,从一定程度上影响了企业的快速发展。结合****化学现行业务流程我们作如下具体阐述: 第二个问题:介绍现行业务总体流程:...

    数据运营思维导图

    将大动作的优化,大的项目上线及时标注在数据报表中 培养数据的敏感度 培养数据思维,从每天的各种数据报表开始 数据来源 数据埋点 初级 追踪每次用户的行为,统计关键流程的使用程度 中级 在产品中植入多段...

    2019数据运营思维导图

    从多个维度拆分数据 对比思路 大的营销事件作为节点单独标记,数据剔除出来单独进行分析 节点思路 如运营活动等 行为标记思路 将大动作的优化,大的项目上线及时标注在数据报表中 培养数据的敏感度 培养数据思维,...

    包租婆之房屋铺位物业租赁管理系统永久使用注册版.exe

    ◇管理人员:杜绝人为的失误机会和财务漏洞,严格的权限控制每个报表的财务统计数据 ◇费用欠费、费用到期、合同到期软件自动提前报警提示,不再出现错收漏收 ◇软件采用6种独特方式进行加密,数据更安全 ◇把...

    数据库学习基础之名词解释

     管理统计数据的数据库系统。这类数据库包含有大量的数据记录,但其目的是向用户提供各种统计汇总信息,而不是提供单个记录的信息。  网状数据库  处理以记录类型为结点的网状数据模型的数据库。处理方法是将网状...

    基于jbpm与activiti的工作流平台技术架构介绍

    无论数据库内原始数据是以何种样式的表结构存储,无论最终用户要求数据以何种表格样式显示,FineReport报表软件独创的多数据源关联查询、公式动态扩展计算等强大的功能,在无需改变表结构,无需改变用户的要求的基础...

    工程企业成本管理软件

    另一个是项目内部制定的目标成本,通过再次优化方案,制定成本控制措施而得出此成本,它是项目内部成本控制及考核的依据,原则上应低于中标合同价和公司下达的目标成本。目标成本应在工程开工前,企业根据企业定额、...

    材料成本管理软件,物资管理软件,进销存软件

    另一个是项目内部制定的目标成本,通过再次优化方案,制定成本控制措施而得出此成本,它是项目内部成本控制及考核的依据,原则上应低于中标合同价和公司下达的目标成本。目标成本应在工程开工前,企业根据企业定额、...

    oracle数据库dba管理手册

    7.3.6 回滚段中的数据量 178 7.4 使用Oracle Enterprise Manager 管理回滚段 178 7.4.1 从OEM创建回滚段 179 7.4.2 创建与现有回滚段一样的回滚段 180 7.4.3 设置回滚段为联机状态 181 7.4.4 设置回滚段为脱机状态 ...

    asp.net知识库

    ADO.NET 2.0 大批量数据操作和多个动态的结果集 ADO.NET 2.0 异步处理 在ASP.NET中使用WINDOWS验证方式连接SQL SERVER数据库 改进ADO.Net数据库访问方式 ASP.NET 2.0 绑定高级技巧 简单实用的DataSet更新数据库的类+...

    程序员的SQL金典6-8

     4.1.5 数据汇总  4.1.6 排序  4.2 高级数据过滤  4.2.1 通配符过滤  4.2.2 空值检测  4.2.3 反义运算符  4.2.4 多值检测  4.2.5 范围值检测  4.2.6 低效的“WHERE 1=1”  4.3 数据分组  4.3.1 数据分组...

    程序员的SQL金典7-8

     4.1.5 数据汇总  4.1.6 排序  4.2 高级数据过滤  4.2.1 通配符过滤  4.2.2 空值检测  4.2.3 反义运算符  4.2.4 多值检测  4.2.5 范围值检测  4.2.6 低效的“WHERE 1=1”  4.3 数据分组  4.3.1 数据分组...

    程序员的SQL金典4-8

     4.1.5 数据汇总  4.1.6 排序  4.2 高级数据过滤  4.2.1 通配符过滤  4.2.2 空值检测  4.2.3 反义运算符  4.2.4 多值检测  4.2.5 范围值检测  4.2.6 低效的“WHERE 1=1”  4.3 数据分组  4.3.1 数据分组...

    程序员的SQL金典3-8

     4.1.5 数据汇总  4.1.6 排序  4.2 高级数据过滤  4.2.1 通配符过滤  4.2.2 空值检测  4.2.3 反义运算符  4.2.4 多值检测  4.2.5 范围值检测  4.2.6 低效的“WHERE 1=1”  4.3 数据分组  4.3.1 数据分组...

    程序员的SQL金典.rar

     4.1.5 数据汇总  4.1.6 排序  4.2 高级数据过滤  4.2.1 通配符过滤  4.2.2 空值检测  4.2.3 反义运算符  4.2.4 多值检测  4.2.5 范围值检测  4.2.6 低效的“WHERE 1=1”  4.3 数据分组  4.3.1 数据分组...

Global site tag (gtag.js) - Google Analytics