DataSail 数据集成 TiDB 数据源为您提供读取和写入 TiDB 的双向通道数据集成能力,实现不同数据源与 TiDB 之间进行数据传输。下文为您介绍 TiDB 数据同步的能力支持情况。
当前主要字段类型支持情况如下:
字段类型 | 离线读(TiDB Reader) | 离线写(TiDB Writer) |
---|---|---|
TINYINT | 支持 | 支持 |
SMALLINT | 支持 | 支持 |
MEDIUMINT | 支持 | 支持 |
INTEGER | 支持 | 支持 |
BIGINT | 支持 | 支持 |
FLOAT | 支持 | 支持 |
DOUBLE | 支持 | 支持 |
DECIMAL | 支持 | 支持 |
REAL | 支持 | 支持 |
CHAR | 支持 | 支持 |
VARCHAR | 支持 | 支持 |
JSON | 支持 | 支持 |
TINYTEXT | 支持 | 支持 |
TEXT | 支持 | 支持 |
MEDIUMTEXT | 支持 | 支持 |
LONGTEXT | 支持 | 支持 |
VARBINARY | 支持 | 支持 |
BINARY | 支持 | 支持 |
TINYBLOB | 支持 | 支持 |
MEDIUMBLOB | 支持 | 支持 |
LONGBLOB | 支持 | 支持 |
ENUM | 支持 | 支持 |
BLOB | 支持 | 支持 |
SET | 支持 | 支持 |
BOOLEAN | 支持 | 支持 |
BIT | 支持 | 支持 |
DATE | 支持 | 支持 |
DATETIME | 支持 | 支持 |
TIMESTAMP | 支持 | 支持 |
TIME | 支持 | 支持 |
YEAR | 支持 | 支持 |
VECTOR | 不支持 | 不支持 |
新建数据源操作详见配置数据源,以下为您介绍 TiDB 数据源相关的配置信息:
参数 | 说明 |
---|---|
基本配置 | |
数据源类型 | TiDB |
接入方式 | 连接串 |
数据源名称 | 数据源的名称,可自行设置,仅支持中文,英文,数字,“_”,100个字符以内。 |
参数配置 | |
JDBC URL | TiDB 数据库的 JDBC URL 连接地址,如 jdbc:mysql://host:port/database。 |
用户名 | 输入有权限访问数据库的用户名信息。 |
密码 | 输入用户名对应的密码信息。 |
TiDB 数据源测试连通性成功后,进入到数据开发界面,开始新建 TiDB 相关通道任务。
新建任务方式详见离线数据同步。
任务创建成功后,您可根据实际场景,配置 TiDB 批式读、TiDB 批式写等通道任务。
数据来源选择TiDB,并完成以下相关参数配置:
其中参数名称前带 * 的为必填参数,名称前未带 * 的为可选填参数。
说明
当来源端为 TiDB 数据源类型时,目标端仅支持写入到 ByteHouse CE 数据源中。
参数 | 说明 |
---|---|
*数据源类型 | 数据来源类型选择为TiDB,您可下拉选择或输入关键词TiDB进行搜索。 |
*数据源名称 | 已在数据源管理中注册成功的TiDB数据源,下拉可选。 |
*数据表 | 选择需要采集的数据表信息,您可同时选择多个 Schema 相同的表进行数据同步,支持区间表达式“table_[0-99]”和时间表达式“table_${date}”方式,来快速配置选择多个表。 |
数据过滤 | 支持您将需要同步的数据进行筛选条件设置,只同步符合过滤条件的数据,可直接填写关键词 where 后的过滤 SQL 语句,例如:create_time > '${date}',不需要填写 where 关键字。 说明 该过滤语句通常用作增量同步,暂时不支持 limit 关键字过滤,其 SQL 语法需要和选择的数据源类型对应。 |
切分建 | 根据源端数据中某一列作为切分键,进行数据分片,建议使用主键或有索引的列作为切分键:
说明 目前仅支持类型为整型或字符串的字段作为切分建。 |
数据目标端选择TiDB,并完成以下相关参数配置:
其中参数名称前带 * 的为必填参数,名称前未带 * 的为可选填参数。
参数 | 说明 |
---|---|
*数据源类型 | 数据去向目标类型,您可下拉选择或输入关键词 TiDB 进行搜索。 |
*数据源名称 | 已在数据源管理界面注册的 TiDB 数据源,下拉可选。 |
*数据表 | 数据源下所属需数据写入的表名,下拉可选。 |
写入前准备语句 | 在执行该数据集成任务前,需要率先执行的SQL语句,通常是为了使任务重跑时支持幂等。 说明 只允许执行一条写入前准备语句。 |
写入后准备语句 | 执行数据同步任务之后执行的 SQL 语句。例如写入完成后插入某条特殊的数据,标志导入任务执行结束。 说明 只允许执行一条写入后准备语句。 |
*数据写入方式 | 下拉选择数据写入 TiDB 的方式,目前支持 insert into、on duplicate key update 写入方式:
|
数据来源和目标端配置完成后,需要指定来源和目标端的字段映射关系,根据字段映射关系,数据集成任务将源端字段中的数据,写入到目标端对应字段中。
字段映射支持选择基础模式和转换模式配置映射:
注意
基础模式和转换模式不支持互相切换,模式切换后,将清空现有字段映射中所有配置信息,一旦切换无法撤销,需谨慎操作。
转换模式:
字段映射支持数据转换,您可根据实际业务需求进行配置,将源端采集的数据,事先通过数据转换后,以指定格式输入到目标端数据库中。
转换模式详细操作说明详见4.1 转换模式
在转换模式中,你可依次配置:来源节点、数据转换、目标节点信息:
配置节点 | 说明 |
---|---|
来源节点 | 配置数据来源 Source 节点信息:
配置完成后,单击确认按钮,完成来源节点配置。 |
数据转换 | 单击数据转换右侧添加按钮,选择 SQL 转换方式,配置转换信息和规则:
配置完成后,单击确认按钮,完成数据转换节点配置。SQL 脚本示例详见4.1.2 添加转换节点。 |
目标节点 | 配置目标节点 Sink 信息:
配置完成后,单击确认按钮,完成目标节点配置。 |
基础模式:
您可通过以下三种方式操作字段映射关系:
一键实时整库同步解决方案支持将 TiDB 数据源中的数据,通过全增量一体化同步方案,先将源端全量数据通过离线任务方式同步迁移,然后再通过实时同步增量任务,将数据采集至 ByteHouse CE 目标端数据源中。
您可进入到 DataSail 控制台界面,进行实时整库解决方案创建。具体方案配置流程请详见 5 新建数据实时整库同步。