FineDataLink实战案例分享【2024-12-30周】

楼主
我是社区第567266位番薯,欢迎点我头像关注我哦~

1. 大数据量分区分页并发查询增量同步

1.1 应用场景

用户从吉客云读取一张 1300W 数据量的表存储到阿里云的 ApsaraDB for MySQL。

「数据转换」节点中处理数据时,由于数据量过大,数据读取的时间超过了数据库允许 SQL 执行的最大时间(最大时间为 30 分钟);面对如此大的数据量,单纯的增加数据库查询等待时间解决不了问题,并且单并发的数据同步也满足不了数据同步的时间要求。

1.2 实现思路

具体实现步骤分为两个阶段:

初始化全量阶段

根据日期字段将数据分区:

以取出 2024-01 月数据为例:

1)每次取出 100000,计算取出次数,并输出为参数 fenye。

2)循环容器执行条件设置为 ${loopTimes}<=${fenye}:

  • 分页查询来源表中 2024 年 1 月的数据,每页查询最多 100000 条记录,并根据 ${loopTimes} 变量动态调整查询的起始位置,实现分页效果。

  • 数据取出后,用户可根据实际情况,进行JSON解析、过滤等操作。

  • 将处理后的数据落库。

增量阶段

1)根据目标表最大时间筛选出来源表新增数据,新增的数据按每页 500 条计算页数,将页数输出为参数 fenye。

2)循环容器执行条件设置为 ${loopTimes}<=${fenye}:

  • 获取每批 500 条的主键并作为参数输出。

  • 根据主键参数,删除目标表中历史数据。

  • 将本批新增数据处理后落库。

1.2 参考文档

详情请参见:大数据量分区分页并发查询增量同步

1.3 注意事项

  • 本文方案中的 SQL 语句只适用于 ApsaraDB for MySQL 数据库,其他数据库需要自行调整 SQL 语句。

  • 本文方案只适用于大数据量场景&数据只存在新增的场景。

2. 简道云表单调用定时任务接口示例

2.1 应用场景

  • 用户简道云流程流转中,下游表单需要使用上游表单经过 FDL处理后的数据。

  • 用户希望 FDL 可以代替简道云的数据工厂进行数据处理。

2.2 实现思路

简道云表单中可调用执行定时任务的接口,实现使用 FDL 处理数据的目的。

2.3 参考文档

详情请参见:简道云表单调用定时任务接口示例

3. 数据上云且触发智能助手

3.1 应用场景

设备异常处理场景中,多为现场工作人员或 IOT 平台人员发现设备异常,再人工通知维修部进行工单分配,多环节均效率低下。

FineDataLink 可基于IOT→FineDataLink→简道云的及时数据链路,实现设备数据和工单分配的完全打通,并实现设备异常的及时处理。

3.2 实现思路

FineDataLink 中处理数据,获取最新设备状态数据,使用「简道云输出」算子输出到简道云表单后,触发智能助手,智能助手触发异常设备检修流程,分配工单,及时处理设备异常。

3.3 参考文档

详情请参见:数据上云且触发智能助手

4. 读取飞书多Sheet表格数据

4.1 应用场景

公司通过飞书多维表格设计了一套数据填报应用,但数据均在云上,需要通过API接口进行下载数据,并关联目前的应用数据等。

4.2 参考文档

详情请参见:读取飞书多Sheet表格数据

5. 解析并关联多个JSON数组字段(4.1.6.2及其后版本)

5.1 应用场景

用户的 JSON 数据中包含多个数组字段,如下图所示:

希望解析数组字段,且解析后的字段一一对应。如下图所示:

5.2 参考文档

详情请参见:解析并关联多个JSON数组字段(4.1.6.2及其后版本)

分享扩散:

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

0回帖数 1关注人数 206浏览人数
最后回复于:3 天前

返回顶部 返回列表