DB2 数据源

最近更新时间:2024-07-12 10:09:31

我的收藏

使用限制

说明:
支持读取视图表。
1. DB2 Writer 通过数据同步框架获取 Reader 生成的协议数据,通过 insert into(当主键/唯一性索引冲突时,冲突的行会写不进去)语句,写入数据至 DB2。另外出于性能考虑采用了 PreparedStatement + Batch,并且设置了 rewriteBatchedStatements=true,将数据缓冲到线程上下文 Buffer 中,当 Buffer 累计到预定阈值时,才发起写入请求。
说明:
整个任务至少需要具备 insert into 的权限,是否需要其它权限,取决于您配置任务时在 preSql 和 postSql 中指定的语句。
2. 目前不支持 DB2 AES 加密算法。

DB2 离线单表读取节点配置




参数
说明
数据来源
可用的 DB2 数据源。
支持选择、或者手动输入需读取的库名称
默认将数据源绑定的数据库作为默认库,其他数据库需手动输入库名称。
当数据源网络不联通导致无法直接拉取库信息时,可手动输入数据库名称。在数据集成网络连通的情况下,仍可进行数据同步。
Schema
支持选择、或者手动输入需读取的 Schema 名称。
支持选择、或者手动输入需读取的表名称。
切割键
指定用于数据分片的字段,指定后将启动并发任务进行数据同步。
筛选条件(选填)
DB2 根据指定的 where 条件拼接 SQL,并根据该 SQL 抽取数据。在实际业务场景中,通常会选择当天的数据进行同步,可以指定 where 条件为 gmt_create>$bizdate。where 条件可以有效地进行业务增量同步。如果该值为空,代表同步全表所有的信息。

DB2 离线单表写入节点配置




参数
说明
数据去向
需要写入的 DB2 数据源。
支持选择、或者手动输入需写入的库名称
默认将数据源绑定的数据库作为默认库,其他数据库需手动输入库名称。
当数据源网络不联通导致无法直接拉取库信息时,可手动输入数据库名称。在数据集成网络连通的情况下,仍可进行数据同步。
Schema
支持选择、或者手动输入需读取的 Schema 名称。
支持选择、或者手动输入需写入的表名称
当数据源网络不联通导致无法直接拉取表信息时,可手动输入表名称。在数据集成网络连通的情况下,仍可进行数据同步。
是否清空表
在写入该 DB2 数据表前可以手动选择是否清空该数据表。
批量提交大小
一次性批量提交的记录数大小,该值可以极大减少数据同步系统与 DB2 的网络交互次数,并提升整体吞吐量。如果该值设置过大,会导致数据同步运行进程 OOM 异常。
前置 SQL(选填)
执行同步任务之前执行的 SQL 语句,根据数据源类型对应的正确 SQL 语法填写 SQL,例如,执行前清空表中的旧数据(truncate table tablename)。
后置 SQL(选填)
执行同步任务之后执行的 SQL 语句,根据数据源类型对应的正确 SQL 语法填写 SQL,例如,加上某一个时间戳 alter table tablename add colname timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP。

数据类型转换支持

读取

DB2 数据类型
内部类型
BIGINT、INTEGER、SMALLINT
Long
NUMERIC、DECIMAL、FLOAT、REAL、DOUBLE
Double
CHAR、VARCHAR、LONGVARCHAR、NCHAR、CLOB
String
TIME、DATE、TIMESTAMP
Date
CHAR FOR BIT DATA、VARCHAR FOR BIT DATA
Bytes

写入

内部类型
DB2 数据类型
Long
BIGINT、INTEGER、SMALLINT
Double
DECIMAL、NUMERIC、FLOAT、REAL、DOUBLE
String
CHAR、VARCHAR、NCHAR、CLOB、LONGVARCHAR
Date
DATE、TIME、TIMESTAMP
Bytes
CHAR FOR BIT DATA、VARCHAR FOR BIT DATA