移行タスクは、データオンライン移行のコア単位です。移行タスクを構成して実行すると、システムはソースからデスティネーションへ、帯域幅、同時実行数、上書きポリシー、フィルタールールなどの設定に従ってデータをコピーします。また、監査およびレビュー用に移行ログとレポートを生成します。
基本構成
移行タスクの基本情報を構成します。これには、タスク名、ソースアドレス、デスティネーションアドレスが含まれます。
タスク名
移行タスクの名前は、以下のルールを満たす必要があります。
名前は空にできず、3~63 文字である必要があります。
名前には小文字英字、数字、ハイフン (-) やアンダースコア (_) などの特殊文字を含めることができます。大文字と小文字は区別されます。
UTF-8 でエンコードされた値は、ハイフン (-) またはアンダースコア (_) で開始できません。
アドレス構成
ソースアドレス:データ移行タスクはこのアドレスからデータを読み取ります。これはデータ移行の開始点です。
デスティネーションアドレス:データ移行タスクはこのアドレスにデータを書き込みます。これはデータ移行のエンドポイントです。
速度制限構成
移行中のネットワーク帯域幅使用量およびファイル転送レートを制御するために、速度制限機能を使用します。これにより、移行がビジネス運用に影響を与えないようにします。実際の移行帯域幅は、データソース、ネットワーク状況、ファイルサイズなどの要因に依存するため、指定した上限に達しない場合があります。データソース、ビジネス要件、利用可能なネットワーク帯域幅を評価し、適切な値を選択してください。不適切な速度制限は、通常のビジネス運用を妨げる可能性があります。最大のタスク帯域幅および QPSはリージョンによって異なります。
移行帯域幅
データ移行で使用できる最大ネットワーク帯域幅です。ビジネスワークロードに基づき、移行タスク中にいつでも帯域幅制限を変更できます。新しい制限値が有効になるまでに時間がかかる場合があります。
ファイル転送レート
1 秒あたりに移行されるファイル数です。これにより、ファイル転送の同時実行性を制御します。データ移行プロセス中に、必要に応じて 1 秒あたりに移行されるファイル数の上限を調整できます。新しい制限値が有効になるまでに時間がかかる場合があります。
上書き方法
デスティネーションに同じ名前のファイルが存在する場合、それを処理するポリシーを選択します。適切な上書きポリシーにより、複数回の移行ラウンド中に重複ファイルの再転送を減らし、帯域幅と時間を節約できます。
上書き方法のオプション
上書きしない:ファイルをスキップします。ファイルは移行されません。
すべて上書き:ソースアドレスのファイルがデスティネーションアドレスのファイルを上書きします。
最終更新時刻が新しい場合のみ上書き:
ソースファイルの最終更新時刻がデスティネーションファイルのそれより新しい場合、デスティネーションファイルを上書きします。
最終更新時刻が同一の場合、ソースファイルとデスティネーションファイルのサイズまたは Content-Type が異なる場合に、デスティネーションファイルを上書きします。
最終更新時刻が新しい場合のみ上書きは、新しいファイルが上書きされないことを厳密に保証するものではありません。古いファイルが新しいファイルを上書きするリスクがあります。
最終更新時刻が新しい場合のみ上書きを選択する場合は、ソースが最終更新時刻、サイズ、Content-Type などの情報を返せることを確認してください。そうでない場合、上書きポリシーが失敗し、予期しない移行結果となる可能性があります。
「上書きしない」または「最終更新時刻が新しい場合のみ上書き」を選択した場合、システムは上書き判断のためにソースおよびデスティネーションの両方からメタデータをリクエストします。これにより、ソースおよびデスティネーションの両方にリクエスト料金が発生します。
フィルター
フィルターを使用して、移行対象ファイルの範囲を正確に制御します。ファイル名および時刻でフィルターできます。
フィルターは、まずソースファイルをフルスキャンし、その後移行対象ファイルを選択することで動作します。そのため、ソースファイルが多数ある場合、フルスキャンに長い時間がかかることがあります。
ファイル名フィルターは、ソースファイルの絶対パスに適用されます。
ファイル名フィルター
ファイル名:ファイル名フィルターを設定して、移行対象ファイルの範囲を正確に制御します。
インクルードおよびエクスクルードのフィルタールールを設定できます。これらのルールは、RE2 ライブラリの正規表現構文を使用します。サポートされるのは構文のサブセットのみです。
ルール例
.*\.jpg$は、.jpg で終わるすべてのファイルに一致します。^file.*は、デフォルトでルートディレクトリ内の "file" で始まるすべてのファイルに一致します。ソースデータアドレスにプレフィックス(例:`data/to/oss/`)が設定されている場合は、
^data/to/oss/file.*を使用して、指定されたプレフィックス下で 'file' で始まるすべてのファイルに一致させます。.*/picture/.*は、任意の階層にある "picture" という名前のサブディレクトリに一致します。
フィルタールールの説明
インクルードルール:ルールに一致するファイルが移行されます。複数のルールがある場合、いずれかのルールに一致するファイルが移行されます。
たとえば、picture.jpg および picture.png の 2 つのファイルがあるとします。
.*\.jpg$でインクルードルールを設定すると、picture.jpg のみが移行されます。.*\.png$のインクルードルールも追加すると、両方のファイルが移行されます。エクスクルードルール:ルールに一致するファイルは移行されません。複数のルールがある場合、いずれかのルールに一致するファイルは移行されません。
たとえば、picture.jpg および picture.png の 2 つのファイルがあるとします。
.*\.jpg$でエクスクルードルールを設定すると、picture.png のみが移行されます。.*\.png$のエクスクルードルールも追加すると、どちらのファイルも移行されません。
優先順位:エクスクルードルールが優先されます。ファイルがエクスクルードルールとインクルードルールの両方に一致する場合、そのファイルは移行されません。
たとえば、file.txt という名前のファイルについて、.*\.txt$ のエクスクルードルールと file.* のインクルードルールを設定した場合、file.txt は移行されません。
ファイル更新時刻フィルター
ファイル更新時刻:最終更新時刻に基づいて移行対象ファイルをフィルターします。
システムは、最終更新時刻が指定範囲内にあるファイルのみを移行します。
開始時刻のみを指定:たとえば、「2019-01-01 00:00:00」に設定した場合、この時刻以降に最終更新されたファイルのみが移行されます。
終了時刻のみを指定:たとえば、「2022-01-01 00:00:00」に設定した場合、この時刻以前に最終更新されたファイルのみが移行されます。
開始時刻と終了時刻の両方を指定:たとえば、開始時刻を「2019-01-01 00:00:00」、終了時刻を「2022-01-01 00:00:00」と設定した場合、この期間(両端を含む)内のすべてのファイルが移行されます。
タスクスケジュール
移行タスクの開始時刻および実行計画を設定します。即時実行、指定時刻での実行、定期スケジュールでの実行が可能です。
スケジュールの説明
次のスケジュール開始時刻が到来した時点で移行タスクがまだ実行中の場合、現在の実行が完了してから、次の実行が次のスケジュール開始時刻に延期されます。この動作は、指定された移行回数が完了するまで繰り返されます。
移行タスクの同時実行数制限:同時実行中の移行タスク数が制限を超える場合、スケジュールされたタスクが期待通りに実行されない可能性があります。
実行方法
即時実行:現在のタスクをすぐに実行します。
指定時刻に実行:タスクを実行する日次のタイムウィンドウを指定します。デフォルトでは、タスクは指定された開始時刻に開始され、指定された停止時刻に一時停止します。
定期スケジュール:実行頻度と最大実行回数を設定してタスクを開始します。
実行頻度:時間単位、日単位、週単位、曜日指定、カスタムの 5 種類の頻度をサポートしています。詳細については、「実行頻度の詳細」をご参照ください。
最大実行回数:1 回の実行とは、タスクの開始から終了までの期間を指します。タスクはこの制限内で自動スケジュールされます。制限を超えると、自動スケジュールは行われなくなりますが、手動でのスケジュールは引き続き可能です。最大実行回数の制限については、コンソール内のプロンプトをご確認ください。
カスタム実行時刻の設定に関係なく、タスクをいつでも手動で開始および一時停止できます。
実行頻度の詳細
実行頻度の詳細は、次の表をご参照ください。
実行頻度 | 説明 | 例 |
時間単位 | 時間単位の頻度を選択します。最大実行回数と組み合わせて使用できます。 | 現在時刻が 8:05 です。頻度を時間単位、実行回数を 3 回に設定した場合、最初のタスクは次の時間(9:00)に開始されます。
|
日単位 | 日単位の頻度を選択する場合、タスクを開始する具体的な時刻(0~23 時)を設定する必要があります。最大実行回数と組み合わせて使用できます。 | 現在時刻が 8:05 です。タスクを毎日 10:00 に 5 回実行するよう設定した場合、最初のタスクは当日の 10:00 に開始されます。
|
週単位 | 週単位の頻度を選択する場合、タスクを開始する曜日および時刻(0~23 時)を指定する必要があります。最大実行回数と組み合わせて使用できます。 | 現在時刻が月曜日 8:05 です。タスクを毎週月曜日 10:00 に 10 回実行するよう設定した場合、最初のタスクは当日の 10:00 に開始されます。
|
曜日指定 | 曜日指定を選択する場合、任意の曜日を選択し、タスクを開始する時刻(0~23 時)を設定できます。 | 現在時刻が水曜日 8:05 です。タスクを毎週月・水・金曜日の 10:00 に実行するよう設定した場合、最初のタスクは当日の 10:00 に開始されます。
|
カスタム | cron 式を使用して、タスクのカスタム開始時刻を設定します。 | 説明 cron 式は、スペースで区切られた 6 つのフィールドで構成されます。これらは、タスクの実行時刻ルールを表します。すなわち、秒、分、時、日、月、曜日です。最小間隔は 1 時間です。 以下の cron 式の例は参考用です。詳細については、cron 式ジェネレーターをご参照ください。
|
移行レポート
移行レポートは、移行結果に関する詳細情報を提供します。これには、成功、失敗、スキップされたファイルの一覧が含まれます。これにより、移行タスクの実行状況を把握できます。
レポートファイルの種類
タスク実行ステータスに基づき、次の 3 種類の移行レポートファイルが生成されます。移行されたすべてのファイルの一覧、失敗したファイルの一覧、スキップされたファイルの一覧です。
移行レポートファイルの命名規則
uid@jobid@runtimeid_total_list_n は、移行されたすべてのファイルの一覧を表します。複数のファイルが存在する場合があり、n は 0 以上の整数です。
uid@jobid@runtimeid_failed_list_n は、失敗したファイルの一覧を表します。複数のファイルが存在する場合があり、n は 0 以上の整数です。
uid@jobid@runtimeid_skipped_list_n は、スキップされたファイルの一覧を表します。複数のファイルが存在する場合があり、n は 0 以上の整数です。
レポートフィールドの説明
移行レポートファイルのフィールドは、ソースからデスティネーションへの移行中にファイル(オブジェクト)のさまざまなプロパティを記述します。フィールドは以下のとおりです。
フィールド名 | フィールドの意味 |
ソースファイル名 | ソースファイルの名前(URL エンコード済み)。 |
デスティネーションファイル名 | デスティネーションファイルの名前(URL エンコード済み)。 |
ソースファイルサイズ | ソースファイルのサイズ。 |
デスティネーションファイルサイズ | デスティネーションファイルのサイズ。 |
ソースファイル MD5 | ソースファイルの MD5 ハッシュ。このフィールドは、ソースファイルが MD5 ハッシュを返す場合にのみ存在します。 |
デスティネーションファイル MD5 | デスティネーションファイルの MD5 ハッシュ。 |
ソースファイル CRC-64 | ソースファイルの CRC-64 ハッシュ。このフィールドは、ソースファイルが CRC-64 ハッシュを返す場合にのみ存在します。 |
デスティネーションファイル CRC-64 | デスティネーションファイルの CRC-64 ハッシュ。 |
ソースファイル最終更新時刻 | ソースファイルの最終更新時刻。 |
デスティネーションファイル最終更新時刻 | デスティネーションファイルの最終更新時刻。 |
ソースオブジェクトバージョン ID(マルチバージョン移行時のみ) | マルチバージョン移行時のみ使用され、ソースオブジェクトのバージョン ID を示します。 |
デスティネーションオブジェクトバージョン ID(マルチバージョン移行時のみ) | マルチバージョン移行時のみ使用され、デスティネーションオブジェクトのバージョン ID を示します。 |
移行開始時刻 | ファイル移行の開始時刻を記録します。 |
移行終了時刻 | ファイル移行の終了時刻を記録します。 |
ファイル移行ステータス | transferred:ファイルが正常に移行されました。failed:ファイル移行が失敗しました。skipped:ファイル移行がスキップされました。 |
例外理由 | 例外が発生した理由の説明を提供します。 |
移行レポートの取得
データオンライン移行コンソールにログインします。
左側のナビゲーションウィンドウで、データオンライン移行 > 移行タスク を選択します。
移行タスクリストで、目的のタスクの 管理 をクリックして、タスク詳細ページに移動します。
タスク作成時に レポートをプッシュしない を選択した場合、タスク詳細ページの [履歴] タブに移動し、移行レポートの生成 をクリックします。レポートが生成された後、移行レポートのダウンロード をクリックしてローカルマシンにダウンロードできます。
タスク作成時に レポートをプッシュする を選択した場合、タスク詳細ページの [履歴] タブに移動します。レポートが生成された後、移行レポートのダウンロード をクリックしてローカルマシンにダウンロードできます。
説明データ移行タスクが完了する前に生成された移行レポートは不完全な場合があります。完全な移行レポートを取得するには、タスク完了後にダウンロードしてください。
移行レポートは参考情報としてのみご利用ください。デスティネーションの実際の移行内容が最終的な権限となります。
移行レポートが生成されると、指定された Object Storage Service (OSS) バケットに保存されます。タスク実行ステータスに基づくフォルダディレクトリ構造のプレフィックス形式は、次のとおりです。
OSS://<bucket>/<prefix>/aliyun_import_report/<uid>/<jobid>/<runtimeid>/total_list/ OSS://<bucket>/<prefix>/aliyun_import_report/<uid>/<jobid>/<runtimeid>/failed_list/ OSS://<bucket>/<prefix>/aliyun_import_report/<uid>/<jobid>/<runtimeid>/skipped_list/パスパラメーターの説明
フィールド名
フィールドの意味
bucket
デスティネーションバケット。
prefix
デスティネーションデータアドレスで指定された移行ディレクトリプレフィックス。
uid
ユーザーの Alibaba Cloud アカウント ID。
jobid
タスク ID。タスク詳細ページの 詳細 タブから取得できます。
runtimeid
タスク実行レコード ID。タスク詳細ページの 履歴 タブから取得できます。
Object Storage Service (OSS) コンソールで、デスティネーションバケット内の移行レポートファイルを見つけます。これらのファイルをダウンロードして、詳細なファイル一覧を確認できます。ossbrowser 2.0 (プレビュー) または ossutil ツールの使用を推奨します。
移行ログ
移行プロセスのログは、Simple Log Service (SLS) にプッシュできます。これらのログには、各ファイルが移行タスク中にどのように処理されたかの詳細が記録されており、成功、失敗、スキップの記録が含まれます。移行ログを使用することで、移行の進捗状況をリアルタイムでモニターし、問題のあるファイルを迅速に特定し、監査およびトラブルシューティングを実施できます。
ログの種類
データオンライン移行は、Simple Log Service (SLS) に aliyun-oss-import-log-Alibaba-Cloud-account-ID-current-console-region(例:aliyun-oss-import-log-137918634953****-cn-hangzhou)という名前のプロジェクトを作成します。このプロジェクトで移行タスクのログを確認でき、次の 2 種類のログが含まれます。
drs_import_success_log:成功した移行ログ
drs_import_fail_log:失敗した移行ログ
ログフィールドの説明
移行ログの主なフィールドは、次の表で説明されています。
フィールド名 | フィールドの意味 |
JobName | 移行タスクの名前。 |
JobId | 移行タスク ID。 |
Region | 現在のコンソールが配置されているリージョン。 |
Status | 移行されたファイルのステータス。次の 3 つの状態があります。
|
UserId | ユーザーの UID。 |
ExecuteId | 実行レコード ID。 |
StartTime | 移行開始時刻。 |
EndTime | 移行終了時刻。 |
ListTime | ファイルがスキャンされた時刻。 |
Time | 現在時刻。 |
SrcObjectName | ソースファイル名。Src で始まるフィールドはソースに関連します。 ファイル名は URL エンコードされています(例:docs%2Fmy.docir%2Fexample.log)。 |
SrcObjectSize | ソースファイルサイズ。 |
DestObjectName | デスティネーションファイル名。Dest で始まるフィールドはデスティネーションに関連します。 ファイル名は URL エンコードされています(例:docs%2Fmy.docir%2Fexample.log)。 |
DestObjectSize | デスティネーションファイルサイズ。 |
移行ログの取得
移行ログを Alibaba Cloud Simple Log Service (SLS) にリアルタイムでプッシュして、クエリおよび分析を行うことができます。SLS コンソールでは、タスク ID やファイル名などのキーワードを使用して精密検索を行い、移行プロセスをモニターしたり、問題をトラブルシューティングしたりできます。
ログプッシュ機能は、移行タスク作成時に有効にする必要があります(プッシュまたはエラーログのみプッシュを選択)。作成時に プッシュしない を選択した場合、SLS でタスクのログを確認することはできません。
移行ログは完全であることが保証されていません。移行の整合性チェックには使用しないでください。
移行ログは参考情報としてのみご利用ください。最終的な移行結果は、デスティネーションの実際のファイルに基づきます。
プッシュしない(デフォルト):移行ログをプッシュしません。
プッシュ:移行ログを SLS にプッシュし、確認できます。
エラーログのみプッシュ:エラーログのみを SLS にプッシュし、確認できます。
プッシュまたはエラーログのみプッシュを選択する前に、次の操作を完了していることを確認してください。そうでない場合、移行タスクが異常になる可能性があります。
SLS を有効化済みであること。
Simple Log Service 権限付与ページで権限付与済みであること。
プッシュまたはエラーログのみプッシュを選択すると、データオンライン移行は Simple Log Service (SLS) にプロジェクトを作成します。プロジェクト名は aliyun-oss-import-log-Alibaba-Cloud-account-ID-current-migration-service-deployment-region(例:aliyun-oss-import-log-137918634953****-cn-hangzhou)です。
Simple Log Service 権限付与:このオプションは、移行ログで プッシュまたはエラーログのみプッシュを選択した場合に表示されます。
権限付与 をクリックして、リソースアクセス権限付与ページに移動します。システムは AliyunOSSImportSlsAuditRole ロールを作成し、それに権限を付与します。権限付与に同意 をクリックして、権限付与を完了します。
移行タスク管理
移行タスクのステータス
さまざまなタスクステータスを理解することで、移行プロセスをより適切に管理およびモニターできます。
Created:移行タスクが作成されました。手動で開始するか、スケジュールされた開始時刻を待つことができます。
Starting:タスクが正常に作成され、開始されました。スケジュール待ちです。
Preparing:データの事前処理中です。
Migrating:データを移行中です。しばらくお待ちください。
Deleting:移行タスクを削除中です。削除が完了すると、タスクリストからタスクが削除されます。
Paused:移行タスクが一時停止しています。
Stopping:移行タスクを停止中です。停止後、タスクステータスは Finished に変更されます。
Finished:移行タスクが完了しました。ただし、すべてのファイルが正常に移行されたとは限りません。詳細については、移行レポートをご確認ください。
Interrupted:移行タスクがエラーにより中断されました。
失敗したファイルのリトライ
移行タスクが完了した後、レポートに一部のファイルが移行に失敗したと表示されている場合、失敗したファイルのみをリトライする新しいサブタスクを作成できます。
手順
データオンライン移行コンソールにログインします。
上部のメニューバーで、タスクが配置されているリージョンを選択します。
左側のナビゲーションウィンドウで、データオンライン移行 > 移行タスク を選択します。
移行タスクリストで、目的のタスクの 操作 列の 管理 をクリックして、タスク詳細ページに移動します。
履歴 セクションで、目的のタスクの 操作 列の 失敗したファイルのリトライ をクリックします。
サブタスク名を変更し、次へ をクリックします。
移行帯域幅、1 秒あたりに移行されるファイル数、上書き方法などのパラメーターが正しいことを確認し、次へ をクリックします。
OK をクリックします。サブタスクが開始され、失敗したファイルがリトライされます。