NineData,稳定、高效的MySQL到ClickHouse数据同步方案
1. 对比结果概述
整体上,NineData(官网:
www.ninedata.cloud
)的数据复制功能在功能、性能表现最突出。其次是 Bifrost 和 ClickHouse 自带的 MaterializeMySQL。NineData 在增量 DDL 的处理、字段映射的准确性、无主键表、以及功能丰富度上最强(数据校验、过滤、限流等),详细的对比如下图:
3.无主键表支持
NineData 对记录做了特殊的标记处理,所以很好的支持了无主键表的数据同步。
而 MaterializeMySQL、Biforst 均不支持。
详细的对比如下图:
4. 增量DDL
对于数据增量同步,支持好各种类型的DDL是保障同步链路持续稳定的关键,NineData 在无主键表 DDL 支持、字段删除、字段名修改等特殊操作均做了适配处理,可以很好的保障复制链路的问题。同时,NineData 还提供了可视化的错误修复和跳过功能,可以最大限度的保障链路持续稳定。
详细的对比如下图:
通 过 sysbench 生成10张表,每张表500W记录(5000W行),数据文件大小约为 12G:
增量同步
通过 sysbench 生成 5G 大小的 BinLog 日志(约1800W次DML),再进行增量同步:
7. 总结
NineData(
https://www.ninedata.cloud/
)在功能上领先其他同步工具,特别是字段类型的全面适配和增量复制期间 DDL 的支持度,并且在动态限流、数据对比、监控等能力上也支持的最完善。
所以,如果想把 MySQL 的数据实时同步到 ClickHouse,
推荐使用 NineData
,不仅使用简单(SaaS),而且在满足功能和性能的前提下,还实现了字段类型的无损转换和数据的实时复制,很好的解决 MySQL 同步数据到 ClickHouse 的问题。
通 过 sysbench 生成10张表,每张表500W记录(5000W行),数据文件大小约为 12G:
通过 sysbench 生成 5G 大小的 BinLog 日志(约1800W次DML),再进行增量同步: