美文网首页
canal和databus对比

canal和databus对比

作者: wz的技术窝 | 来源:发表于2019-08-01 18:06 被阅读0次

Databus和canal都能够提供实时从数据库获取变更,并提供给下游的实时消费流的功能。

本文针对两个系统实现和应用上的不同点,做了一个简单的对比:

对比项 Databuscanal结论

支持的数据库 mysql, oraclemysql(据说内部版本支持oracle)Databus目前支持的数据源更多

业务开发 业务只需要实现事件处理接口事件处理外,需要处理ack/rollback,

反序列化异常等

Databus开发接口用户友好度更高

服务模型 relayrelay可以同时服务多个client一个server instance只能服务一个client

(受限于server端保存拉取位点)

Databus服务模式更灵活

 clientclient可以拉取多个relay的变更,

访问的relay可以指定拉取某些表某些分片的变更

client只能从一个server拉取变更,

而且只能是拉取全量的变更

可扩展性 client可以线性扩展,处理能力也能线性扩展

(Databus可识别pk,自动做数据分片)

client无法扩展Databus扩展性更好

可用性client haclient支持cluster模式,每个client处理一部分数据,

某个client挂掉,其他client自动接管对应分片数据

主备client模式,主client消费,

如果主client挂掉,备client可自动接管

Databus实时热备方案更成熟

 relay/server ha多个relay可连接到同一个数据库,

client可以配置多个relay,relay故障启动切换

主备relay模式,relay通过zk进行failovercanal主备模式对数据库影响更小

 故障对上游

数据库的影响

client故障,bootstrap会继续拉取变更,

client恢复后直接从bootstrap拉取历史变更

client故障会阻塞server拉取变更,

client恢复会导致server瞬时从数据库拉取大量变更

Databus本身的故障对数据库影响几乎为0

系统状态监控 程序通过http接口将运行状态暴露给外部暂无Databus程序可监控性更好

开发语言 java,核心代码16w,测试代码6wjava,4.2w核心代码,6k测试代码Databus项目更成熟,当然学习成本也更大

相关文章

  • canal和databus对比

    Databus和canal都能够提供实时从数据库获取变更,并提供给下游的实时消费流的功能。 本文针对两个系统实现和...

  • mysql bin log 同步工具

    1. databus 2. canal 3. otter

  • spark

    databus

  • Databus

    系统如果要应付大规模的请求,一条必经之路就是数据库的分割,单服务器的性能早晚都会成为负载的短板。而数据库分割,通常...

  • Kafka Connect之Canal

    Canal介绍及其原理,多谢博主的共享,对Canal和MaxWell的区别瞬间懂了很多。 1.Canal和Maxw...

  • 架构师必备:巧用Canal实现异步、解耦的架构

    本文介绍如何应用Canal实现异步、解耦的架构,后续有空再写文章分析Canal原理和源代码。 Canal简介 Ca...

  • CanalAdmin 使用

    安装 canal-admin 参考 Canal Admin QuickStart · alibaba/canal ...

  • canal 高可用介绍(4)

    系列 canal 组件介绍(1) canal 启动介绍(2) canal 数据消费介绍(3) canal 高可用介...

  • canal 启动介绍(2)

    系列 canal 组件介绍(1) canal 启动介绍(2) canal 数据消费介绍(3) canal 高可用介...

  • canal 数据消费介绍(3)

    系列 canal 组件介绍(1) canal 启动介绍(2) canal 数据消费介绍(3) canal 高可用介...

网友评论

      本文标题:canal和databus对比

      本文链接:https://www.haomeiwen.com/subject/dhbcdctx.html