CloudCanal 落地 DB2 數據遷移同步功能

来源:https://www.cnblogs.com/clougence/archive/2023/03/31/17275900.html
-Advertisement-
Play Games

簡述 Db2 是一款具有悠久歷史的關係型資料庫,由 IBM 公司開發和維護,廣泛應用於金融級業務場景。 CloudCanal 近期提供了 Db2 為源端的數據遷移同步 功能,用戶可以便利地將 Db2 中數據實時同步到其他資料庫,實現數據更廣泛、更實時的應用。 功能介紹 目標資料庫和能力 | 目標端數 ...


簡述

Db2 是一款具有悠久歷史的關係型資料庫,由 IBM 公司開發和維護,廣泛應用於金融級業務場景。

CloudCanal 近期提供了 Db2 為源端的數據遷移同步 功能,用戶可以便利地將 Db2 中數據實時同步到其他資料庫,實現數據更廣泛、更實時的應用。

功能介紹

目標資料庫和能力

目標端數據源 結構遷移 數據初始化 增量同步 數據校驗 數據訂正
MySQL 支持 支持 支持 支持 支持
TiDB 支持 支持 支持 支持 支持
Kafka - 支持 支持 - -
StarRocks 支持 支持 支持 支持 支持

Db2 源端特色能力

基於 CDC 技術的數據同步

Db2 源端同步能力是基於 SQL 複製的 ASN 捕獲代理,CloudCanal 通過捕獲 Db2 CDC 表中的增量數據來實現數據同步。

Db2 源端進行增量數據同步時,CDC 元信息表的維護過程會被自動化管理,無需用戶手動操作。

同時,CloudCanal 會周期性地清理已經同步到目標端的 CDC 記錄,以避免 CDC 表的無限增長,從而保證同步數據的準確性和系統的穩定性。

結構遷移類型自動處理

不同資料庫對於數據類型支持存在差異,CloudCanal 結構遷移時會進行類型自動轉換

Db2 為源端的結構遷移也存在類似轉換(5+,並不斷細化),如對端為 MySQL 或 TiDB,CloudCanal 將自動轉換 VARCHAR FOR BIT DATA 為 VARBINARY。

數據初始化支持斷點續傳

Db2 為源端的數據初始化,支持字元或數字類型主鍵表的斷點續傳功能。

對於億級別數據量的大表,此能力不可或缺,數據初始化斷點續傳功能讓此種暫停儘可能少的影響進度。

數據同步支持斷點續傳

長周期的數據同步任務,暫停任務調整參數修複問題數據優化性能等情況很難避免,斷點續傳讓這些維護操作變成可能。

CloudCanal 定時或定量保存提交後的位點(LSN,log sequence number),確保增量同步任務重啟後可繼續,並且不丟失數據。

配套數據校驗與訂正能力

在數據同步過程中,由於數據的外部關聯性結構約束差異資料庫運維操作軟體bug等情況,兩端數據可能會不一致,此時數據校驗和訂正功能非常必要。

CloudCanal 為 Db2 為源端的數據同步能力額外提供了數據校驗數據訂正功能,快速確定不一致數據範圍,並針對差異數據進行修複。

產品化能力支撐

可視化創建

CloudCanal 創建 Db2 數據遷移同步任務是完全可視化的,通過獲取資料庫元數據,讓用戶在 web 頁面上決定哪些庫、表、列進行遷移同步,或者設定過濾條件自定義數據處理邏輯等。

自動化流程

Db2 數據遷移同步任務創建後,CloudCanal 將自動流轉各個階段的任務,用戶無需干涉,直達數據實時同步狀態。

監控圖表支撐

CloudCanal 為 Db2 數據遷移同步任務提供了多個實用監控指標,包括增量緩存RPS增量緩存延遲(ms)記憶體隊列數據個數等,當調優任務性能或排查任務異常原因時,監控指標提供了很好的判斷依據。

告警支持

CloudCanal 為 Db2 數據遷移任務提供了包括釘釘/企業微信/飛書/自定義等 webhook 類型告警,對於企業級客戶,可額外選擇郵件,以及簡訊告警,實時保障同步任務的高可用。

簡單示例

本示例以將數據從 Db2 資料庫同步到 MySQL 資料庫為操作案例,以便更好地說明 CloudCanal 在不同資料庫之間進行數據同步的能力。

準備動作

  • 準備 CloudCanal,安裝詳細請參考:全新安裝
  • 準備好 Db2 資料庫(本例使用 11.5 版本)和 MySQL 資料庫(本例使用 8.0 版本)
  • 登錄 CloudCanal 平臺 ,添加 Db2 和 MySQL
  • Db2 源端如果需要增量同步需要開啟 CDC,詳細請參考:Db2 源端 CDC 同步準備

任務創建

  • 任務管理 -> 新建任務

  • 測試鏈接並選擇 源 和 目標 資料庫

  • 點擊下一步

  • 選擇 數據同步,並勾選 全量數據初始化,其他選項預設

  • 選擇需要遷移同步的表和列

  • 確認創建任務

  • 任務自動做結構遷移、全量遷移、增量同步

  • 增量階段進行數據寫入後,進行數據校驗,數據校驗通過

總結

本文主要介紹了 CloudCanal 支持 Db2 為源端數據遷移同步功能,通過這個能力,用戶可以便利地將 Db2 中數據實時同步到其他資料庫,實現數據更廣泛、更實時的應用。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 環境準備: 1.至少倆台linux主機,一臺是控制節點,一臺是受控節點 2.控制節點和受控節點都需要安裝Python36 3.控制節點需要安裝ansible 4.控制節點需要獲得受控節點的普通用戶或root用戶的許可權,控制節點需要ssh客戶端,受控節點需要ssh服務端 5.控制節點和受控節點之間網路 ...
  • 一:MQTT 1、MQTT協議說明 ( Message Queuing Telemetry Transport)消息隊列傳輸探測,一種基於==發佈/訂閱模式==的輕量級消息傳輸協議 2、MQTT協議來源 在1999年的時候,Andy Stanford-Clark和 Arlen Nipper需要一種通 ...
  • 安裝與配置 1. 安裝Squid代理伺服器軟體: sudo yum install squid 2. 配置Squid代理伺服器: #http_access allow localnet 將其改為: http_access allow all 然後找到以下行: #http_port 3128 將其改為 ...
  • #ubuntu16.04升級python3.7.1教程 準備 sudo apt-get install --reinstall zlibc zlib1g zlib1g-dev sudo apt-get install libffi-dev libssl-dev libreadline-dev -y ...
  • Linux 文件許可權 文件許可權和文件類型共有10個字元組成,這10個字元可以分成三部分 $$ d+rwx+rwx+rw-\d:表示文件類型\2-4位(第一組rwx):表示文件所有者的對文件的許可權\5-7位(第二組rwx):表示文件所有者所在組的用戶對文件的許可權\8-10位(rw-):表示其他用戶對文 ...
  • 一、項目要求 1、創建role,通過role完成項目(可能需要多個role) 2、部署nginx調度器(node2主機) 3、部署2台lnmp伺服器(node3,node4主機) 4、部署mariadb資料庫(node5主機) 主要用的ansible實現自動化部署,ansible的安裝教程省略,控制 ...
  • 昨天看到一個MySQL資料庫設計原則:強烈建議表的主鍵使用整型自增主鍵。為啥呢? 要弄明白這個問題首先需要瞭解MySQL是如何維護數據的,你需要知道以下幾點: MySQL的InnoDB存儲引擎是在B+樹上維護表數據的 B+樹是一種平衡樹 在這棵樹上,每個節點在電腦中叫做數據頁,預設16k 樹的葉子 ...
  • 一、基本概念 ——後續的內容將會記錄作者在計科學習內容 DB(資料庫):存儲數據的倉庫,數據是有組織進行存儲 DBMS(資料庫管理系統):操縱和管理資料庫的大型軟體 SQL:操縱關係資料庫的編程語言,是一套標準 有Mysql,Oracle,SQLSever,PostgreSQl RDBMS(關係型數 ...
一周排行
    -Advertisement-
    Play Games
  • ## 引言 最近發現自己喜歡用的 Todo 軟體總是差點意思,畢竟每個人的習慣和工作流不太一樣,我就想著自己寫一個小的[Todo 項目]( https://github.com/circler3/TodoTrack ),核心的功能是自動記錄 Todo 執行過程中消耗的時間(尤其面向程式員),按照自己 ...
  • ### 前言 當我們編寫 C# 代碼時,經常需要處理大量的數據集合。在傳統的方式中,我們往往需要先將整個數據集合載入到記憶體中,然後再進行操作。但是如果數據集合非常大,這種方式就會導致記憶體占用過高,甚至可能導致程式崩潰。 C# 中的`yield return`機制可以幫助我們解決這個問題。通過使用`y ...
  • 1. ADO.NET的前世今生 ADO.NET的名稱起源於ADO(ActiveX Data Objects),是一個COM組件庫,用於在以往的Microsoft技術中訪問數據。之所以使用ADO.NET名稱,是因為Microsoft希望表明,這是在NET編程環境中優先使用的數據訪問介面。 ADO.NE ...
  • 1. 為什麼需要單元測試 在我們之前,測試某些功能是否能夠正常運行時,我們都將代碼寫到Main方法中,當我們測試第二個功能時,我們只能選擇將之前的代碼清掉,重新編寫。此時,如果你還想重新測試你之前的功能時,這時你就顯得有些難為情了,因為代碼都被你清掉了。當然你完全可以把代碼寫到一個記事本中進行記錄, ...
  • 1. 透過現象看本質 反射被譽為是 c#中的黑科技 ,在很多領域中都有反射的身影,例如,我們經常使用的ORM框架,ABP框架 等。 反射指程式可以訪問、檢測和修改它本身狀態或行為的一種能力。. 程式集包含模塊,而模塊包含類型,類型又包含成員。. 反射則提供了封裝程式集、模塊和類型的對象。. 您可以使 ...
  • # Rust Web 全棧開發之 Web Service 中的錯誤處理 ## Web Service 中的統一錯誤處理 ### Actix Web Service 自定義錯誤類型 -> 自定義錯誤轉為 HTTP Response - 資料庫 - 資料庫錯誤 - 串列化 - serde 錯誤 - I/ ...
  • 在前面的幾篇文章中,詳細地給大家介紹了Java里的集合。但在介紹集合時,我們涉及到了泛型的概念卻並沒有詳細學習,所以今天我們要花點時間給大家專門講解什麼是泛型、泛型的作用、用法、特點等內容 ...
  • ###BIO:同步阻塞 主線程發起io請求後,需要等待當前io操作完成,才能繼續執行。 ###NIO:同步非阻塞 引入selector、channel、等概念,當主線程發起io請求後,輪詢的查看系統是否準備好執行io操作,沒有準備好則主線程不會阻塞會繼續執行,準備好主線程會阻塞等待io操作完成。 # ...
  • 摘要:在讀多寫少的環境中,有沒有一種比ReadWriteLock更快的鎖呢?有,那就是JDK1.8中新增的StampedLock! 本文分享自華為雲社區《【高併發】高併發場景下一種比讀寫鎖更快的鎖》,作者: 冰 河。 什麼是StampedLock? ReadWriteLock鎖允許多個線程同時讀取共 ...
  • ## 併發與並行😣 ### 併發與並行的概念和區別 並行:同一個時間段內多個任務同時在不同的CPU核心上執行。強調同一時刻多個任務之間的”**同時執行**“。 併發:同一個時間段內多個任務都在進展。強調多個任務間的”**交替執行**“。 ![](https://img2023.cnblogs.co ...