跳到主要内容

PolarDbX

选择对端数据库:

数据链路

基本功能

功能说明
结构迁移

如目标端不存在指定映射规则后的 Topic , 则自动进行 Topic 创建,并支持设置分区数

全量数据迁移

逻辑迁移,通过顺序扫描表数据,将数据分批写入到消息中间件

增量实时同步

支持 INSERTUPDATEDELETE 常见 DML 同步

修改订阅

新增、删除、修改订阅表,支持历史数据迁移,文档:修改订阅

重置位点

支持按照文件位点、时间戳 回溯位点,重新消费过去一段时间或指定 binlog 文件和位点开始的增量日志

元数据检索

从源端表查对端,查询设置过过滤条件的

高级功能

功能说明
Topic 映射规则

默认按 . 拼接源端 实例id 形成对端 topic 进行匹配或待创建(如 pxc-vgpq6q097174t6t.dingtax.app_key), 额外支持按 源端一致转小写转大写 映射

消息格式

支持以下消息格式(文档):

  • CloudCanal内置格式
  • AlibabaCanal兼容格式
  • DebeziumEnvelope兼容格式
表级别 Topic

最小按照源端表级别设置对应的 Topic, 支持自动获取表分区

DDL 专用 Topic

支持指定 Topic 发送 DDL, 如未指定,则放置 DDL 时间在对应表 Topic 分区 0 中

自定义代码

文档1:创建自定义代码任务
文档2:自定义代码任务debug
文档3:在自定义代码中打日志

数据过滤条件

支持 WHERE 条件进行数据过滤,内容为 SQL 92 子集, 文档:创建数据过滤任务


源端数据源

前置条件

条件说明
账号权限

云数据库为读写权限账号
自建数据库权限:

  • GRANT SELECT ON . TO 'user'@'host'
  • GRANT REPLICATION CLIENT ON . TO 'user'@'host'
  • GRANT REPLICATION SLAVE ON . TO 'user'@'host'

任务参数

参数名称说明
parseBinlogParallel

增量解析 binlog 的并发数

parseBinlogBufferSize

用于增量解析 binlog 的环形队列大小

maxTransactionSize

单事务最大数据条数,超过则分段刷出

limitThroughputMb

限制增量 binlog 流量

needJsonEscape

将 json 中特殊字符进行转义,以写入到对端

Tips: 通用参数配置请参考 通用参数及功能


目标端数据源

前置条件

条件说明
网络准备

迁移同步节点( sidecar )可连接 Kafka 各节点

任务参数

参数名称说明
schemaFormat

消息格式,文档:消息格式说明

batchWriteSize

单条消息最大数据条数,超过则拆分消息

defaultTopic

无法找到对应 topic 的消息则发送到此 Topic (如新增表)

ddlTopic

专门发送 DDL 的 Topic, 为空则发送到对应 Topic 的第 0 个分区

compressionType

Kafka compression.type 参数, 设置压缩算法, 支持 GZIP, SNAPPY, LZ4, ZSTD 算法

batchSize

Kafka batch.size 参数

acks

Kafka acks 参数, 默认 all

maxRequestBytes

Kafka max.request.size 参数

lingerMs

Kafka linger.ms 参数, 默认 1

envelopSchemaInclude

当 schemaFormat 设置为 DEBEZIUM_ENVELOP_JSON_FOR_MQ 时,消息体是否包含 schema 信息

Tips: 通用参数配置请参考 通用参数及功能

数据链路

基本功能

高级功能

限制和注意点

使用示例

字段类型与映射

链路FAQ

源端数据源

前置条件

任务参数

目标端数据源

前置条件

任务参数