1、楊林OceanBase 高級技術專家OceanBase OceanBase 數據傳輸服務數據傳輸服務 OMSOMSContents目 錄01OMS 介紹02客戶案例03UpcomingOMS 功能概覽OMS(OceanBase Migration Service)是 OceanBase 提供的一站式數據傳輸服務on-premise&cloud異構數據庫遷移上 OB數據庫版本升級異地災備實時計算傳統關系型數據庫MySQLOracleDB2OBschema 轉換全量遷移增量遷移數據校驗OMS數據遷移全量同步增量同步OMS 數據同步異構數據庫OB消息隊列datahubRocketMQKafkaOce
2、anBaseOMS 數據遷移3w+MySQL&Oracle databases migrated遷移中遷移后平滑遷移業務無感最小化切割時間窗口安全回滾應用反向回流切割切割OceanBase異構數據庫應用正向同步OceanBase異構數據庫遷移前應用異構數據庫應用異構數據源OceanBaseOMS 數據遷移 流程對象全量增量校驗割接反向預檢查OceanBaseOceanBaseMySQLOracleOMS 數據同步全量初始化基于 CDC 持續增量同步數倉&數據分析,企業決策OceanBasekafkaflink聚合同步,AP分析OceanBaseMySQLMySQLMySQLMySQLMySQL
3、MySQL跨地域/異構容災OceanBase北京OceanBase上海OceanBase深圳異地多活OMS 整體架構管控系統OMS傳輸系統集群管理高可用監控SOURCEMySQLOracleDB2OBOceanBase異構數據庫OBKafkaDatahubRocketMQOMS管控系統MysQL pluginoracle pluginDb2 pluginOB plugin數據源插件統一記錄模型int8.floatdoubledecimalbytesstringdatetimetimestamptimestamp_tzdurationyear數據切片全量遷移數據切片位點管理ETLwriter性能
4、穩定性數據質量增量日志解析增量日志解析事務日志解析schema管理事務管理回查管理數據存儲增量同步并行回放沖突檢測DDL同步事務拆分冪等控制ETL全量校驗數據切片源端reader不一致記錄目的端reader數據訂正校驗增量校驗數據對齊源端日志不一致記錄目的端日志數據訂正校獫OMS 預檢查將問題盡可能在鏈路創建前暴露出來 連通性檢查 賬號權限檢查 事務日志格式檢查 時鐘同步檢查 數據庫版本、引擎檢查 唯一鍵檢查 字符集檢查 外鍵依賴檢查 列類型檢查 大小寫敏感檢查OMS schema 轉換ASTtableindexconstraintviewstore proceduretriggerseque
5、nce源端對象名稱類型分區約束tableindexconstraintviewstore proceduretriggersequenceOceanBase 對象DDLOMS 全量遷移性能模型性能模型多表并行調度表內切片并行調度 基于 PK/UK 切片 基于數據存儲組織方式切片,比如 Oracle寫入防打爆保護源端DBT1T2T3T4OceanBaseT1T2T3T4SELECT*FROM T1 WHERE PK1000 AND PK=2000(1000,200012000,3000數據切片(1000,2000reader(1000,2000writer(1500,2000位點管理全量遷移斷點
6、續傳prepareloadcommit批量讀流式串接批量寫OMS 增量同步基于事務日志的增量數據解析串行事務依賴計算轉并行,保證回放速度。全鏈路延遲秒級內高級特性高級特性DDL 同步大事務處理數據打標以及基于打標數據的過濾,構建雙向復制鏈路或者多活同步鏈路SourceMySQLbinlogOracleredoDB2redoOBclogCDC Servicesouce plugins事務日志拉取記錄組裝&元信息淺解析&過濾事務管理數據解析&回查queueschema registryConnectorT4T5T6T7T8T9T0T1T2T3workerworkerworkerworkerLR o
7、f table_0LR of table_3LR of table_2.LR of table_NworkerworkerworkerTargetOBMQ黑/白名單初始化DDL演進DML解析基于事務基于表基于事務按表寫入對應topicOMS 數據校驗確保數據遷移質量確保數據遷移質量源端DBT1T2T3T4OceanBaseT1T2T3T4非同步寫入非同步寫入l l全量校驗(1000,2000)(12000,3000)數據切片源端reader(1000,2000)目的端reader(1000,2000)數據校驗匹配校驗不一致復檢一致不一致記錄訂正SQL位點管理增量日志解析增量同步preparel
8、oadcommitOB增量日志解析增量同步OB增量日志解析record cache增量拉取增量拉取增量拉取增量拉取校驗校驗不不 致回查復檢致回查復檢不一致記錄不一致記錄非同步寫入識別非同步寫入識別訂正訂正SQLSQL增量校驗業務寫入非同步寫入OMS 一站式服務客戶案例在線業務場景說明:用戶需要將核心系統使用的數據庫從 Oracle遷移到 OceanBase。在割接完成后需要訂閱OceanBase 的增量數據做實時計算、數倉同步。解決方案:通過一站式數據遷移能力將業務庫從 Oracle遷移到 OceanBase,OceanBase 數據實時同步到 Kafka 供訂閱計算、數倉同步。實時計算數倉同步OceanBaseOracle遷移、割接實時同步消費在線服務UpcomingOceanBase binlog serviceMySQL 遷移到 OceanBase 后,canal/debezium/finkcdc/maxwell 如何無縫切到OceanBase多云&更多數據源 AWS Auroa 騰訊云 TDSQL SQL Server PostgreSQL開源將 OMS 傳輸組件的一些能力逐步開源到社區Thank you!GitHub:/oceanbase/服務號:OceanBase數據庫星球論壇: