历史版本31 :DB表输出 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本

设置项功能变动
数据去向与映射数据同步-数据去向与映射 文档的 1.1 节内容
写入方式数据同步-写入方式 文档的 1.1 节内容

1.2 功能简介

数据在「数据转换」节点中进行一系列复杂处理后,可使用「DB表输出」算子输出到目标数据库中。如下图所示:

6.png

2. 功能说明编辑

icon提示:

「DB表输出算子中:

1)「数据去向与映射」Tab 页下的功能与 数据同步-数据去向与映射 功能一致

2)「写入方式」Tab 页下的功能与 数据同步-写入方式 功能一致

应用场景
说明

「数据转换」节点中对数据进行处理后,需输出到数据库表中

6.png

使用「DB表输出算子即可

需要对两张表的数据进行对比,若来源表存在增删改,目标表也同步更新

7.png

1)「数据比对 +DB表输出」组合使用;示例:数据比对典型示例

2)删除数据可选择逻辑删除和物理删除两种方式:

  • 逻辑删除:不实际删除数据,标记删除数据

  • 物理删除:实际删除数据

两种删除方式的具体效果可参见:物理删除和逻辑删除的区别

3. 示例一:逻辑删除编辑

3.1 场景模拟

示例数据下载:tests.xls test_mubiao.xls

来源表 tests 数据如下图所示:

目标表数据如下图所示:

来源表中删除了 orderid 为10345、10348 的数据,希望目标表中这两条数据也删除。

注:因为是逻辑删除,目标表中需要准备一列作为标记列,本文目标表中作为标记列的列名为:fdl_comparison_type

重要说明:

1)如果希望逻辑删除目标表数据,目标表中需要新增一个字段作为标记列,或者指定一个已经存在的列作为标记列;来源表字段 fdl_comparison_type 映射到目标表中的标记列字段。如下图所示:

53.png

2)标识列的值可按照需要自定义,只需要保证「数据比对」中的标识值和「DB表输出」中的标识值一致即可。如下图所示:

1735289621450418.png

3.2 设置输入算子

本文示例用的是「DB 表输入」算子,拖入两个算子,并分别重命名为来源表和目标表,先对来源表进行设置。如下图所示:

后对目标表进行设置,如下图所示:

3.3 设置数据比对算子

1)添加一个「数据比对」算子,并与两个输入算子相连。

2)「逻辑主键」用于在两张表中识别同一条数据,即通过「逻辑主键」将来源表和目标表的数据对应起来,本文示例「逻辑主键」选择 orderid 。由于本示例只需标记删除数据,所以「比对字段」可以不设置。如下图所示:

注1:若某个字段没有被选择到「比对字段」中,能识别出该字段的增加和删除,但这个字段若存在更新,将不能被识别。

注2:「数据比对」使用详情请参见:数据比对

点击「比对结果」,可看到被删除的数据已被标记。如下图所示:

3.4 设置 DB 表输出算子

1)添加一个「DB 表输出」算子,并用连线将他与「数据比对」算子相连。

2)数据输出到目标表中:

  • 写入方式选择「基于标识字段,追加/更新/删除数据」,只勾选删除按钮,写入方式选择「逻辑删除」

  • 标识字段选择 fdl_comparison_type ,fdl_comparison_type 是默认生成的标记列。

  • 标识值为 Removed ,「标识值」需要与「数据比对」算子中的「标识关系」值一一对应。

  • 逻辑主键设置为 orderid ,与「数据比对」算子的逻辑主键相同即可。

如下图所示:

「只对标识值为null的数据进行逻辑删除」说明:

按钮是否勾选
场景
结果
勾选:只对标识值为null的删除数据进行标记

来源表

1735289912608026.png

目标表:

56.png

目标表中需要逻辑删除a=1的数据;待删除的数据标记列值非空(图中值为12);删除数据的标识值设置为Removed

任务运行后,目标表如下图所示:

56.png

若标记列的值不是12,为空,任务运行后,值才会更新为Removed

不勾选:对所有待删除数据进行标记

任务运行后,目标表如下图所示

标识值更新为Removed

57.png

3.5 运行任务

点击右上角运行,日志出现执行成功信息表示任务成功运行。如下图所示:

可看到目标表中删除数据已被标记。如下图所示:

4. 示例二:物理删除编辑

请参见:数据比对