databus mysql搭建_【databus】初识Databus

databus mysql搭建_【databus】初识Databus1.简介Databus是一个低延迟、可靠的、支持事务的、保持一致性的数据变更抓取系统。由LinkedIn于2013年开源。Databus通过挖掘数据库日志的方式,将数据库变更实时、可靠的从数据库拉取出来,业务可以通过定制化client实时获取变更并进行其他业务逻辑。Databus有以下特点:数据源和消费者之间的隔离。数据传输能保证顺序性和至少一次交付的高可用性。从变化流的任意时间点进行消费,包括…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

1. 简介

Databus是一个低延迟、可靠的、支持事务的、保持一致性的数据变更抓取系统。由LinkedIn于2013年开源。Databus通过挖掘数据库日志的方式,将数据库变更实时、可靠的从数据库拉取出来,业务可以通过定制化client实时获取变更并进行其他业务逻辑。

Databus有以下特点:

数据源和消费者之间的隔离。

数据传输能保证顺序性和至少一次交付的高可用性。

从变化流的任意时间点进行消费,包括通过bootstrap获取所有数据。

分区消费

源一致性保存,消费不成功会一直消费直到消费成功

2. 功能&特性

来源独立:Databus支持多种数据来源的变更抓取,包括Oracle和MySQL。

可扩展、高度可用:Databus能扩展到支持数千消费者和事务数据来源,同时保持高度可用性。

事务按序提交:Databus能保持来源数据库中的事务完整性,并按照事务分组和来源的提交顺寻交付变更事件。

低延迟、支持多种订阅机制:数据源变更完成后,Databus能在毫秒级内将事务提交给消费者。同时,消费者使用Databus中的服务器端过滤功能,可以只获取自己需要的特定数据。

无限回溯:对消费者支持无限回溯能力,例如当消费者需要产生数据的完整拷贝时,它不会对数据库产生任何额外负担。当消费者的数据大大落后于来源数据库时,也可以使用该功能。

3. 使用场景举例

BUSSINESS1 和 BUSSINESS2 是两个不同的业务逻辑,他们的变更需要同时写入到 DB 和 CACHE ,那么当他们同时修改同一个数据的时候是否能保证数据的一致性呢?可以发现如果按照下图标明的顺序进行操作并不能保证数据的一致性!

7f18068ac46cbc4847635839678d3a19.png

还有一个问题是变更完DB之后,更新CACHE失败怎么办?如果忽略的话,会造成后续读取到CACHE中旧的数据,如果重试的话,业务代码会写得更加复杂。针对这些场景,如果没有一个强一致协议是很难解决掉的。如果要业务逻辑去实现这些晦涩的一致性协议,却又是不现实的。

现在,有了Databus,上面提到的这些一致性问题就都没有了,并且那些冗长的双写逻辑也可以去掉了,如下图所示:

d3cada9170e3d3ab46796b7b87ebe415.png

4. 系统整体架构与主要组件

4.1 系统整体架构

cf7a0ae6b32858de37944fce06ac8516.png

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/181207.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Centos中查看有哪些用户

    Centos中查看有哪些用户

    2021年9月6日
  • 数据挖掘建模过程有哪些_大数据建模与数据挖掘

    数据挖掘建模过程有哪些_大数据建模与数据挖掘本课程以SPSSModeler为应用软件,以数据挖掘项目生命周期为线索,以实际数据挖掘项目为例,讲解了从项目商业理解开始,到后应用Modeler软件实现的挖掘过程。…

    2022年9月5日
  • 网络营销推广案例ppt_网络营销和推广的方法

    网络营销推广案例ppt_网络营销和推广的方法电驴资源下面是用户共享的文件列表,安装电驴后,您可以点击这些文件名进行下载一┳═┻︻▃内容简介处附有网盘快速下载通道▃︻┻═┳一[实战网络营销.网络推广经典案例战术解].扫描版.张书乐.pdf详情68.1MB全选68.1MB下载地址(拷贝到电驴或者迅雷即可下载):ed2k://|file|%5B%E5%AE%9E%E6%88%98%E7%BD%91%E7%BB%9C%E8%9…

    2022年10月19日
  • 八皇后问题详解(四种解法)

    八皇后问题详解(四种解法)如果你去百度百科八皇后这个问题,你会发现人家也是历史上有头有脸的一个问题,最后一句“计算机发明后就有一万种方式解决这个问题”读起来也让程序猿们很快活。闲话少说,开始阐述我的思路:最无脑的解法一定是八个for遍历,浪费了太多的计算资源在各种无用功上面,我们稍微构思一下:首先如何决定下一个皇后能不能放这里可以有两种思路,第一种是尝试维护一个8*8的二维矩阵,每次找到一个空位放下一个皇后就把对应行列对

    2022年6月30日
  • step by step学习LAMP配置

    step by step学习LAMP配置配置环境:debian6+apache+mysql+python步骤:1.在虚拟机上安装debian;2.配置虚拟机上网(采用host-only连接,单网卡,会虚拟出一个网卡,将主机的网络共享《 VMware下Linux网络配置攻略》,虚拟机和主机能够互相访问)3.配置debian,安装必要的软件包4.参考《http://library.linode.com/

    2022年6月6日
  • datax(25):插件加载原理

    datax(25):插件加载原理一、插件分类按照功能分reader,读插件,例如mysqlReader,从mysql读取数据writer,写插件。例如mysqlWriter,给mysql写入数据;transformer,中间结果转换,例如SubstrTransformer用于字符截取;handler,主要用于任务执行前的准备工作和完成的收尾工作。插件类型由PluginType枚举表示publicenumPluginType{ READER(“reader”),TRANSFORMER(“transfor.

    2022年5月13日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号