數據傳輸是 OceanBase 數據庫提供的一種支持同構或異構數據源與 OceanBase 數據庫之間進行數據交互的服務,具備在線遷移存量數據和實時同步增量數據的能力。
產品功能
數據傳輸提供可視化的集中管控平臺,您只需要進行簡單的配置即可實時遷移數據。數據傳輸旨在幫助您低風險、低成本、高效率地實現同構或異構數據庫向 OceanBase 數據庫進行實時數據遷移和數據同步。
數據遷移:數據遷移屬于一次性任務,遷移完成后即可釋放任務資源。您可以通過數據遷移功能,實現同構或異構數據源之間的數據遷移,適用于數據庫升級、跨實例數據遷移、數據庫拆分、擴容等業務場景。
數據遷移任務是數據遷移功能的基本單元。創建數據遷移任務時,您可以指定的最大遷移范圍是數據庫級別,最小遷移范圍是表級別。詳情請參見 數據遷移 模塊的內容。
說明目前數據遷移任務僅支持后付費模式,即按量付費計費模式。當前為限時免費階段,具體收費時間另行通知。詳情請參見 數據傳輸計費說明。
數據同步:數據同步屬于持續性動作,任務創建后會一直同步數據,保持源端和目標端的數據一致性,實現關鍵業務的數據實時流動。您可以通過數據同步功能,實現數據源之間的數據實時同步,適用于數據異地多活、數據異地災備、數據聚合和實時數據倉庫等多種業務場景。詳情請參見 數據同步 模塊的內容。
說明目前數據同步任務僅支持預付費模式,即包年包月計費模式。詳情請參見 數據傳輸計費說明。
支持的遷移類型
簡稱說明
實例類型 | 簡稱 |
RDS 實例 | RDS |
PolarDB MySQL 實例 | PolarDB |
VPC 內自建數據庫 | VPC |
數據庫網關(Database Gateway) | DG |
公網 IP 自建數據庫 | 公網 |
OceanBase 數據庫 MySQL 租戶 | OB_MySQL |
OceanBase 數據庫 Oracle 租戶 | OB_Oracle |
OceanBase 數據庫 MySQL 租戶 Serverless 實例 | OB_MySQL Serverless 實例 |
數據遷移
暫不支持遷移 Oracle 數據庫的數據至 OceanBase 數據庫 MySQL 租戶,以及遷移 MySQL 數據庫的數據至 OceanBase 數據庫 Oracle 租戶。
增量 DDL 支持范圍請參見 同步 DDL 的支持范圍和使用限制 模塊的文檔。
數據遷移任務 | 結構遷移 | 全量遷移 | 增量 DML | 增量 DDL | 全量校驗 | 反向增量 | 無主鍵表 |
MySQL(RDS/PolarDB/VPC/公網/DG)-> OB_MySQL(集群實例/Serverless 實例/租戶實例) | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
OB_MySQL(集群實例/Serverless 實例)-> MySQL(RDS/PolarDB/VPC/公網/DG) | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 不支持 |
OB_MySQL(集群實例/VPC/Serverless 實例)-> OB_MySQL(集群實例) | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
OB_MySQL(集群實例/Serverless 實例)-> OB_MySQL(VPC) | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
OB_MySQL(租戶實例)-> OB_MySQL(Serverless 實例) | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
Oracle(公網/VPC/DG)-> OB_Oracle(集群實例) | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
OB_Oracle(集群實例)-> Oracle(VPC) | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
OB_Oracle(集群實例/VPC)-> OB_Oracle(集群實例) | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
OB_Oracle(集群實例)-> OB_Oracle(VPC) | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
OB_Oracle(集群實例)-> MySQL(RDS/PolarDB/VPC/公網/DG) | 不支持 | 不支持 | 支持 | 不支持 | 不支持 | 不支持 | 不支持 |
TiDB -> OB_MySQL(集群實例/Serverless 實例) | 支持 | 支持 | 支持 | 不支持 | 支持 | 支持 | 不支持 |
PolarDB-X 1.0 -> OB_MySQL(集群實例/Serverless 實例) | 不支持 | 支持 | 支持 | 不支持 | 支持 | 不支持 | 支持 |
PolarDB-X 2.0 -> OB_MySQL(集群實例/Serverless 實例) | 支持 | 支持 | 支持 | 不支持 | 支持 | 支持 | 支持 |
PolarDB-O(RDS/VPC/公網) -> OB_Oracle(集群實例/Serverless 實例) | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
ADB -> OB_MySQL(集群實例/VPC) | 不支持 | 支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 |
PostgreSQL(RDS 實例)-> OB_Oracle(集群實例) | 支持 | 支持 | 支持 | 不支持 | 支持 | 支持 | 支持 |
PostgreSQL(RDS 實例)-> OB_Oracle(VPC) | 支持 | 支持 | 支持 | 不支持 | 支持 | 支持 | 支持 |
HBase 增強版 V2.0 -> OBKV | 支持 | 支持 | 支持 | 不支持 | 支持 | 支持 | 不涉及 |
Lindorm -> OBKV | 支持 | 支持 | 支持 | 不支持 | 支持 | 支持 | 不涉及 |
遷移類型介紹
遷移類型 | 描述 |
結構遷移 | 負責遷移源庫中的數據對象定義(表、索引、約束、注釋和視圖等)至目標庫中,會自動過濾臨時表。當源端數據庫非 OceanBase 數據庫時,會依據目標 OceanBase 租戶類型的語法定義標準進行數據類型和 SQL 語法的自動轉換和拼裝,然后復制至目標庫中。 |
全量遷移 | 遷移源庫表的存量數據至目標庫對應的表中。您可以在 全量遷移 頁面,根據源庫和目標庫進行篩選,或勾選 查看有問題的對象,篩選阻礙整體遷移進度的對象。您還可以查看 表對象、表索引 和 全量遷移性能。只有表對象和表索引均遷移完成,全量遷移的狀態才會顯示已完成。 |
增量同步 | 增量同步任務開始后,會同步源庫發生變化的數據(新增、修改或刪除)至目標端數據庫對應的表中。當源庫不斷有業務寫入時,數據傳輸會在全量數據遷移啟動前,啟動增量拉取模塊,以拉取源實例中的增量更新數據,對其進行解析、封裝,并存儲至數據傳輸中。 當全量數據遷移完成后,數據傳輸會啟動增量數據回放模塊,從增量數據拉取模塊中獲取增量數據。增量數據經過過濾、映射和轉換后,再同步至目標實例中。 |
全量校驗 | 在全量數據遷移完成,增量數據遷移至目標端并與源端基本追平后,數據傳輸會自動發起一輪針對源庫配置的數據表和目標表的全量數據校驗任務。增量數據同步過程中,您也可以發起自定義的數據校驗。 您可以在 全量校驗 頁面查看全量校驗的整體狀態、啟動時間、結束時間、總計耗時、預估總行數、已完成遷移行數、實時流量和 RPS 等信息。 |
正向切換 | 正向切換(傳統意義上的系統割接流程的抽象化、標準化)不會操作業務應用連接的切換,是數據遷移任務配合應用切換需要執行的任務流。您需要保證在應用連接切換至目標端前完成正向切換的全部流程。 正向切換是數據遷移必不可少的一個流程,通過正向切換,數據傳輸可以確保完成了數據正向遷移的相關工作,并且您可以根據業務需求啟動反向增量組件。正向切換主要涉及的工作如下:
|
反向增量 | 遷移完成后,針對業務割接場景,可以引導用戶在業務數據庫完成切換前在數據傳輸上啟動目標庫至源庫(即反向)的增量同步任務,實時回流業務切換后在目標端數據庫產生的變更數據至源業務數據庫。 |
數據同步
增量 DDL 支持范圍請參見具體的創建數據同步任務文檔。
數據同步任務 | 結構同步 | 全量同步 | 增量 DML | 增量 DDL | 無主鍵表 |
OB_MySQL(集群實例)-> OB_MySQL(集群實例/VPC/Serverless 實例) | 支持 | 支持 | 支持 | 支持 | 不支持 |
OB_MySQL(VPC)-> OB_MySQL(集群實例/Serverless 實例) | 支持 | 支持 | 支持 | 支持 | 不支持 |
OB_MySQL(集群實例/Serverless 實例)-> ADB(阿里云實例) | 支持 | 支持 | 支持 | 支持 | 不支持 |
PostgreSQL(RDS)-> OB_Oracle(集群實例) | 支持 | 支持 | 支持 | 不支持 | 支持 |
OB_MySQL (集群實例/Serverless 實例)-> DataHub(公網/VPC/阿里云實例) | 支持 | 支持 | 支持 | 支持 | 不支持 |
OB_Oracle (集群實例)-> DataHub(公網/VPC/阿里云實例) | 支持 | 支持 | 支持 | 支持 | 不支持 |
OB_MySQL (集群實例/Serverless 實例)-> Kafka(公網/VPC/阿里云實例) | 支持 | 支持 | 支持 | 支持 | 不支持 |
OB_Oracle (集群實例)-> Kafka(公網/VPC/阿里云實例) | 不支持 | 支持 | 支持 | 支持 | 不支持 |
OB_MySQL (集群實例/Serverless 實例)-> RocketMQ (公網/VPC/阿里云實例) | 不支持 | 支持 | 支持 | 支持 | 不支持 |
OB_Oracle (集群實例)-> RocketMQ (公網/VPC/阿里云實例) | 不支持 | 支持 | 支持 | 不支持 | 不支持 |
支持的數據庫版本
傳輸功能 | OceanBase 數據庫版本 | 其他數據終端版本 |
數據遷移 | V1.4.79、V2.2.30、V2.2.52、V2.2.76、V2.2.77、V3.1.x、V3.2.x、V4.0.x、V4.1.x、V4.2.1.10、V4.2.2.1、V4.2.3.0、V4.2.4.0、V4.2.5.0、V4.3.0.1、V4.3.1.0、V4.3.2.1、V4.3.3.1、V4.3.4.0 |
|
數據同步 | V1.4.79、V2.2.30、V2.2.52、V2.2.76、V2.2.77、V3.1.x、V3.2.x、V4.0.x、V4.1.x、V4.2.1.10、V4.2.2.1、V4.2.3.0、V4.2.4.0、V4.2.5.0、V4.3.0.1、V4.3.1.0、V4.3.2.1、V4.3.3.1、V4.3.4.0 |
|