tencent cloud

文档反馈

数据同步概述

最后更新时间:2024-01-11 11:14:10

    数据同步要求

    数据同步功能支持两个数据源之间的数据实时同步,可应用于本地数据灾备、查询与报表分流、商业智能分析(BI)及实时数据仓库等多种业务场景。
    支持同步的实例类型
    源实例类型
    目标实例类型
    【公有云】云数据库 MariaDB/MySQL
    【公有云】云数据库 MariaDB/MySQL
    【公有云】云数据库 PostgreSQL
    【公有云】消息队列 Ckafka
    【专有云】云数据库 MariaDB/MySQL
    【公有云】分布式数据库
    【公有云】分布式数据库
    【公有云】消息队列 Ckafka
    【专有云】分布式数据库
    支持的同步拓扑 数据库同步功能支持“一对一单向同步、一对多单向同步、级联单向同步、多对一单向同步”的串行拓扑,不支持“双向环状同步”拓扑。
    支持的实例版本
    MariaDB 10.0、10.1
    MySQL 5.6、5.7
    PostgreSQL 9.6
    Ckafka 所有版本
    支持的同步语法
    DML 操作:INSERT、UPDATE、DELETE。
    DDL 操作:CREATE TABLE、ALTER TABLE、ADD COLUMN、DROP COLUMN、RENAME COLUMN。
    数据库同步对象 同步对象支持精确匹配数据库、表;支持正则匹配数据库、表。暂不支持非数据表对象,如存储过程、视图、索引、触发器等,如需非数据表对象请在目标端手动创建。
    数据库同步费用 数据库同步功能目前免费。
    数据库同步网络 目前仅支持腾讯云同地域内数据库实例之间及专线内的数据库同步。跨地域的数据同步或灾备需 提交工单,工单请备注两地实例 ID 和同步需求,审批通过后方可开启。

    数据同步功能

    数据类型转换

    MariaDB/MySQL 到 PostgreSQL 的同步

    MariaDB/MySQL 与 PostgreSQL 的数据类型不同,数据库同步工具将按如下规则进行转换:
    MariaDB/MySQL 数据类型
    同步到 PostgreSQL 后的数据类型
    tinyint/smallint
    smallint
    mediumint/int
    integer
    bigint
    bigint
    real/double
    double precision
    float
    float
    bit
    bit
    bool/boolean
    boolean
    char/varchar
    char/varchar
    binary/varbinary
    text
    year/date/time/datetime/timestamp
    timestamp without time zone
    tinyblob/mediumblob/blob/longblob/long
    bytea
    mediumtext/text/longtext
    text
    decimal/numeric
    decimal/numeric
    enum
    integer
    说明:
    表中所述类型的列在转换过程中数据长度保持不变,表中未列出类型在转换过程中保持不变。

    MariaDB/MySQL 到分布式数据库的同步

    MariaDB/MySQL 与分布式数据库的数据类型相同,不存在数据类型转换情况。

    MariaDB/MySQL 到 CKafka 的同步

    相关数据将转换为 JSON 格式,请参见 Binlog 日志消费格式

    分布式数据库到 CKafka 的同步

    相关数据将转换为 JSON 格式,请参见 Binlog 日志消费格式

    数据订阅功能

    数据同步到 Ckafka 已支持数据订阅,配置前需先购买 Ckafka,详细介绍请参见 消息队列 CKafka,配置建议如下:
    规格 可通过计划同步的实例每日更新数据量、日均峰值或平均值、计划保留在 Ckafka 的时间来评估 Ckafka 实例规格。 例如,某实例每日更新1000万行,每行数据2KB,日均写入峰值为2万行每秒,期望 Ckafka 选用3副本,存储数据3天。 则该实例每日更新数据20GB,转换为 JSON 后约30GB,存储3天,3副本约需要空间270GB,数据库写入峰值带宽约39MB/s,Ckafka 选3副本的吞吐量约117MB/s,选择 Ckafka 的标准型即可基本满足需求。
    网络 建议与源实例处于相同的 VPC 网络下。
    topic 选择 一个同步任务需占用1个 topic,多个同步任务需分别选择多个且不同的 topic,否则可能导致数据混乱。
    参数选择 以下建议仅供参考,具体请根据实际需求选择。
    分区数(partition):1
    副本数:3
    cleanup.policy:删除
    min.isync.replicas:2
    unclean.leader.election.enable:false
    数据一致性 由于网络中断或其他原因,数据库实例生产到 Ckafka 的消息可能重复,此时消费端重放数据时,可以采用幂等方式消除。
    说明:
    幂等,即多次重复执行消息时,最终数据一致,当遇到主键冲突的记录时,先进行 delete 再 insert,如果 update 无法匹配到数据,会强行插入;delete 找不到数据,直接跳过。通过幂等方案即可以实现数据消费一致性。使用幂等时表必须要有主键或有不能为 NULL 值的唯一索引。
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持