データ移行により、異なるデータベース間でデータをすばやく簡単に移行できます。これは、オンプレミスデータからクラウドへの移行、Alibaba Cloud 内でのインスタンス間移行、データベースの分割および拡張などのシナリオに適用できます。同種間移行 (たとえば MySQL から MySQL へ) と、異種間移行 (たとえば Oracle から Alibaba Cloud RDS MySQL へ) の両方が可能です。また、DTS は、マルチレベルオブジェクトマッピングやデータフィルタリングなど、基本的な ETL 機能を提供します。
移行タイプ
データ移行プロセス全体は、3 つの連続した段階で構成されています。移行タスクを作成するときに、自分の環境に最適な、複数の段階を選択することができます。これらの段階は次のとおりです。
スキーマ移行: ソースインスタンスからターゲットインスタンスに構造定義を移行します。
既存データ移行: ソースインスタンスからターゲットインスタンスに既存データを移行します。
変更データレプリケーション: ソースインスタンスでの変更データをターゲットインスタンスにレプリケートします。変更データの取得は、既存データ移行の開始時から移行プロセス全体の終了時まで行われます。
注意: ゼロダウンタイムのデータ移行を実行する場合は、これらのすべての段階のデータ移行が必要です。
移行タスク
移行タスクは、データ移行の基本単位です。データの移行を実施するためには、DTS コンソールで移行タスクを作成する必要があります。移行タスクでは、ソースインスタンスとターゲットインスタンス間の接続、移行対象オブジェクト、移行に使用する段階、および追加パラメーターを指定する必要があります。また、DTS コンソールで移行タスクを作成、管理、一時停止または削除することもできます。
移行タスクは、作成および進行中に異なるステータスを示します。
移行ステータス | 説明 | 可能な操作 |
---|---|---|
開始前 | 移行タスクは設定されていますが、開始されていません。 | 事前チェック 削除 |
事前チェック中 | 移行タスクは事前チェックを実行しています。 | 削除 |
事前チェック通過 | 移行タスクは事前チェックをパスしました。 | 開始 削除 |
移行中 | データを移行中です。 | 一時停止 停止 削除 |
移行失敗 | 移行が失敗しました。 | 削除 |
一時停止 | 移行が中断されました。 | 開始 削除 |
終了 | 移行が完了またはキャンセルされました。 | 削除 |
移行仕様
データ移行では、次の移行仕様をサポートしています。そのリストを、移行元データベースエンジン > 移行先データベースエンジンの形式で示します。
移行仕様 | スキーマ移行 | 既存データ移行 | 変更データレプリケーション |
---|---|---|---|
Oracle > RDS for MySQL | サポート | サポート | 非サポート |
Oracle > RDS for PPAS | サポート | サポート | サポート |
MySQL > RDS for MySQL | サポート | サポート | サポート |
SQLServer > RDS for SQLServer | サポート | サポート | サポート |
PostgreSQL > RDS for PostgreSQL | サポート | サポート | サポート |
Redis > Redis | サポート | サポート | サポート |
ソースインスタンス
次のデータベースをデータ移行のソースインスタンスとして使用できます。
- RDS インスタンス
- オンプレミスデータベース
- ECS ビルトインデータベース
ターゲットインスタンス
次のデータベースをデータ移行のターゲットインスタンスとして使用できます。
- RDS インスタンス
- ECS ビルトインデータベース
- Redis インスタンス
複数の ETL 機能
データ移行では、次のような複数の ETL 機能がサポートされています。
マルチレベルオブジェクトマッピング: DTS コンソールでマッピング関係を指定することにより、名前の異なるソースオブジェクトとターゲットオブジェクトとの間で、データ移行を実行できます。この機能は、データベース、テーブル、カラムなどのオブジェクトをサポートしています。
データフィルター: 標準的な SQL の条件判定を指定することによって、移行するテーブルをフィルターに掛けることができます。たとえば、期間を指定することによって、最新のデータのみを移行することができます。