このトピックでは、MaxCompute Migration Service (MMS) を使用してデータソースを MaxCompute に移行する方法について説明します。
移行ジョブのタイプ
MMS は、完全なデータベース移行、複数テーブルの部分移行、複数パーティションの部分移行の 3 種類の移行ジョブをサポートしています。
完全なデータベース移行: 単一のデータベースを移行します。
部分移行 (複数テーブル): 1 つ以上のテーブルを移行します。
部分移行 (複数パーティション): 1 つ以上のパーティションを移行します。
手順
移行ジョブを作成する前に、データソースが設定されていることを確認してください。
MaxCompute コンソールにログインし、左上隅でターゲットリージョンを選択します。
左側のナビゲーションウィンドウで、 を選択します。
[データソース] タブで、移行先データソースの左側にある
アイコンをクリックして、データベースのリストを展開します。移行先データベースの [操作] 列で、[完全移行] または [部分移行] をクリックし、パラメーターを設定します。
[部分移行] をクリックすると、移行先データベースのページにリダイレクトされます。[テーブルリスト] タブと [パーティションリスト] タブで、移行するテーブルまたはパーティションを選択し、[移行ジョブの作成] をクリックします。
パラメーター
必須
説明
[データベース名]
はい
デフォルト値は、移行するデータベースの名前です。
[ジョブ名]
はい
ジョブの名前。
[データソース]
はい
デフォルト値は、現在のデータソースの名前です。
[ソースデータベース]
はい
デフォルト値は、移行するデータベースの名前です。
[移行先 MaxCompute プロジェクト]
はい
移行先 MaxCompute プロジェクトの名前を選択します。
説明データソースが BigQuery の場合、移行先の MaxCompute プロジェクトは スキーマをサポートしている必要があります。
[移行先スキーマ]
はい
移行先の MaxCompute プロジェクトでスキーマを選択します。スキーマの詳細については、「スキーマ操作」をご参照ください。
説明このパラメーターは、スキーマが有効になっているプロジェクトでのみ使用できます。
[テーブルのブラックリストとホワイトリスト]
いいえ
[ホワイトリスト] または [ブラックリスト] を選択します。オプションは次のとおりです。
ホワイトリスト: 移行するテーブルの名前。複数のテーブル名はカンマ (,) で区切ります。
説明移行タイプとして部分移行 (複数テーブル) を選択した場合、選択したテーブルがホワイトリストに追加されます。
完全なデータベース移行を実行する場合、ホワイトリストはデフォルトで空です。
ブラックリスト: 移行したくないテーブルの名前。複数のテーブル名はコンマ (,) で区切ります。
移行タイプとして部分移行 (複数パーティション) を選択した場合、このパラメーターを設定する必要はありません。
[ETA]
いいえ
ジョブの予想完了時間を選択します。MMS はこの時間に基づいてジョブを優先度順にソートします。
[検証を有効にする]
いいえ
この機能を有効にすると、MMS はソースと移行先のパーティションで
SELECT COUNT(*)文を実行して行数を取得します。その後、MMS は行数に基づいてデータが正常に移行されたかどうかを検証します。[増分移行]
いいえ
この機能を有効にすると、新しいタスクは正常に移行されたパーティションをスキップします。
[テーブルスキーマのみを移行]
いいえ
MaxCompute に対応するテーブルとパーティションのスキーマのみを作成します。データは移行されません。
[パーティションフィルター]
いいえ
パーティションをフィルターする式。例:
p1 >= '2022-03-04' and (p2 = 10 or p3 > 20) and p4 in ('abc', 'cde')。式については、次の一覧で説明します。p1、p2、p3 はパーティション名です。
パーティション値は文字列または数値にすることができます。文字列は二重引用符 ("") または単一引用符 ('') で囲む必要があります。
INT および BIGINT 以外のタイプのパーティションキー列の場合、パーティション値は文字列のみにすることができます。
次の比較演算子がサポートされています:
>、>=、=、<、<=、および <>。パーティションフィルター式は
IN演算子をサポートしています。次の論理演算子がサポートされています:
ANDおよびOR。括弧がサポートされています。
[テーブル名マッピング]
いいえ
移行先の MaxCompute プロジェクトに移行された後のテーブルの名前。
[フィールド名マッピング]
いいえ
MaxCompute に移行した後の列の名前。
[その他の設定]
いいえ
TableType のマッピング。この設定項目は JSON 形式です。例:
{ "mc.table.type": { "dataset1.table1":{"table.type":"delta","pk":["id1"]}, "dataset2.table2":{"table.type":"delta","pk":["id1","id2"]}, "dataset2.table2":{"table.type":"transactional"} } }。[送信] をクリックして移行ジョブを作成します。
ジョブが作成された後、[移行ジョブ] タブでそのステータスを表示できます。移行ジョブが失敗した場合:
移行ジョブの [アクション] 列にある [詳細] をクリックして、[移行タスク] [リスト] ページを開くことができます。次に、タスクの [アクション] 列にある [ログ] をクリックして、失敗の理由を表示します。
移行ジョブの [操作] 列にある [再試行] をクリックして、再度実行します。
説明データ移行には、スキーマ移行、データ移行、データ検証の 3 つの段階があります。移行ジョブのタスクが失敗し、[再試行] をクリックすると、タスクはデータ移行段階から再開されます。