历史版本7 :大数据量模板排查思路 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

大数据量模板排查思路如下图所示:

3.png

注1:图片上不同情况对应的解决方案请参见本文 2.2 节表格内容。

注2:图片上数仓为解决方案之一,为用户提供一个思路,具体介绍请自行百度;FineReport 官方文档只介绍产品相关内容。

2. 排查节点编辑

2.1 区分取数慢还是模板加载慢

将大数据模板 导出内置数据集 再预览,排除 SQL 取数这部分耗时,验证模板本身计算和加载的耗时是否长。

注意导出时使用的参数和预览保持一致,因为参数常常会有显示值/实际值,或者某些系统参数的情况,推荐在参数面板做一组获取控件值的文本控件。

1)如果导出内置数据集的过程很快,则可以确认是模板设计问题,一般此类内置数据模板预览也会比较慢,此时往模板计算慢上定位。

注:参数注入导致的性能问题,导出、预览都可能比较快,此时同样关注模板计算慢。

2)如果导出内置数据集的过程慢,预览很快的话则确认是取数的问题,往 SQL 上定位。

3)对于导出内置数据集的过程慢,预览也慢的情况则要视情况分析,有可能出现模板设计与取数都有问题的情况,也可能只是数据量大,此时最好把两方面都做排查。

2.2 细分使用场景

若定位到是取数导致的整体性能慢,需要判断模板是以导出用法为主,还是预览用法为主。

若定位到是模板计算慢,则需要思考是否必须要用实时数据。

针对不同的场景可以参考下表。

问题痛点
应用场景解决方案备注
取数慢-导出
数据集直接导出 Excel大数据集导出Excel插件
应对需要直接导出数据集数据的场景,通常对应数据集量会比较大,且一般对应数据集不会在 body 里被用到,用到了一般也不会明细展示。最极端的情况是模板只加载到参数面板而不需要预览 body ,直接在参数面板实现数据集的导出
预览后导出 body 内容Excel 流式导出支持行式引擎插件
-
后台导出后台批量导出Excel
会将文件导出到服务器,适用于客户不需要直接预览场景
定时调度导出 Excel定时调度
适用每日定时导出日报数据等,且通过邮件接收导出的 Excel 的场景,一般是需要预览模板内容的场景
取数慢-预览通过参数、配置等限制数据,且客户接受对应限制的场景

1)通过限定参数非空,需要用户自己优化 SQL ,SQL 限定取出数量等方法

2)建议通过 模板限制 ,限制模板的单元格个数、sql 执行时长,单数据集行数等

-
分页预览,数据源数据量大

新计算引擎插件

单数据集分页 SQL 实现层式报表

启用行式引擎执行层式报表

每类方法有特定的适用库范围,不支持的库不支持本方法
优化低实时性报表中,取数性能较差的场景抽数缓存插件使用步骤
计算慢-数据非实时优化低实时性报表中,取数性能较差的场景抽数缓存插件使用步骤
-
每天定时邮件查看数据、及导出无即时性要求的场景定时调度
定时调度-结果链接 为实时计算
计算慢-数据实时-
大数据量模板优化思路
-