<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          MySQL 的 Binlog 日志處理工具(Canal,Maxwell,Databus,DTS)對比

          共 1937字,需瀏覽 4分鐘

           ·

          2020-08-21 23:58

          點擊上方藍色“程序猿DD”,選擇“設(shè)為星標”

          回復“資源”獲取獨家整理的學習資料!

          來源 |?blog.csdn.net/weixin_38071106/article/details/88547660
          • Canal
          • Maxwell
          • Databus
          • 阿里云的數(shù)據(jù)傳輸服務(wù)DTS

          Canal

          定位:基于數(shù)據(jù)庫增量日志解析,提供增量數(shù)據(jù)訂閱&消費,目前主要支持了mysql。

          原理:

          • canal模擬mysql slave的交互協(xié)議,偽裝自己為mysql slave,向mysql master發(fā)送dump協(xié)議
          • mysql master收到dump請求,開始推送binary log給slave(也就是canal)
          • canal解析binary log對象(原始為byte流)

          整個parser過程大致可分為幾步:

          • Connection獲取上一次解析成功的位置(如果第一次啟動,則獲取初始制定的位置或者是當前數(shù)據(jù)庫的binlog位點)
          • Connection建立連接,發(fā)生BINLOG_DUMP命令
          • Mysql開始推送Binary Log
          • 接收到的Binary Log通過Binlog parser進行協(xié)議解析,補充一些特定信息
          • 傳遞給EventSink模塊進行數(shù)據(jù)存儲,是一個阻塞操作,直到存儲成功
          • 存儲成功后,定時記錄Binary Log位置
          • 數(shù)據(jù)過濾:支持通配符的過濾模式,表名,字段內(nèi)容等
          • 數(shù)據(jù)路由/分發(fā):解決1:n (1個parser對應(yīng)多個store的模式)
          • 數(shù)據(jù)歸并:解決n:1 (多個parser對應(yīng)1個store)
          • 數(shù)據(jù)加工:在進入store之前進行額外的處理,比如join

          推薦一個艿艿寫的 6000+ Star 的 SpringBoot + SpringCloud + Dubbo 教程的倉庫:https://github.com/YunaiV/SpringBoot-Labs

          Maxwell

          canal 由Java開發(fā),分為服務(wù)端和客戶端,擁有眾多的衍生應(yīng)用,性能穩(wěn)定,功能強大;canal 需要自己編寫客戶端來消費canal解析到的數(shù)據(jù)。

          maxwell相對于canal的優(yōu)勢是使用簡單,它直接將數(shù)據(jù)變更輸出為json字符串,不需要再編寫客戶端。

          Databus

          Databus是一種低延遲變化捕獲系統(tǒng),已成為LinkedIn數(shù)據(jù)處理管道不可或缺的一部分。Databus解決了可靠捕獲,流動和處理主要數(shù)據(jù)更改的基本要求。Databus提供以下功能:

          • 源與消費者之間的隔離
          • 保證按順序和至少一次交付具有高可用性
          • 從更改流中的任意時間點開始消耗,包括整個數(shù)據(jù)的完全引導功能。
          • 分區(qū)消費
          • 源一致性保存

          阿里云的數(shù)據(jù)傳輸服務(wù)DTS

          數(shù)據(jù)傳輸服務(wù)(Data Transmission Service,簡稱DTS)是阿里云提供的一種支持 RDBMS(關(guān)系型數(shù)據(jù)庫)、NoSQL、OLAP 等多種數(shù)據(jù)源之間數(shù)據(jù)交互的數(shù)據(jù)流服務(wù)。DTS提供了數(shù)據(jù)遷移、實時數(shù)據(jù)訂閱及數(shù)據(jù)實時同步等多種數(shù)據(jù)傳輸能力,可實現(xiàn)不停服數(shù)據(jù)遷移、數(shù)據(jù)異地災(zāi)備、異地多活(單元化)、跨境數(shù)據(jù)同步、實時數(shù)據(jù)倉庫、查詢報表分流、緩存更新、異步消息通知等多種業(yè)務(wù)應(yīng)用場景,助您構(gòu)建高安全、可擴展、高可用的數(shù)據(jù)架構(gòu)。

          優(yōu)勢:數(shù)據(jù)傳輸(Data Transmission)服務(wù) DTS 支持 RDBMS、NoSQL、OLAP 等多種數(shù)據(jù)源間的數(shù)據(jù)傳輸。它提供了數(shù)據(jù)遷移、實時數(shù)據(jù)訂閱及數(shù)據(jù)實時同步等多種數(shù)據(jù)傳輸方式。相對于第三方數(shù)據(jù)流工具,數(shù)據(jù)傳輸服務(wù) DTS 提供更豐富多樣、高性能、高安全可靠的傳輸鏈路,同時它提供了諸多便利功能,極大得方便了傳輸鏈路的創(chuàng)建及管理。

          個人理解:就是一個消息隊列,會給你推送它包裝過的sql對象,可以自己做個服務(wù)去解析這些sql對象。

          免去部署維護的昂貴使用成本。DTS針對阿里云RDS(在線關(guān)系型數(shù)據(jù)庫)、DRDS等產(chǎn)品進行了適配,解決了Binlog日志回收,主備切換、VPC網(wǎng)絡(luò)切換等場景下的訂閱高可用問題。同時,針對RDS進行了針對性的性能優(yōu)化。出于穩(wěn)定性、性能及成本的考慮,推薦使用。


          往期推薦

          Serverless:為我們到底帶來了什么

          我們常用的 Integer 內(nèi)部為什么會去實現(xiàn) Comparable 接口?

          為什么有些大公司技術(shù)弱爆了?

          Java中New一個對象是個怎么樣的過程?

          一個被 CEO 逼瘋的技術(shù)負責人的檢討書


          離職成為自由開發(fā)者的100天

          星球限時拼團優(yōu)惠進行中

          ???????


          星球兩大分享內(nèi)容

          瀏覽 49
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  性无码一区 | 乳交打奶炮泄精合集 | 搡老女的BB视频 | 综合一区二区三区四区 | 欧美亚洲色综久久精品国产 |