TiDB 读取支持的字段类型及类型转换对应关系如下(在处理 TiDB 时,会将 TiDB 数据源的数据类型和数据处理引擎的数据类型做映射)。
相关产品
数据开发治理平台 WeData 产品页,含版本规格、价格与购买入口。
一、使用限制
·支持6.5.4、7.5.3的 TiDB 版本。
·支持 MySQL 8.0.28 驱动的 TiDB 版本。
二、TiDB 离线单表读取节点配置
| 参数 |
说明 |
| 数据来源 |
可用的 TiDB 数据源。 |
| 库 |
支持选择、或者手动输入需读取的库名称。默认将数据源绑定的数据库作为默认库,其他数据库需手动输入库名称。当数据源网络不联通导致无法直接拉取库信息时,可手动输入数据库名称。在数据集成网络连通的情况下,仍可进行数据同步。 |
| 表 |
支持选择、或者手动输入需读取的表名称。当数据源网络不联通导致无法直接拉取表信息时,可手动输入表名称。在数据集成网络连通的情况下,仍可进行数据同步。 |
| 切割键 |
指定用于数据分片的字段,指定后将启动并发任务进行数据同步,提升数据同步效率。你可以将源数据表中某一列作为切分键,建议使用主键或有索引的列作为切分键,仅支持类型为整型的字段。 |
| 筛选条件(选填) |
在实际业务场景中,通常会选择当天的数据进行同步,将 where 条件指定为 gmt_create>$bizdate。where 条件可以有效地进行业务增量同步。如果不填写 where 语句,包括不提供 where 的 key 或 value,数据同步均视作同步全量数据。 |
三、TiDB 离线单表写入节点配置
| 参数 |
说明 |
| 数据去向 |
需要写入的 TiDB 数据源。 |
| 库 |
支持选择、或者手动输入需写入的库名称。默认将数据源绑定的数据库作为默认库,其他数据库需手动输入库名称。当数据源网络不联通导致无法直接拉取库信息时,可手动输入数据库名称。在数据集成网络连通的情况下,仍可进行数据同步。 |
| 表 |
支持选择、或者手动输入需写入的表名称。当数据源网络不联通导致无法直接拉取表信息时,可手动输入表名称。在数据集成网络连通的情况下,仍可进行数据同步。 |
| 是否清空表 |
在写入该 TiDB 数据表前可以手动选择是否清空该数据表。 |
| 写入模式 |
TiDB 写入支持两种模式:Append: 当主键/唯一性索引冲突时,冲突行无法写入。On Duplicate Key: 当主键/唯一性索引冲突时,会更新第一条冲突数据。 |
| 批量提交大小 |
一次性批量提交的记录数大小,该值可以极大减少数据同步系统与 TDSQL 的网络交互次数,并提升整体吞吐量。如果该值设置过大,会导致数据同步运行进程 OOM 异常。 |
| 前置 SQL(选填) |
执行同步任务之前执行的 SQL 语句,根据数据源类型对应的正确 SQL 语法填写 SQL。 |
| 后置 SQL(选填) |
执行同步任务之后执行的 SQL 语句,根据数据源类型对应的正确 SQL 语法填写 SQL。 |
四、读取
| TiDB 数据类型 |
内部类型 |
| TINYINT、SMALLINT、INT、BIGINT |
LONG |
| FLOAT、DOUBLE、DECIMAL、NUMERIC |
DOUBLE |
| CHAR、NCHAR、VARCHAR、BINARY、VARBINARY、BLOB LONGVARBINARY、OTHER(其他) |
STRING |
| TIME、DATE、YEAR、TIMESTAMP |
DATE |
五、写入
TiDB 写入支持的字段类型及类型转换对应关系如下:
| 内部类型 |
TiDB 数据类型 |
| LONG |
TINYINT、SMALLINT、INT、BIGINT |
| DOUBLE |
FLOAT、DOUBLE、DECIMAL、NUMERIC |
| STRING |
CHAR、NCHAR、VARCHAR、BINARY、VARBINARY、BLOB LONGVARBINARY、OTHER(其他) |
| DATE |
TIME、DATE、YEAR、TIMESTAMP |