OceanBaseデータベースのHBase API互換モードからLindorm/HBaseデータベースへのデータ移行タスクを作成し、増分データをソースデータベースからターゲットデータベースに移行できます。
注意
データ移行タスクが長時間非アクティブ状態(失敗、一時停止、または完了状態)にある場合、増分ログの保持期間などの要因により、タスクが復元できない可能性があります。データ移行サービスは、非アクティブ状態が7日間を超えるタスクを自動的に解放し、関連リソースを回収します。タスクに対してアラートを設定し、タスク関連の異常を迅速に処理することを推奨します。
前提条件
ソース側のOceanBaseデータベースのクラスタとテナントが作成済みであること。詳細については、インスタンスの作成および新規テナントの作成をご参照ください。
ターゲット側のデータベースインスタンスが作成済みであること。
ソース側とターゲット側に、データ移行専用のデータベースユーザーを作成し、関連する権限を付与していること。詳細については、ユーザー権限の説明をご参照ください。
制限事項
データ移行タスクを作成できるのは、プロジェクトロールが プロジェクトオーナー、プロジェクト管理者、または データサービス管理者 のユーザーのみです。
現在、データ転送はLindorm/HBaseワイドテーブルエンジンV2.xおよびOceanBaseデータベースHBase API互換モードV4.2.5以降をサポートしています。
OceanBaseデータベースのHBase API互換モードからLindorm/HBaseデータベースへデータを移行する場合、DDL同期はサポートされず、増分同期のみがサポートされます。
OceanBaseデータベースのHBase API互換モードからLindorm/HBaseデータベースへデータを移行する場合、HBaseモデルのテーブルオブジェクトのみがサポートされます。他のテーブルオブジェクトタイプを選択すると、データ品質に影響を与える可能性があります。
注意点
ソース側の文字セットがUTF-8の場合、ターゲット側ではソース側と互換性のある文字セット(例:UTF-8またはUTF-16)を使用することを推奨します。これにより、文字セットの不互換性によるターゲット側での文字化けなどの問題を回避できます。
ターゲット側の一意インデックスを変更した場合、データ移行タスクを再起動する必要があります。そうでない場合、データの不整合が生じる可能性があります。
ノード間やクライアントとサーバー間の時刻が同期していない場合、増分同期のレイテンシデータが不正確になる可能性があります。
例えば、時計が標準時より進んでいる場合、報告されるレイテンシは負の値になる可能性があります。時計が標準時より遅れている場合、報告されるレイテンシは正の値になる可能性があります。
データ移行サービスのDECIMAL、FLOAT、DATETIMEなどの列型に対する移行精度が期待通りであるか確認してください。ターゲット側のフィールド型の精度がソース側のフィールド型より低い場合、切り捨てが発生し、ソース側とターゲット側のデータが不整合になる可能性があります。
データ移行タスクを作成する際、**増分同期**のみを設定した場合、ソース側データベースのローカル増分ログは48時間以上保持されている必要があります。
サポートされているソース側およびターゲット側のインスタンスタイプ
クラウドプロバイダ |
ソース側 |
ターゲット側 |
|---|---|---|
| 阿里云 | OceanBaseデータベース HBase API互換モード | 阿里云 Lindorm |
| 阿里云 | OceanBaseデータベース HBase API互換モード | 阿里云 HBase拡張版 |
操作手順
データ移行タスクを作成します。
OceanBase Cloudコンソールにログインします。
左側のナビゲーションペインで、データサービス > データ移行 をクリックします。
**移行ページで、データ移行**タブをクリックします。
**データ移行タブの右上隅で、タスクを作成する**をクリックします。
タスク名を編集するテキストボックスに、カスタムの移行タスク名を入力します。
中国語、数字、アルファベットの組み合わせを使用することを推奨します。名前にはスペースを含めず、長さは64文字を超えてはなりません。
**ソースとターゲットを設定する**ページで、関連パラメータを設定します。
**ソース**エリアで、関連パラメータを設定します。
既存のデータソースを参照する必要がある場合は、**ソース**の横にある **クイックフィルをクリックし、ドロップダウンリストからターゲットデータソースを選択します。選択後、システムは自動的にソースエリアの設定を入力します。現在の設定を新しいデータソースとして保存する場合は、ソース**エリアの右上隅にある **保存**アイコンをクリックします。
また、クイックフィル のドロップダウンリストで データソースの管理 をクリックすると、データソース ページに移動し、データソースの表示や管理ができます。この記事では異なる種類のデータソースを一元的に管理します。詳細については、データソースモジュールのドキュメントをご参照ください。
パラメータ説明クラウドベンダー 現在 Alibaba Cloud のみサポートしています。 リージョン ソースデータベースのリージョンを選択します。 データベースタイプ ソースデータベースのタイプを OceanBase HBase API Compatible に選択します。 インスタンスタイプ ソースインスタンスのタイプを クラスタインスタンス(KV型) または OBKVインスタンス(フラッグシップ版) に選択します。 インスタンス OceanBaseデータベースのHBase API互換モードのテナントが存在するインスタンスのIDまたは名前です。インスタンス ページで、インスタンスのIDまたは名前を確認できます。 説明
クラウドベンダーがAlibaba Cloudの場合、アカウント間認証をサポートするAlibaba Cloudのメインアカウントのインスタンスも選択できます。詳細については、Alibaba Cloudアカウント認証をご参照ください。
テナント OceanBaseデータベースのHBase API互換モードのテナントのIDまたは名前です。インスタンス ページで、インスタンスを展開し、そのインスタンス下のテナントのIDまたは名前を確認できます。 データベースアカウント データ移行用のOceanBaseデータベースのHBase API互換モードのテナントのユーザー名です。 パスワード データベースユーザーのパスワード。 **ソースとターゲットを設定するの手順で、ターゲット**エリアのパラメータを設定します。
既存のデータソースを参照する必要がある場合は、**ターゲット**の横にある **クイックフィルをクリックし、ドロップダウンリストからターゲットデータソースを選択します。選択後、システムは自動的にターゲットエリアの設定を入力します。現在の設定を新しいデータソースとして保存する場合は、ターゲット**エリアの右上隅にある **保存**アイコンをクリックします。
また、クイックフィル のドロップダウンリストで データソースの管理 をクリックすると、データソース ページに移動し、データソースの表示や管理ができます。この記事では異なる種類のデータソースを一元的に管理します。詳細については、データソースモジュールのドキュメントをご参照ください。
パラメータ説明クラウドプロバイダー 現在、**Alibaba Cloud**をサポートしています。 データベースタイプ 実際の状況に応じて、ターゲットデータベースタイプとして HBase または Lindorm を選択します。 リージョン ターゲットデータベースが存在するリージョンを選択します。 インスタンスタイプ Alibaba Cloud HBase Enhanced Edition または Alibaba Cloud Lindorm を選択します。 接続タイプ パブリックネットワーク接続 を選択します。 接続情報 ターゲットデータベースのアドレスまたはIPを入力します。 ポート データベースポートを入力します。 データベースアカウント データ移行に使用するデータベースアカウント。 パスワード データベースアカウントのパスワード。
**テストして続行をクリックします。タイプとオブジェクトを選択してください**ページで、関連パラメータを設定します。
**移行タイプ**エリアで、現在のデータ移行タスクの移行タイプを選択します。
現在は増分同期のみサポートされており、この移行タイプではDML同期の設定が可能です。詳細については、カスタムDML/DDLの設定をご参照ください。
**移行対象を選択してください**エリアで、移行オブジェクトの選択方法を設定します。
現在、**オブジェクトの指定**を使用して移行オブジェクトを選択できます。
**移行範囲を選択してください**エリアで、移行するオブジェクトを選択します。
**オブジェクトの指定を選択すると、データベースから1つまたは複数のテーブルとビューを選択して移行オブジェクトにできます。左側で移行するオブジェクトを選択し、>**をクリックして右側のリストに追加します。
データ移行では、テキストによるオブジェクトのインポート、ターゲット側オブジェクトの名前変更、および1つまたはすべての移行オブジェクトの削除がサポートされています。
操作説明オブジェクトのインポート 選択エリアの右側にあるリストで、右上の インポート対象 をクリックします。移行オブジェクトのインポートをご参照ください。 名前の変更 データ移行では、移行オブジェクトの名前を変更できます。データベース・テーブルの名前変更をご参照ください。 削除/すべて削除 データ移行では、データマッピング時に、一時的にターゲット側に選択された単一または複数のオブジェクトを削除できます。 - 単一移行オブジェクトの削除
選択エリアの右側リストで、対象オブジェクトの後ろにある 削除 アイコンをクリックすると、その移行オブジェクトを削除できます。 - すべての移行オブジェクトの削除
選択エリアの右側リストで、右上の すべてクリア をクリックします。ダイアログで OK をクリックすると、すべての移行オブジェクトが削除されます。
- 単一移行オブジェクトの削除
**次へをクリックします。移行オプション**ページで、増分同期パラメータを設定します。
パラメータ説明書き込み並列数の設定 このパラメータは、増分同期段階でターゲット側にデータを書き込む並列数を設定します。最大制限は512です。並列数が高すぎるとターゲット側の負荷が過大になり、業務に影響を与える可能性があります。 増分同期開始時刻 特定の時間点以降のデータ移行を指定します。デフォルトは現在のシステム時刻です。増分同期の開始時刻の設定をご参照ください。 増分移行レート制限 実際のニーズに応じて、増分同期レート制限を有効にするかどうかを決定できます。有効にする場合は、RPS(増分同期段階で1秒間にターゲット側に同期できるデータ行数の最大値の制限)とBPS(増分同期段階で1秒間にターゲット側に同期できるデータ量の最大値の制限)を設定してください。 説明
ここで設定されたRPSとBPSは、速度制限とトラフィック制御の能力としてのみ機能します。実際の増分同期で達成可能な性能は、ソース側、ターゲット側、インスタンス仕様の設定などの要因の影響を受けます。
**事前検証**をクリックし、データ移行タスクの事前チェックを実行します。
**事前検証**のステップでは、システムがデータベースユーザーの読み書き権限とネットワーク接続が要件を満たしているかどうかをチェックします。すべてのチェックが通過した場合にのみ、データ移行タスクを開始できます。事前チェック中にエラーが発生した場合:
問題を調査・修正し、チェックが成功するまで再実行できます。
または、事前チェックで失敗した項目の操作列にある**スキップをクリックすることもできます。システムは、その操作をスキップすることによる具体的な影響を説明するダイアログボックスを表示します。関連する影響を受け入れられることを確認したら、ダイアログボックスでOK**をクリックします。
事前チェックが成功したら、**購入をクリックし、データ移行インスタンスを購入する**ページに進みます。
購入が成功すると、データ移行タスクを開始できます。購入の詳細については、データ移行インスタンスの購入をご参照ください。データ移行インスタンスの購入が当面不要な場合は、保存 をクリックしてデータ移行タスクの詳細ページに移動し、後から必要に応じて手動で購入できます。
データ移行の詳細ページの右上にある 検証タスクの設定 をクリックすると、ソースデータベースとターゲットデータベースのデータ差異を比較できます。詳細については、データ検証タスクの新規作成をご参照ください。
データ移行サービスでは、データ移行タスクの実行中に移行オブジェクトを変更できます。詳細については、移行オブジェクトの表示と変更をご参照ください。データ移行タスクが開始されると、選択した移行タイプに従って順次実行されます。詳細については、データ移行タスクの詳細の表示の「移行の詳細を見る」モジュールの内容をご参照ください。