1. 概述
1.1 版本
FineDataLink 版本 | 功能变动 |
---|---|
4.0.13 | - |
4.1.0 |
|
1.2 应用场景
参数赋值 可以将上游节点的结果输出至下游节点使用,但有些数据需要进行进一步处理才能作为参数输出,并不能直接输出参数。
用户期望能够对数据进行处理后直接输出参数,不需要将处理结果输出数据库再从数据库取值作为参数。
1.3 功能简介
FineDataLink 支持在「数据转换」中直接进行参数输出。如下图所示:
1.4 使用需知
注:参数作用范围:下游分支的所有节点;使用场景:适用于参数值较多,且参数值保存在数据库表、接口、文件等位置中,需要将参数值取出,进行复杂计算的场景。
1)参数使用的约束限制、功能使用与「参数赋值」相同,详情参见:参数赋值
2)FDL 中参数可分为:任务内参数、全局参数、内置参数三类,使用说明请参见:如何配置并使用参数
3)参数在 FDL 中的应用场景请参见:参数在FDL中的典型应用场景
4)demo 示例详情参见:https://demo.finedatalink.com/ 「数据转换-参数输出-副本」
2. 操作步骤
示例:将 API 数据进行解析处理后,将满足条件的数据设置为参数,并将数据库表中满足参数条件的数据取出至指定数据库。
http://fine-doc.oss-cn-shanghai.aliyuncs.com/book.json 数据需要进行解析并取出 isbn 不为空的数据。
将这些数据中的 author 作为参数输出,并输入给 book 数据表中。
从中取出满足参数条件的数据,输出至 book_out 数据表中。
2.1 输出为参数
2.1.1 读取 API 数据
1)新建定时任务,拖入「数据转换」节点,进入「数据转换」节点。
2)拖入「API输入」算子,读取 API 数据。API 地址为:http://fine-doc.oss-cn-shanghai.aliyuncs.com/book.json,不勾选「将解析后的JSON数据展开为二维表」,使得读取后的数据为 JSON 格式。如下图所示:
点击「数据预览」,可查看读取的 JSON 格式的数据。如下图所示:
2.1.2 解析 JSON 数据
1)拖入「JSON解析」算子,解析 category、author、title、price、isbn 字段。如下图所示:
点击「数据预览」,可查看解析后的数据。如下图所示:
2.1.3 过滤数据
拖入「数据过滤」算子,过滤出 isbn 不为空的数据。如下图所示:
2.1.4 输出参数
1)拖入「参数输出」算子,将 author 字段作为参数输出。如下图所示:
注:建议给参数设置一个调试值,便于后续节点引用参数时预览结果;该调试值不影响实际运行。
2)点击左上角「返回」按钮。
2.2 循环容器设置
1)由于 2.1 节输出的参数有多个参数值,因此需要使用「循环容器」功能,将多个参数值一个个传入「数据同步」节点中。
拖入「循环容器」节点,「循环容器」节点设置如下图所示:
2)「循环容器」节点中拖入「数据同步」节点。在「数据同步」节点,从数据表 book 中取出满足参数条件 author 的数据。如下图所示:
点击「数据预览」,可看到取出 author 为参数调试值的数据。如下图所示:
3)设置「数据去向与映射」,写入方式选择「直接将数据写入目标表」。
2.3 效果查看
点击右上角「保存并运行」按钮,任务执行成功后,book_out 中的数据如下图所示: