全部產品
Search
文件中心

ApsaraDB for OceanBase:概述

更新時間:Dec 13, 2024

資料轉送是 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 等資訊。

正向切換

正向切換(傳統意義上的系統割接流程的抽象化、標準化)不會操作業務應用串連的切換,是資料移轉任務配合應用程式切換需要執行的任務流。您需要保證在應用串連切換至目標端前完成正向切換的全部流程。

正向切換是資料移轉必不可少的一個流程,通過正向切換,資料轉送可以確保完成了資料正向遷移的相關工作,並且您可以根據業務需求啟動反向增量組件。正向切換主要涉及的工作如下:

  1. 您需要自行確認已完成資料移轉,並等待正向同步延遲被追平。

  2. 資料轉送將會自動補充目標端為 Oracle 資料庫和 OceanBase 資料庫 Oracle 租戶時,結構遷移階段忽略的檢查類約束、外鍵約束等對象。

  3. 資料轉送將會自動刪除遷移依賴的附加隱藏列及唯一索引。

    該操作僅在 Oracle 資料庫和 OceanBase 資料庫之間,以及 OceanBase 資料庫之間的資料移轉任務存在,詳情請參見 資料移轉服務隱藏列機制說明

  4. 您需要自行補充遷移源端觸發器、函數、預存程序等其它資料轉送不支援的資料庫物件至目標端。

  5. 您需要自行禁用源端的觸發器和外鍵約束(僅資料移轉任務存在反向增量時需要)。

反向增量

遷移完成後,針對業務割接情境,可以引導使用者在業務資料庫完成切換前在資料轉送上啟動目標庫至源庫(即反向)的增量同步處理任務,即時迴流業務切換後在目標端資料庫產生的變更資料至源業務資料庫。

資料同步

說明

增量 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

  • MySQL/RDS MySQL/Polar MySQL:V5.5、V5.6、V5.7、V8.0

  • Oracle:10GR2、11GR2、12C/18C/19C CDB/PDB

    說明

    12C 及之後版本包含 CDB 和 PDB。

  • PolarDB-X 1.0:V5.2.8、V5.4.2、V5.4.9、V5.4.12

  • PolarDB-X 2.0:V5.4.x

  • PolarDB-O:V1.x、V2.x

  • TiDB:V4.x、V5.x

  • PostgreSQL:V11.x、V12.x

  • Lindorm:寬表引擎

  • HBase 增強版:V2.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

  • ADB:V3.0

  • Kafka:V0.9、V1.0、V2.x

  • RocketMQ:V4.x、V5.x(包含商業版和社區版)

  • PostgreSQL:V11.x、V12.x