<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)對比

          共 1624字,需瀏覽 4分鐘

           ·

          2021-02-01 19:40


          Canal

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

          原理:

          • canal模擬mysql slave的交互協議,偽裝自己為mysql slave,向mysql master發(fā)送dump協議

          • mysql master收到dump請求,開始推送binary log給slave(也就是canal)

          • canal解析binary log對象(原始為byte流)


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


          • ?Connection獲取上一次解析成功的位置(如果第一次啟動,則獲取初始制定的位置或者是當前數據庫的binlog位點)

          • Connection建立連接,發(fā)生BINLOG_DUMP命令

          • Mysql開始推送Binary Log

          • 接收到的Binary Log通過Binlog parser進行協議解析,補充一些特定信息

          • 傳遞給EventSink模塊進行數據存儲,是一個阻塞操作,直到存儲成功

          • 存儲成功后,定時記錄Binary Log位置


          ?


          • 數據過濾:支持通配符的過濾模式,表名,字段內容等

          • 數據路由/分發(fā):解決1:n (1個parser對應多個store的模式)

          • 數據歸并:解決n:1 (多個parser對應1個store)

          • 數據加工:在進入store之前進行額外的處理,比如join

          Maxwell


          canal 由Java開發(fā),分為服務端和客戶端,擁有眾多的衍生應用,性能穩(wěn)定,功能強大;canal 需要自己編寫客戶端來消費canal解析到的數據。
          maxwell相對于canal的優(yōu)勢是使用簡單,它直接將數據變更輸出為json字符串,不需要再編寫客戶端。

          Databus

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


          • 源與消費者之間的隔離

          • 保證按順序和至少一次交付具有高可用性

          • 從更改流中的任意時間點開始消耗,包括整個數據的完全引導功能。

          • 分區(qū)消費

          • 源一致性保存




          阿里云的數據傳輸服務DTS

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

          優(yōu)勢:數據傳輸(Data Transmission)服務 DTS 支持 RDBMS、NoSQL、OLAP 等多種數據源間的數據傳輸。它提供了數據遷移、實時數據訂閱及數據實時同步等多種數據傳輸方式。相對于第三方數據流工具,數據傳輸服務 DTS 提供更豐富多樣、高性能、高安全可靠的傳輸鏈路,同時它提供了諸多便利功能,極大得方便了傳輸鏈路的創(chuàng)建及管理。
          個人理解:就是一個消息隊列,會給你推送它包裝過的sql對象,可以自己做個服務去解析這些sql對象。

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


          源:肉眼品世界

          版權申明:內容來源網絡,版權歸原創(chuàng)者所有。除非無法確認,我們都會標明作者及出處,如有侵權煩請告知,我們會立即刪除并表示歉意。謝謝!





          感謝閱讀



          瀏覽 36
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

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

          手機掃一掃分享

          分享
          舉報
          <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>
                  日韩AV成人| 亚洲在线无码视频 | 青青草在线视频免费视频 | 色婷婷五月天国产 | 天天撸天天干 |