1. 概述
FineReport 是一款用于报表开发、分析和展示的工具,能够帮助用户轻松构建灵活的数据分析和报表系统。
在报表开发之前,用户往往需要面对企业内多源异构数据的复杂加工处理工作。
数据开发师可以通过 FineDataLink 对接多源异构数据源,完成数据实时采集、复杂场景的数据处理加工,为 FineReport 提供可直接应用的结果层数据,实现数据处理层的加速。
2. FineDataLink 可以做什么
FineDataLink 致力于为企业、为数据开发者、为数据分析师、为数据资产管理者,结合数据库、上层通用协议、文件、消息队列、平台系统、应用等各类数据源,打造一个具备开放的、一站式、标准化、可视化、高性能和可持续交付的数据调度与治理平台。
FineDataLink 赋予用户仅通过单一平台,即可实现实时数据传输、数据调度、数据治理等各类复杂组合场景的能力。
详情请参见:FineDataLink产品简介
3. FineDataLink 如何助力报表开发与应用
3.1 报表数据采集
场景 | FR 用户痛点 | FDL 方案 | |
---|---|---|---|
无数仓客户,FR 直连业务数据库取数开发报表,业务系统同时进行读写,存在稳定性风险 | 用户采用 FR 直连业务系统数据库的方式进行取数,来进行报表开发 | 业务数据库同时支撑业务系统的持续写入数据和数据批量读取,会造成业务数据库的性能下降,进而导致业务系统前端操作会存在卡顿等性能问题 | 实时报表: 将业务数据实时同步到中间库,再通过 FR 直接连接中间库进行数据展示,实现了数据读写分离,兼顾了时效性和性能,提高业务库的安全性和稳定性 非实时报表: 使用 FDL 的「数据转换」功能,将复杂的数据处理和计算过程放在 FDL 中完成,并将结果同步到中间库表中进行定期更新。报表直接对接中间库取数,减小计算耗时,提升展现速度 |
有数仓客户,数据开发与使用存在部门墙,导致 FR 取数周期长 | 用户企业内,数据处理和报表开发分属两个部门负责,所以报表开发工程师需要从数据开发部门提供的大数据平台/数据中台取数应用 | 1)数据部门提供的数据,处理粒度比较粗,不支持报表开发直接应用 2)报表开发部门和数据处理部门彼此独立,报表开发部门对于数据部门提交的数据处理需求响应周期比较长 3)传统数据底层搭建工具的易用性较低,报表开发人员无法快速上手 | 引导开发人员自己处理数据,FDL 易上手,能够对接多种数据源,IT 部门可以自行对已有数据进行二次处理(跨库关联、过滤、汇总、比对删除、行列转换 等等),缩短开发周期,提升开发效率 |
3.2 报表数据处理
场景 | FR 用户痛点 | FDL 方案 | |
---|---|---|---|
无数仓客户,FR 对接多来源数据进行加工应用 | 用户需要开发的大屏或报表,数据来源于多个多种业务系统时,需要使用 FR 对接多个数据库 | 当 FR 需要对接超过 5 类数据源、单个报表数据集超过 5 个时,使用 FR 单元格过滤进行数据关联计算时,会导致报表开发成本很高 | 通过 FDL 数据关联 加工处理打破数据之间的壁垒,再由 FR、FVS 进行数据展现;其一降低 FR 数据处理复杂度、其二提升报表展现速度 |
FR 需要对接半结构化数据 | 用户需要应用的数据为半结构化 API 数据,FR 采用 json 数据集进行处理 | FR json 数据集功能可对接的数据格式单一,不支持针对 json 层级数据进行个性化解析 | FDL 可以 从 API 中取数 ,并对取出的 JSON 格式 或者 XML 格式数据解析为二维表,然后使用其他可视化算子对数据进行进一步处理和计算 |
3.3 报表使用
场景 | FR 用户痛点 | FDL 方案 | |
---|---|---|---|
无数仓客户, 报表数据集中包含复杂 sql时,会导致报表查询慢 | 由于客户没有可直接应用的结果层数据,所以报表开发中需要使用复杂 sql 进行数据加工处理 | 复杂 sql 导致报表的数据查询慢,进而导致报表页面加载慢,造成业务人员的工作效率下降 | 应用 FDL 数据同步或数据转换功能,将复杂的数据处理、计算过程交由 FDL 实现,FR 报表数据集只需要保留 select * from table 的方式获取结果指标数据,进而缩短 FR 数据集查询时间,提升报表展示速度 |
业务人员完成数据补录后,即触发查询报表更新 | 财务合并、全面预算等财务类场景中,业务人员会通过 FR 填报完成凭证等数据的录入,由于填报数据一般为过程中数据,无法直接应用,所以填报数据一般向中间表写入 大屏驾驶舱、自动推送报告等数据应用终端,需要使用中间表和其他原始表关联后结果数据 | FR 完成填报动作后,明细报表、大屏驾驶舱不会立即更新,导致数据时效性下降 | FDL 任务可设置每分钟执行一次,保证数据填报后尽快同步到数据库表中,详情参见:FR填报补录数据后,FDL任务轮询更新 |
准实时监控大屏 | 传统数据仓库场景下,数据是 T+1 方式进行更新 | 针对部分行业的特定场景,比如:车间生产监控大屏中,设备状态、停机累计时长需要实时展示并进行阈值预警,传统数据仓库无法满足数据的高时效性诉求 | 通过 FDL 搭建准实时数仓,数据管道 实现数仓贴源层实时更新,同时配置数据更新时间戳,实现数仓后续层级增量更新,提高数据链路全流程的时效性,进而实现 FVS/FR 的准实时大屏展示 |
3.4 报表数据运维
场景 | FR用户痛点 | FDL方案 | |
---|---|---|---|
无数仓客户, 报表数据集中包含复杂 sql时,会导致报表数据运维难 | 由于用户没有结果层指标数据,所以报表开发中需要使用复杂 sql 进行数据加工处理 | 当报表数据集使用高复杂度 SQL 进行数据处理时,比如:新数据集引用历史数据集结果,会导致 SQL 层层嵌套,使 SQL 开发和后期维护成本指数级提升 | 使用 FDL 可视化方式完成数据加工并进行业务注释,报表内仅保留获取结果表的 SQL ,降低开发成本和后期维护成本 |
抽数任务可能会中断,导致数据不全 | 1)不知道数据何时同步失败的 2)目标库中只同步了部分数据 | FDL 提供 全局任务监控平台 ,可以看到每个任务的运行状态和详情;任务/节点的运行结果可及时 通知提醒 ,支持短信、钉钉、企微等,实现任务找人 1)数据开发——借助预警功能,任务失败及时提醒管理员处理,利用比对更新,重新同步数据。(需要人工干预) 2)实时同步——借助数据管道的「断点续传」功能,任务失败后能自动触发同步(无需人工干预) |
3.5 报表资产沉淀
FR 用户痛点 | FDL 方案 |
---|---|
1)报表模板数据集,针对单一报表进行设计开发,导致不同报表的模板数据集相同,重复对接业务系统读取数据 2)内部数据,外部系统难调用 | 使用 FDL 的 数据服务 功能,将报表中的数据通过 API 分享给其他业务系统按需使用,如企业的报表数据需要分发/订阅给其上下游供应链的业务系统等 降低报表系统开发量、提升数据集复用率 |
3.6 对接简道云数据
FR 用户痛点 | FDL 方案 |
---|---|
1)FR同步表单数据时,只支持 MySQL 数据库 2)表单数据同步到数据库后,再通过 FR 抽取计算展示,操作成本较高 | 1)FDL的 简道云输入 算子,可读取简道云数据,与其他算子配合,可对数据进行处理计算,再输出到 MySQL、Oracle、SQL Server 等数据库中,FR 直接使用处理后的数据即可 2)FDL 的 简道云输出 算子,可将处理后的数据输出到简道云中,供简道云使用 |
4. 如何体验 FineDataLink
Demo体验:FineDataLink数据平台
FineDataLink了解试用:FineDataLink了解试用
5. FR、FDL 组合应用示例
简介 | 文档 |
---|---|
某贸易公司交易员使用 FineReport 填报模板,将新产生的订单或修改数据录入到补录表中,补录表需要将最新数据同步到数据库表中,数据分析工具使用数据库表中的数据进行展示,用户需要数据展示的数据尽量保持最新 | FR填报补录数据后,FDL任务轮询更新 |
主要介绍业务系统数据经过 FineDataLink 处理落库后,FineReport 调用该数据进行报表开发的全流程 | FDL和FineReport组合应用示例 |