1. 背景
一线的业务人员获取Excel明细表,原始数据量动辄几十万上百万条;虽然Excel是一款深受青睐、广泛使用的数据处理工具,但是Excel自身在处理大数据量情况下存在性能问题;并且当大数据量的Excel融合分析报表展现在web上会占用太多缓存,会容易撑爆内存导致宕机。
基于上述背景,本文将介绍在创建大数据量的Excel融合分析报表过程中,应该采取哪些操作方案,能够有效避免大数据量导致卡顿、提升查询性能。
2. 操作步骤
2.1 数据准备方式
在创建Excel融合分析报表前的数据准备阶段,我们可参考如下两个方式操作:
查询情况 | 操作要点 | 效果 |
---|
单表查询 | 创建透视分析数据集 | 提前进行数据过滤、数据汇总,将清单数据在数据库层面进行加工,提升性能。 |
多表查询 | 创建自助数据集,数据抽取到高速缓存库SmartbiMPP | 抽取用户需要的数据,存储到缓存数据库中进行分析;这样不但能够减少原始数据仓库的压力,也能获得很好的分析性能。 |
2.2 Excel插件端优化操作:
操作阶段 | 操作方式 | 效果 |
---|
数据刷新 | 勾选【默认加载100行】 | 避免在Excel中刷新大数据量时导致卡死问题。 |
发布浏览前 | 勾选【Web端显示优化】 | 搭配上web端显示优化功能,可减少大数据量占用缓存。 |
3. 数据准备
方式1.创建透视分析数据集
如果是单表查询,在smartbi系统中,我们可基于数据源表创建透视分析,进行数据初步汇总、数据过滤,再接着创建Excel融合分析报表。
图:透视分析
方式2.创建自助数据集,数据抽取到高速缓存库SmartbiMPP
假设已有透视分析的聚合数据、即席查询的明细数据,为了满足多个报表查询的业务需求,对此我们可创建自助数据集,并将设置数据抽取到高速缓存库SmartbiMPP,接着可创建Excel融合分析报表了。如需对数据进行筛选,可基于自助数据集创建透视分析添加过滤条件。
4. 数据刷新
【设置默认加载100行】
基于 Excel融合分析报表类型,在上方工具栏勾选上【默认加载100行】,当我们在Excel插件端中点击【刷新数据】后只返回展示前100行数据,以此避免用户在Excel中刷新大数据量引起的卡顿问题。
5. 发布浏览
【Web端显示优化】
5.1. 适用的报表结构
【Web端显示优化 】功能 适用的Excel融合分析报表结构为 三种sheet页:原始数据页、数据二次处理页、最终展示页。
Sheet页类型 | 说明 | 状态 |
---|
原始数据页 | 用于存放原始数据,从数据集面版拖拽动态字段至单元格,不含图形。 | 隐藏 |
数据二次处理页 | 用于存放对原始数据进行二次分析后的数据,插入Excel自身的数据透视表,计算公式。 | 隐藏 |
最终展示页 | 用于展示图形、汇总计算等,给用户最终展示的。 | 显示 |
5.2. 功能说明:
【Web端显示优化】功能,可统一控制在web端中是否要显示的sheet页,实现隐藏大数据量的原始数据sheet页,减少缓存占用空间。
5.3. 操作路径:
路径1:在Excel插件端上方工具栏的【页面设置】,进入【报表类型】选中‘Excel融合分析’点击【Web端显示优化】按钮 ,可进入Sheet页管理窗口。
该sheet页管理窗口中的【自动优化】按钮,能够一键识别所有原始数据sheet页,将其设置为web端不显示;
路径2:在Excel插件端的下方,选中sheet页通过右键菜单【web端显示优化】进入Sheet页管理窗口。