1、FDL最佳实践
1.1 使用偏移量从XML接口取数
1)应用场景
用户有一接口返回 XML 格式数据(数据量较多),希望从该接口中取出所有数据。
存在问题如下:
2)实现思路
使用「循环容器」节点自带的 loopTimes 参数构建偏移量,从 API 取数,并将接口非空的字段进行参数输出。
「循环容器」节点设置执行方式为条件执行,执行条件为该参数值不为空,即可实现循环取数,直至参数值为空,说明数据以全部取完,循环结束。
3)参考文档
详情请参见:使用偏移量从XML接口取数
1.2 解析多层嵌套JSON并实现1:n关系
1)应用场景
用户的 JSON 数据结构是多层数组嵌套,如下图所示:
现需要解析上层数组元素和下层数组元素,实现 1:n 的关系。
例如:希望 titles 数组中的字段,能与 items 数组中(items 数组又包含 drivers 数组)的字段关联起来。如下图所示:
titles 中的字段,与 items 中 drivers 包含的元素是 1:n 关系。
2)参考文档
详情请参见:解析多层嵌套JSON并实现1:n关系
1.3 SAP RFC:日期+偏移量双重循环取数
1)应用场景
SAP RFC 一次性取数过大时,驱动可能会崩溃,FDL 也可能会宕机。部分 RFC 函数提供了 ROWCOUNT、ROWSKIPS 和 date 参数,分别用于控制每次取多少行、从第几行开始取,以及按日期过滤数据。这些参数的逻辑与 API 获取数据时的偏移量类似。
然而,「SAP ERP输入」 并没有像「API 输入」算子那样提供高级设置来自动实现偏移量。
2)参考文档
详情请参见:SAP RFC:日期+偏移量双重循环取数
1.4 加密函数实现摘要签名认证方式
1)应用场景
Java代码实现摘要签名认证方式 文档使用 Java 代码实现摘要签名认证方式,但存在一定操作难度。
2)参考文档
将 Java代码实现摘要签名认证方式 文档中的 Java 代码函数化,FDL 中调用函数就能生成签名。
详情请参见:加密函数实现摘要签名认证方式
1.5 大数据量分区分页并发查询增量同步
1)应用场景
用户从吉客云读取一张 1300W 数据量的表存储到阿里云的 ApsaraDB for MySQL。
「数据转换」节点中处理数据时,由于数据量过大,数据读取的时间超过了数据库允许 SQL 执行的最大时间(最大时间为 30 分钟);面对如此大的数据量,单纯的增加数据库查询等待时间解决不了问题,并且单并发的数据同步也满足不了数据同步的时间要求。
2)参考文档
详情请参见:大数据量分区分页并发查询增量同步
2. 功能使用指导
2.1 FDL工程运维说明
部署好 FDL 后,我们还需配置项目,让平台完成自动运维。
对于关键项目要定期手动检查,平台出现异常项时,及时进行处理,保证工程的健康运行。
详情请参见:FDL工程运维说明
2.2 工程备份还原
迁移/升级前,手动对工程进行整体异机备份,便于迁移/升级失败后快速回退。
若服务器资源不足,webroot 文件夹过大,给出必要备份的文件说明。
详情请参见:工程备份还原
|