このトピックでは、DataWorks Data Integration を使用して、MySQL データベースの完全データと増分データをリアルタイムで ApsaraDB for OceanBase に同期する方法について説明します。
前提条件
サーバーレス リソースグループ、または Data Integration 専用リソースグループ が購入済みであること。
MySQL データソースと ApsaraDB for OceanBase データソースが DataWorks に追加されていること。詳細については、「Data Integration でデータソースを追加および管理する」をご参照ください。
リソースグループとデータソース間のネットワーク接続が確立されていること。詳細については、「ネットワーク接続ソリューション」をご参照ください。
手順
1. 同期タイプを選択する
Data Integration ページに移動します。
DataWorks コンソール にログインします。上部のナビゲーションバーで、目的のリージョンを選択します。左側のナビゲーションウィンドウで、 を選択します。表示されたページで、ドロップダウンリストから目的のワークスペースを選択し、[Data Integration に移動] をクリックします。
Data Integration ページの左側のナビゲーションウィンドウで、[同期タスク] をクリックします。同期タスクページの上部で、ソースドロップダウンリストからソースタイプを、デスティネーション ドロップダウンリストからデスティネーションタイプを選択し、[同期タスクの作成] をクリックします。表示されたページで、同期タスクの基本情報を構成します。
[ソースとデスティネーション]:
MySQLとApsaraDB for OceanBaseをそれぞれ選択します。[新しいノード名]: ビジネス要件に基づいて同期タスクの名前を指定します。
[同期方式]:
データベース全体のリアルタイム移行を選択します。[同期モード]: [完全初期化] と [増分同期] を選択します。
2. ネットワーク設定とリソースグループを構成する
[ネットワークとリソースの構成] セクションで、同期タスクの実行に使用する [リソースグループ] を選択し、[タスクリソース使用量] パラメーターを構成します。
[ソース] セクションで、[名前] ドロップダウンリストから追加された
MySQLデータソースを選択します。[デスティネーション] セクションで、[名前] ドロップダウンリストから追加されたApsaraDB for OceanBaseデータソースを選択します。次に、[接続テスト] をクリックします。
ネットワーク接続テストが成功したら、[次へ] をクリックします。
3. データを同期するテーブルを選択する
このステップでは、[ソーステーブル] リストでデータを同期するテーブルを選択し、
アイコンをクリックして、選択したテーブルを [選択済みテーブル] リストに移動できます。

4. デスティネーション関連の設定を構成する
データを同期するテーブルを選択すると、選択したテーブルが [デスティネーショ ン テーブルのマッピングルール] セクションに自動的に表示されます。デスティネーショ ン テーブルのプロパティはマッピング待ちです。データの読み取りと書き込みの関係を決定するには、ソーステーブルとデスティネーショ ン テーブル間のマッピングを手動で定義する必要があります。その後、[アクション] 列の [更新] をクリックできます。ソーステーブルとデスティネーショ ン テーブル間のマッピングを直接更新できます。デスティネーショ ン テーブルに関連する設定を構成した後に、ソーステーブルとデスティネーショ ン テーブル間のマッピングを更新することもできます。
同期するテーブルを選択した後、[マッピング結果の一括更新] をクリックできます。デスティネーショ ン テーブル名のマッピングルールを構成しない場合、
${テーブル名}形式のデフォルトルールが使用されます。同じ名前のテーブルがデスティネーショ ン に存在しない場合、システムはデスティネーショ ン に自動的にテーブルを作成します。[デスティネーショ ン データベース名のマッピングルールをカスタマイズする] 列の [編集] をクリックして、ビジネス要件に基づいてデスティネーショ ン データベース名のマッピングルールを構成できます。
組み込み変数と指定された文字列を連結して、最終的なデスティネーショ ン データベース名にすることができます。組み込み変数を編集できます。たとえば、マッピングルールを作成するときに、ソーステーブル名を示す変数に接尾辞を追加して、デスティネーショ ン テーブル名を作成できます。
[デスティネーショ ン テーブル名のマッピングルールをカスタマイズする] 列の [編集] をクリックして、ビジネス要件に基づいてデスティネーショ ン テーブル名のマッピングルールを構成できます。
組み込み変数と特定の文字列を連結して、デスティネーショ ン テーブル名にすることができます。組み込み変数を編集できます。たとえば、マッピングルールを作成するときに、ソーステーブル名を示す変数に接尾辞を追加して、デスティネーショ ン テーブル名を作成できます。
a. フィールドのデータ型マッピングを変更する
ソースフィールドのデータ型とデスティネーショ ン フィールドのデータ型の間には、デフォルトのマッピングが存在します。[デスティネーショ ン テーブルのマッピングルール] セクションの右上隅にある [フィールドデータ型のマッピングを編集] をクリックして、ビジネス要件に基づいてソースフィールドとデスティネーショ ン フィールド間のデータ型マッピングを構成できます。構成が完了したら、[適用してマッピングを更新] をクリックします。
b. デスティネーショ ン テーブルのスキーマを変更して、テーブルにフィールドを追加し、フィールドに値を割り当てる
デスティネーショ ン テーブルが [作成予定] 状態の場合、次の手順を実行して、テーブルにフィールドを追加し、フィールドに値を割り当てることができます。
1 つ以上のデスティネーショ ン テーブルにフィールドを追加します。
単一のデスティネーショ ン テーブルにフィールドを追加する: フィールドを追加するデスティネーショ ン テーブルを見つけ、[デスティネーショ ン テーブル名] 列の アイコンをクリックします。表示されるダイアログボックスで、フィールドを追加します。複数のデスティネーショ ン テーブルに一度にフィールドを追加する: 一度にフィールドを追加するデスティネーショ ン テーブルを選択し、ページ下部にある [一括変更] をクリックし、[デスティネーショ ン テーブルスキーマ - 一括変更とフィールドの追加] をクリックします。
フィールドに値を割り当てます。次のいずれかの操作を実行して、フィールドに値を割り当てることができます。
単一のデスティネーショ ン テーブルに追加されたフィールドに値を割り当てる: 新しく追加されたフィールドに値を割り当てるデスティネーショ ン テーブルを見つけ、[値の割り当て] 列の [構成] をクリックします。[追加フィールド] ダイアログボックスで、フィールドに値を割り当てます。
複数のデスティネーショ ン テーブルに追加されたフィールドに一度に値を割り当てる: 新しく追加されたフィールドに値を割り当てるデスティネーショ ン テーブルを選択し、ページ下部にある [一括変更] をクリックし、[値の割り当て] をクリックして、選択したデスティネーショ ン テーブルの同じフィールドに一度に値を割り当てます。
説明
アイコンをクリックして、値の割り当て方法を切り替え、デスティネーショ ン テーブルに追加されたフィールドに定数と変数を割り当てることができます。
c. DML 処理ルールを構成する
Data Integration はデフォルトの DML 処理ルールを提供します。ビジネス要件に基づいて、デスティネーショ ン テーブルの DML 処理ルールを構成することもできます。
単一のデスティネーショ ン テーブルの DML 処理ルールを構成する: DML 処理ルールを構成するデスティネーショ ン テーブルを見つけ、[DML ルールの構成] 列の [構成] をクリックして、テーブルの DML 処理ルールを構成します。
複数のデスティネーショ ン テーブルの DML 処理ルールを一度に構成する: DML 処理ルールを構成するデスティネーショ ン テーブルを選択し、ページ下部にある [一括変更] をクリックし、[DML ルールの構成] をクリックします。
4. 詳細パラメーターを構成する
同期タスクの詳細なカスタム構成を行う場合は、[詳細パラメーターの構成] 列の [構成] をクリックして、詳細パラメーターの構成を変更できます。
予期しないエラーやデータ品質の問題を防ぐため、詳細パラメーターの構成を変更する前に、パラメーターの意味を理解しておいてください。
5. 同期タスクが完全データを同期するかどうかを指定する
1. 同期タイプを選択する で [同期モード] パラメーターに [完全初期化] を選択した場合、特定のテーブルの完全同期を無効にできます。
5. アラート ルールを構成する
同期タスクの失敗によってビジネスデータの同期に遅延が発生するのを防ぐため、同期タスクに異なるアラート ルールを構成できます。
ページの右上隅にある [アラート ルールの構成] をクリックして、[アラート ルールの構成] パネルに移動します。
[アラート ルールの構成] パネルで、[アラート ルールの追加] をクリックします。[アラート ルールの追加] ダイアログボックスで、パラメーターを構成してアラート ルールを構成します。
説明この手順で構成したアラート ルールは、同期タスクによって生成されるリアルタイム同期サブタスクに有効です。同期タスクの構成が完了したら、リアルタイム同期タスクの管理 を参照して、リアルタイム同期タスクページに移動し、リアルタイム同期サブタスクに構成されているアラート ルールを変更できます。
アラート ルールを管理します。
作成されたアラート ルールを有効または無効にすることができます。アラートの重大度レベルに基づいて、異なるアラート受信者を指定することもできます。
6. 詳細パラメーターを構成する
ビジネス要件に基づいて、同期タスクに構成されている特定のパラメーターの値を変更できます。たとえば、[最大読み取り接続数] パラメーターに適切な値を指定して、現在の同期タスクがソースデータベースに過度の負荷をかけるのを防ぎ、データ生成に影響を与えないようにすることができます。
予期しないエラーやデータ品質の問題を防ぐため、パラメーターの値を変更する前に、パラメーターの意味を理解しておくことをお勧めします。
詳細パラメータの設定構成ページの右上隅にある をクリックします。
詳細パラメータの設定 パネルで、目的のパラメーターの値を変更します。
7. DDL 処理ルールを構成する
ソースで DDL 操作が実行される場合があります。ページの右上隅にある [DDL 機能の構成] をクリックして、ビジネス要件に基づいてソースからの DDL メッセージを処理するルールを構成できます。
詳細については、「DDL メッセージを処理するルールの構成」をご参照ください。
8. リソースグループを表示および変更する
ページの右上隅にある [リソースグループの構成] をクリックして、現在の同期タスクの実行に使用されるリソースグループを表示および変更できます。
9. 同期タスクを実行する
同期タスクの構成が完了したら、ページ下部にある [完了] をクリックします。
[データ統合] ページの [ノード] セクションで、作成された同期タスクを見つけ、[アクション] 列の [開始] をクリックします。
[タスク] セクションで同期タスクの [名前または ID] をクリックし、同期タスクの実行の詳細プロセスを表示します。
同期タスクで O&M 操作を実行する
同期タスクの実行状況を表示する
同期タスクが作成されると、同期タスクページに移動して、ワークスペースに作成されたすべての同期タスクと各同期タスクの基本情報を表示できます。
[操作] 列の [開始] または [停止] をクリックして、同期タスクを開始または停止できます。また、[アクション] 列の [その他] をクリックし、[編集] または [表示] を選択して、同期タスクを変更したり、同期タスクに関する情報を表示したりすることもできます。
[操作] 列の [実行の詳細] をクリックして、同期タスクの実行の詳細を表示できます。同期タスクの実行詳細ページのさまざまなセクションをクリックして、関連情報を表示することもできます。

同期タスクには次のステージがあります。
スキーマ移行: このタブには、デスティネーショ ン テーブルが新しく作成されたテーブルか既存のテーブルかなどの情報が表示されます。新しく作成されたテーブルの場合、テーブルの作成に使用された DDL 文が表示されます。
完全データ初期化: このタブには、バッチ同期に関係するソーステーブルとデスティネーショ ン テーブル、同期の進捗状況、同期されたデータレコードの数などの情報が表示されます。
リアルタイム同期: このタブには、同期の進捗状況、DDL レコード、DML レコード、アラート情報など、リアルタイム同期の統計情報が表示されます。
同期タスクを再実行する
特別な場合において、ソースにテーブルを追加または削除した場合、あるいはデスティネーショ ン テーブルのスキーマまたは名前を変更した場合は、同期タスクの [アクション] 列の [その他] をクリックし、[再実行] をクリックして、変更後にタスクを再実行できます。再実行プロセス中に、同期タスクは、新しく追加されたテーブルからのみデータをデスティネーショ ン に同期するか、マッピングされたソーステーブルからスキーマまたは名前が変更されたデスティネーショ ン テーブルにのみデータを同期します。
タスクの構成を変更せずに同期タスクを再実行する場合は、[アクション] 列の [その他] をクリックし、[再実行] をクリックして、タスクを再実行し、完全同期と増分同期を再度実行します。
タスクにテーブルを追加または削除した後に同期タスクを再実行する場合は、変更後に [完了] をクリックします。この場合、同期タスクの [アクション] 列に [更新の適用] が表示されます。[更新の適用] をクリックして、システムが同期タスクを再実行するようにトリガーします。再実行プロセス中に、同期タスクは新しく追加されたテーブルからデスティネーショ ン にデータを同期します。元のテーブルのデータは再度同期されません。