ClickHouse 在执行分析查询时的速度优势很好的弥补了 MySQL 的不足,但是对于很多开发者和DBA来说,如何将MySQL稳定、高效、简单的同步到 ClickHouse 却很困难.本文对比了 NineData、MaterializeMySQL(ClickHouse自带)、Bifrost 三款产品,看看他们在同步时的差异.
整体上,NineData(官网:https://www.ninedata.cloud/?)的数据复制功能在功能、性能表现最突出.其次是Bifrost和ClickHouse自带的MaterializeMySQL.NineData在增量DDL的处理、字段映射的准确性、无主键表、以及功能丰富度上最强(数据校验、过滤、限流等),详细的对比如下图:
MySQL到ClickHouse数据同步产品对比结果概述
此外,在对比了MySQL全部数据类型之后,发现NineData支持更完整,例如对JSON类型、几何数据、地理信息仅NineData支持.此外,对于基础类型,也只有NineData考虑更加细致,使用Biforst或MaterializeMySQL等其他产品则可能导致精度丢失,从而造成数据丢失.
详细的对比如下图:
NineData对记录做了特殊的标记处理,所以很好的支持了无主键表的数据同步.而MaterializeMySQL、Biforst均不支持.
无主键表支持情况
对于数据增量同步,支持好各种类型的DDL是保障同步链路持续稳定的关键,NineData在无主键表DDL支持、字段删除、字段名修改等特殊操作均做了适配处理,可以很好的保障复制链路的问题.同时,NineData还提供了可视化的错误修复和跳过功能,可以最大限度的保障链路持续稳定.
增量DDL对比结果
除了前面介绍的一般功能之外,为了提升数据质量、保障稳定,NineData还支持了包括数据对比、运行中的限流、数据过滤等功能.具体的说明如下:
增量DDL 限流、对比、过滤等对比结果
详细的对比如下:
全量同步
同步性能对比
增量同步
NineData(https://www.ninedata.cloud/)在功能上领先其他同步工具,特别是字段类型的全面适配和增量复制期间DDL的支持度,并且在动态限流、数据对比、监控等能力上也支持的最完善.
所以,如果想把MySQL的数据实时同步到ClickHouse,推荐使用NineData,不仅使用简单(SaaS),并在满足功能和性能的前提下,实现了字段类型的无损转换和数据的实时复制,很好的解决MySQL 同步数据到ClickHouse的问题.
当前各个云厂商虽然都提供ClickHouse托管服务,但是另一方面云厂商又都在发展自己的数仓产品,在同步功能支持上通常仅对自家的数仓产品支持比较好,而对ClickHouse同步支持都很薄弱.此外,开源工具Canal也因为不能很好的支持结构同步,使用和维护起来并不方便.
以上就是土嘎嘎小编为大家整理的云时代,MySQL到ClickHouse数据同步产品对比推荐相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!