产品限制

数据同步

各类型数据源限制

  • Oracle(详细说明)

    • 不支持连接到 CDB

    • 空的 BLOB / CLOB 字段会在目标端映射为NULL

    • 不支持对 Primary Key 的 Update 操作

    • CDC 不支持动态视图

    • 不开启Supplemental Log,无法进行增量同步

    • Supplemetal Log级别不为ALL,则无法使用Oracle作为源进行合并同步

  • MongoDB(详细说明)

    • 非复制集模式,不支持增量同步

    • 当同步任务设置的主键不是_id时,不支持删除操作的同步

    • 合并同步时,内嵌数组支持最多2层嵌套

  • Mysql/MariaDB(详细说明)

    • 增量同步必须开启binlog,并且log level为ROW级别

  • PostgresSQL(详细说明)

    • 当版本低于9.4(不包含),不支持增量同步

    • 增量同步必须安装wal2json插件,并且wal_level设置为logical

增量同步DDL

  • DDL自动同步,需要源端和目标端数据库类型一致,即同构数据库

  • 支持的源数据库类型

    • Oracle-Oracle同步/迁移

    • Mysql/MariaDB-Mysql/MariaDB同步/迁移

  • 支持的DDL操作

    • 新增字段,示例

    ALTER TABLE [TABLE_NAME] ADD [COLUMN_NAME] [TYPE] [NOT NULL|DEFAULT]
    • 修改字段(暂时不支持改字段注释的DDL),示例

    ALTER TABLE [TABLE_NAME] MODIFY [COLUMN_NAME] [TYPE] [NOT NULL|DEFAULT]
    • 删除字段,示例

    ALTER TABLE [TABLE_NAME] DROP COLUMN [COLUMN_NAME]
  • 只有Mysql/MariaDB-Mysql/MariaDB的迁移,支持同步视图、函数及存储过程

目标库自动建表

  • Oracle

    • 仅支持源库为Oracle、Mysql、MariaDB、SqlServer的自动建表

  • Mysql/Mariadb

    • 仅支持源库为Mysql/Mariadb的自动建表

不支持的数据类型

  • Oracle

    • Oracle timestamp 精度为微秒,MongoDB 时间精度为毫秒

    • INTERVAL YEAR TO MONTH

    • INTERVAL DAY TO SECOND

    • RAW

    • LONG RAW

    • BFILE

    • Object refs

    • XML TYPE

    • Collections (内嵌数组)

    • Simple and nested abstract datatypes (ADTs)

    • 不支持公元前时间

  • PostgreSQL

    • 几何类型

    • 复合类型

    • 范围类型

不支持的表属性

  • Oracle

    • Tables using table compression

  • Mysql/MariaDB

    • 不支持FEDERATED引擎的增量同步

  • 其他

    • 不支持视图的增量同步

其他限制

  • 同步时,当源表没有主键或逻辑主键时,可以使用append模式进行同步,但是该模式不保证数据的幂等性,即执行多次全量同步,目标数据会有冗余,解决方案,需要在每次全量同步之前清空目标表数据

数据发布

  • 不具备聚合查询能力

  • 不具备联表查询能力