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

目录:

1. 概述编辑

1.1 版本

FineDataLink 版本功能变动
3.1
-
3.7

「DB表输出」算子的「数据去向」Tab中若选择「自动建表」,「字段映射」Tab下可删除表字段、修改表字段展示顺序、修改表字段长度、修改字段类型,详情参见本文 2.2 节

4.0.1「DB表输出」算子的数据去向」Tab中若选择自动建表」字段映射Tab下修改表字段展示顺序的方式,从点击调整字段顺序调整为拖拽调整字段顺序,详情参见本文 2.2 节
4.0.18

新增写入方式「插入/更新/删除数据」,与「数据比对」算子配合使用,可完成增量插入、删除、更新的操作

4.0.21
  • 「数据去向」Tab 中支持选择模式

  • 数据去向 Tab 中若选择「自动建表」,字段映射 Tab 中可设置物理主键

1.2 功能简介

  • 数据经过一系列处理后,可通过「DB表输出算子输出到目标数据库中。

  • DB表输出算子与「数据比对」算子配合使用,可完成增量插入、删除、更新的操作。

  • 目标数据表若为新建,支持设置主键。

  • 可将数据输出到指定模式的某张表中,或者在指定模式中新建表存放处理后的数据。

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

2.1 场景模拟

示例数据下载:test.xlstest_mubiao.xls

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

1676431113598252.png

目标表数据如下图所示:

51.png

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

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

2.2 设置输入算子

对来源表和目标表进行设置,本文示例用的是「DB 表输入」算子。如下图所示:

52.png

2.3 设置数据比对算子

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

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

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

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

53.png

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

1676431870231345.png

2.4 设置 DB 表输出算子

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

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

  • 写入方式选择「插入/更新/删除数据」,只勾选删除按钮,写入方式选择「逻辑删除」

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

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

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

如下图所示:

55.png

3)点击右上角保存按钮。

2.5 运行任务

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

56.png

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

57.png

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

请参见:数据比对

4. 功能说明编辑

「DB表输出」算子界面如下图所示:

33.png

4.1 数据去向

各设置项介绍如下表所示:

设置项说明
数据源类型、模式、目标表

数据经过处理后,设置目标数据存放在哪

模式默认值说明如下:

1)数据库有模式:

  • 若数据连接中已配置模式,默认值为数据连接中配置的默认值

  • 若数据连接中未配置模式,模式默认值为空,用户自己选择

2)数据库没有模式,若数据连接中设置了数据库名称,「库」字段默认值为数据库名称,若数据连接中未设置数据库名称,「库」字段默认为空:

35.png

模式其他说明如下:

  • 模式配置项仅选择关系型数据库才出现

  • 目标表如果是「已存在表」获取的是此目标库/模式下的表;如果是「自动建表」建表建在此目标库/模式下

写入方式

追加写入数据

1)若没有主键,直接将数据写入到目标表中

2)若存在主键,主键冲突策略为:

  • 主键冲突,覆盖目标表的数据

  • 主键冲突,忽略输入源的数据

  • 主键冲突,停止写入并报错

33.png

清空目标表,再写入数据:清空目标表数据后,再存入已处理好的数据

插入/更新/删除数据

1)与「数据比对」算子配合使用,完成增量插入、删除、更新的操作,具体请参见 数据比对 文档

2)插入、更新、删除可以多选,默认全选,至少选择一个

3)勾选某一种方式时,可以选择对应的标记列和标记值(默认是 fdl_comparison_type,插入默认为 Added,更新默认为 Changed,删除默认为 Removed,Identical 则忽略,若用户在比对删除时更改过标记值,也需要能默认进行自动对应)

4)选择「删除」时,有「物理删除」和「逻辑删除」两种方式。「物理删除」:实际删除数据,请谨慎操作避免误删数据;「逻辑删除」:不删除数据,只添加删除标识。

5)选择「逻辑删除」时,默认勾选「只对标识值为null的数据行进行逻辑删除」按钮,该按钮说明如下:

  • 勾选该按钮,标记列中的值为 null 时,标记值才生效

  • 不勾选该按钮,标记值将标记所有删除行

4.2 字段映射

注:具体介绍请参见 字段映射