反馈已提交

网络繁忙

FDL和FineBI组合应用示例

  • 文档创建者:Roxy
  • 历史版本:10
  • 最近更新:Roxy 于 2023-09-15
  • 1. 概述

    1.1 背景

    某集团长期使用 FineBI 进行数据分析FineBI的使用流程为:

    • IT人员在FineBI中直接连接数据库数据,通过自助数据集对原始数据进行数据清洗和处理,形成业务可用的数据宽表;

    • IT人员做好数据宽表后,业务进行自助分析(直接制作仪表板或者对数据进行简单加工后进行数据分析)。

    开发人员小A 在使用过程中发现一些问题:

    • IT人员在 FineBI 中直接连接数据库数据,进行分层处理数据,由于做了大量的数据清洗和处理工作,产生了大量的中间表,导致自助数据集冗余且杂乱。

    • 由于制作宽表数据也是在 BI 中进行处理的,大量的中间表和父子表引用导致数据更新时间长、且数据更新失败问题日益凸显,维护困难。

    本文主要介绍业务系统数据经过FDL处理落库后,FineBI 调用该数据进行自助分析的全流程,通过FDL+BI的组合方案解决以上两个问题。

    1.2 思路

    IT 人员通过 FineDataLink 对数据进行清洗整合等处理,形成业务宽表,并输出到应用数据库;

    业务人员直接使用处理好的数据在 FineBI 中进行数据分析和仪表板制作;

    使用 FineDataLink 可视化的操作界面和便捷的功能,将宽表数据直接输出到业务数据库,减少了 BI 中的中间表,解决了自助数据集冗余和更新时间长的问题,提高 FineBI 性能;同时 FineDataLink 处理并输出到数据库中的数据表也可以被其他工具使用。

    2. 实现方法

    2.1 场景说明

    FRDemo 数据库中存放着「CUSTOMER」、「DEMO_CAPITAL_RETURN」、「DEMO_CONTRACT」、「DEMO_PRODUCT」四张表。

    简道云表单中也存放着与FRDemo 数据库结构相同的数据表「CUSTOMER」、「DEMO_CAPITAL_RETURN」、「DEMO_CONTRACT」、「DEMO_PRODUCT」。

    现在希望对这些数据进行数据关联,生成业务宽表,直接在 BI 或者其他分析工具中使用,进行业务分析和仪表板制作。

    数据表说明重要字段
    「DEMO_CONTRACT」合同事实表合同ID(主键)、客户ID、购买的产品(产品ID)
    「DEMO_CAPITAL_RETURN」合同回款事实表
    合同ID
    「DEMO_PRODUCT」产品名称维度表产品ID
    「CUSTOMER」客户维度表客户ID

    2.2 方案说明

    1)将 FRDemo 数据库中的数据接入至 FineDataLink ,通过数据关联和数据清洗,生成业务宽表并输出到 FDLDemo 数据库。

    2)将简道云中的表单数据接入至 FineDataLink ,通过数据关联和数据清洗,生成业务宽表并输出到 FDLDemo 数据库。

    3)将两张宽表进行连接,合并成一张大宽表,并输出到 FDLDemo 应用库。

    4)业务人员和其他用户使用 FineBI 或者其他工具连接 FDLDemo 应用库,使用业务数据进行数据分析和仪表板制作。

    3. 操作步骤

    在进行操作之前,请将数据库与 FineDataLink 建立连接,详情参见:配置数据连接

    3.1 构建数据库宽表

    将 FRDemo 数据库中的「DEMO_CONTRACT」数据表与「CUSTOMER」根据「客户ID」关联、与「DEMO_CAPITAL_RETURN」根据「合同ID」关联、与「DEMO_PRODUCT」根据「产品ID」关联,生成一张业务宽表。

    1)新建 ETL 任务命名为「数据库数据关联构建宽表」,使用数据转换,将 FRDemo 业务库中的「DEMO_CONTRACT」数据取出,便于后续进行数据关联,如下图所示:

    同理,将「CUSTOMER」、「DEMO_CAPITAL_RETURN」、「DEMO_PRODUCT」数据也通过DB表输入取出,如下图所示:

    2)新增「数据关联」算子,将四个数据表输入算子连接至数据关联,进行数据关联制作新的数据宽表,设置连接方式和连接字段,如下图所示:

    点击预览即可查看跨数据库关联后的数据表,如下图所示:

    注:预览效果展示不全,建议以数据库输出的数据为准。

    3)对关联好的数据表进行字段设置,比如去掉重复的合并依据「合同ID1」等等,如下图所示:

    4)将制作好的数据宽表命名为「SJK_kuanbiao」并输出到「FDLDemo」数据库中,如下图所示:

    5)保存并执行任务,如下图所示:

    3.2 构建简道云宽表

    将简道云中的表单数据接入至 FineDataLink ,通过数据关联和数据清洗,生成业务宽表并输出到 FDLDemo 数据库。

    简道云数接入 FineDataLink 可参考简道云输入

    注意在简道云表单接入前,可提前设置字段别名,否则接入到 FineDataLink 中时会使用字段原始名,不便于你的业务处理。

    1)新建 ETL 任务命名为「简道云数据表关联构建宽表」,使用数据转换,将简道云表单中的「DEMO_CONTRACT」数据取出,便于后续进行数据关联,如下图所示:

    同理,将「CUSTOMER」、「DEMO_CAPITAL_RETURN」、「DEMO_PRODUCT」数据也通过简道云输入取出,如下图所示:

    2)本示例中没有在简道云设置别名,因此可以在字段设置中调整字段名称,如下图所示:

    3)新增「数据关联」算子,将四个数据表输入算子连接至数据关联,进行数据关联制作新的数据宽表,设置连接方式和连接字段,如下图所示:

    点击预览即可查看跨数据库关联后的数据表。

    注:预览效果展示不全,建议以数据库输出的数据为准。

    3)对关联好的数据表进行字段设置,比如去掉重复的合并依据「合同ID1」、修改字段名称等等,如下图所示:

    4)将制作好的数据宽表命名为「JDY_kuanbiao」并输出到「FDLDemo」数据库中,如下图所示:

    注意可以通过字段映射调整数据表输出时的字段排列顺序。

    由于下一步要进行 union 操作,因此需要保证输出的两张宽表字段排列顺序和字段类型一致。

    5)保存并执行任务,如下图所示:

    3.3 跨数据源表连接

    将两张宽表进行连接,合并成一张大宽表,并输出到 FDLDemo 应用库。

    1)新建 ETL 任务命名为「调用」,添加调用任务,命名为简道云宽表构建,即调用了操作步骤中简道云宽表构建的任务,如下图所示:

    2)同理,调用 FRDemo 数据库宽表构建的任务,如下图所示:

    3)新增「数据转换」节点,将已经存放至 FDLDemo 数据集中的「JDY_kuanbiao」和「SJK_kuanbiao」数据通过DB表输入取出,方便后续通过 SQL 进行 union 连接,如下图所示:

    4)添加「Spark SQL」节点,使用 union 语句对数据表进行连接,如下图所示:

    5)此时跨数据源合并的宽表已经完成,通过 DB 表输出,将数据表落库至 FDLDemo 即可,如下图所示:

    6)保存并执行任务,如下图所示:

    3.4 数据使用

    业务人员在 BI 中直接接入 FDLDemo 数据库数据,进行仪表板制作和数据分析。

    同时数据也可被其他应用使用。

    4. 效果查看

    FineDataLink 中的数据处理过程,详情参见:https://demo.finedatalink.com/ 「FineDataLink&FineBI组合方案」。


    附件列表


    主题: 最佳实践
    • 有帮助
    • 没帮助
    • 只是浏览
    • 评价文档,奖励 1 ~ 100 随机 F 豆!

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭

    联系我们
    在线支持
    获取专业技术支持,快速帮助您解决问题
    工作日9:00-12:00,13:30-17:30在线
    页面反馈
    针对当前网页的建议、问题反馈
    售前咨询
    采购需求/获取报价/预约演示
    或拨打: 400-811-8890 转1
    qr
    热线电话
    咨询/故障救援热线:400-811-8890转2
    总裁办24H投诉:17312781526
    提交页面反馈
    仅适用于当前网页的意见收集,帆软产品问题请在 问答板块提问前往服务平台 获取技术支持