一體化數據同步平臺 DM 1.0 GA 發佈

作者:沈瑀昊

DM(TiDB Data Migration)是由 PingCAP 開發的一體化數據同步平臺,支持從 MySQL 或 MariaDB 到 TiDB 的全量數據遷移和增量數據同步。無論是從 MySQL 向 TiDB 進行平滑數據遷移還是用 TiDB 作爲多個 MySQL 實例的數據彙總庫,都可以通過 DM 來實現。DM 在 TiDB DevCon 2019 上正式開源,經過半年多時間在大量用戶、開發者的支持和反饋下,其功能和穩定性越來越完善。在今天,我們宣佈 DM 1.0 GA 正式發佈。

DM Architecture

<center>DM Architecture</center>

核心特性

一體化數據同步

在進行上下游數據同步的時候,一般需要先進行全量數據複製,再進行增量數據同步。DM 同步任務支持配置多個上游 MySQL/MariaDB 實例,並且同時執行全量遷移和增量同步,可以簡單穩定地滿足用戶遷移數據的場景。

同步規則可配置

DM 提供了包括庫表路由(Table routing)、黑白名單(Black & white table lists)、binlog 過濾(Binlog event filter)在內豐富的數據同步規則,支持在數據同步中進行自定義配置。

分庫分表自動合併

在使用 MySQL 支撐大量數據時,經常會選擇使用分庫分表的方案。但當將數據同步到 TiDB 後,通常希望邏輯上進行合庫合表。DM 針對合庫合表的同步場景,提供了強大的分庫分表自動合併機制,能夠協調上游各分片之間的 DDL 同步,保證數據同步的正確性。

異常任務自動恢復

在數據同步的過程中,上游、下游、DM 自身的問題都有可能導致同步任務的中斷。DM 針對常見的異常同步場景進行了優化,支持自動檢測相關服務狀態並自動嘗試恢復大部分的異常同步任務,使得同步任務的運行更加穩定可靠。

更多資料

大家可以參考 DM 使用文檔 來部署並體驗,參考 DM 升級指南 更新至 GA 版本。想深入瞭解 DM 相關實現原理的同學,也可以查看 DM 源代碼 以及配套的 DM 源碼閱讀系列 文章。如果有相關的問題,歡迎在 Github 上提 issue 或者是在 AskTUG 問答社區 中討論。

下一步計劃

最後再次感謝各位用戶、開發者對 DM 提供的支持和幫助。在 DM 1.0 GA 發佈之後,我們會持續打磨優化 DM,在接下來的版本中,提供 DM 組件高可用、優化分庫分表合併機制、支持同步過程在線校驗等新特性,向更加完善的數據同步平臺方向持續演進。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章