このトピックでは、データソースからアーカイブされたデータを復元し、そのデータをObject Storage Service (OSS) に移行する方法について説明します。
OSS
OSSには、アーカイブファイルを復元するossutilというツールがあります。 このツールを使用すると、プレフィックスを指定して、名前がプレフィックスで始まるオブジェクトを復元できます。
次の例は、ossutilツールを使用してアーカイブファイルを復元する方法を示しています。 この例で使用されているOSはLinuxです。
- お使いのOSに基づいてossutilツールをダウンロードしてインストールします。 実行権限を設定します。 詳細については、「ダウンロードとインストール」をご参照ください。
- Linuxでは、を実行します。/ossutil restore oss:// bucket/path -r。/config.xmlコマンドを実行して、指定されたプレフィックスで始まる名前のアーカイブオブジェクトを復元します。
- データが復元されたら、データをOSSに移行します。 詳細については、「Alibaba Cloud OSSバケット間のデータ移行」をご参照ください。
AWS S3
Amazon Simple Storage Service (S3) では、S3cmdツールまたはバッチ操作機能を使用してアーカイブデータを復元できます。
- S3cmdツールは、毎秒約100ファイルを復元できます。 100,000未満のファイルを復元する必要があるシナリオに適しています。
- 100,000を超えるファイルを復元する場合は、バッチ操作機能を使用することをお勧めします。 この機能により、数千万から数十億のファイルを簡単な方法で復元できます。
この機能を使用するには、AWSコンソールで設定する必要があります。
S3cmdツールを使用してファイルを復元するには、次の手順を実行します。
- pip install s3cmdコマンドを実行し、S3cmdツールをインストールします。
- s3cmd -configureコマンドを実行して、アクセスキーペアを設定します。
- s3cmd restore -D 10 -priority='standard' s3:// bucket/objectコマンドを実行して、指定したバケット内のファイルを復元します。
- -Dは、復元されたファイルが復元された状態のままである日数を指定します。 このパラメーターを空のままにすると、デフォルト値1が使用されます。 この例では、− Dは10に設定される。
- -priorityは、復元の優先度を指定します。 有効な値: bulk、standard、expedited。 この例では、-priorityは標準に設定されています。
アーカイブされたファイルを復元するために請求される料金は、復元の優先順位によって異なります。 詳細については、AWS S3ドキュメントの課金トピックを参照してください。
- データが復元されたら、データをOSSに移行します。 詳細については、「Amazon S3からOSSへのデータ移行」をご参照ください。
バッチ操作機能を使用してファイルを復元するには、次の手順を実行します。
重要 バッチ操作機能を使用してオブジェクトを復元するには、復元するオブジェクトが存在するバケットに対して少なくとも1つのAWSインベントリリストを作成し、少なくとも1つのレポートが生成されていることを確認します。
- ロールを作成し、バケットに対する完全な権限をロールに付与します。
- AWSコンソールにログインし、Identity and Access Management (IAM) コンソールに移動します。 左側のナビゲーションウィンドウで、[ロール] をクリックします。 次に、[ロールの追加] をクリックします。
- 表示されるページで、[信頼できるエンティティの種類の選択] セクションで を選択し、[ユースケースの選択] セクションで [S3バッチ操作] を選択し、[次へ: 権限] をクリックします。
- 表示されるページで、キーワードS3を検索します。 検索結果で、[AmazonS3FullAccess] を選択してロールの権限を付与します。 次に、[次へ: タグ] をクリックします。
- 必要に応じてタグを追加し、[次へ: レビュー] をクリックします。
- 表示されるページで、ロール名とロールの説明を指定し、[ロールの作成] をクリックします。
- インベントリリストを使用して、アーカイブファイルを復元するジョブを作成します。
- バケットの詳細ページで、 を選択します。
- インベントリ設定ページで、既存のインベントリリストを選択し、[インベントリリストからジョブを作成] をクリックします。
重要 インベントリリストを構成してもレポートが生成されない場合、バッチ操作機能は使用できません。
- 目的のリージョンと在庫リストを選択します。 [次へ] をクリックします。
- [復元] を選択します。 復元されたオブジェクトが復元された状態のままである日数を入力します。 一括取得または標準取得を選択します。 標準検索を選択することをお勧めします。唯一の違いは、標準検索では一括検索よりも同じ量のデータを復元する時間が短いことです。
[次へ] をクリックします。
移行するデータの量に基づいて、復元されたオブジェクトが復元された状態のままになる日数を指定します。 これにより、移行中に復元されたデータが利用できなくなります。
- 残りの設定を完了し、[次へ] をクリックします。
説明と優先度のデフォルト設定を保持し、移行が完了した後に生成されたレポートを保存するパスを指定し、作成したIAMロールを選択してから、タグを追加するか、タグを空のままにします。
- 情報を確認したら、[ジョブの作成] をクリックします。
- バッチ操作ジョブの一覧が表示されるページに移動します。 ジョブのステータスが [確認待ち] の場合は、ジョブを選択し、[確認して実行] をクリックします。
完了状態は、すべてのファイルが復元されたことを示すものではありません。 標準取得には5〜12時間かかります。 ファイルが復元された時間を見積もることができます。 各ファイルの詳細を表示して、ファイルが復元されているかどうかを確認することもできます。
詳細については、AWS S3ドキュメントのバッチ復元に関連するトピックを参照してください。
- データが復元されたら、データをOSSに移行します。 詳細については、「Amazon S3からOSSへのデータ移行」をご参照ください。
Azure Blob
Azure Blobでは、コンソールでblobプロパティを変更してアクセス層を変更し、アーカイブファイルを復元できます。 バッチ復元がサポートされています。 アーカイブblobを復元するには、次の手順を実行します。
- 復元するblobの [Configure] をクリックし、[Blob access tier] オプションを見つけ、[Hot] を [Cool] に変更してblobを復元します。 修復には数時間かかる場合があります。 詳細については、Azure Blobドキュメントのデータの復元に関連するトピックを参照してください。
復元の優先度は、HighまたはStandardに設定できます。 x-ms-rehydrate-priorityプロパティを使用して、blobアクセス層を構成するときに復元の優先度を指定できます。
- 標準: 復元リクエストは受信した順序で処理され、最大15時間かかる場合があります。
- High: 高いリクエストは、標準リクエストよりも優先度が高くなります。 10 GB未満のオブジェクトのリクエストは1時間以内に完了します。
注 アーカイブblobを復元したくない場合は、代わりにコピーできます。 ホットアクセス層でblobが作成されると、元のblobはアーカイブ状態のままです。 作成したblobからOSSにデータを移行できます。
復元要求が開始された後、キャンセルすることはできません。 復元プロセス中、x-ms-access-tier blobプロパティは、復元が完了するまでアーカイブとして表示され続けます。
復元プロセスのステータスと進行状況を確認するには、[Blob Properties] 操作を呼び出して、x-ms-archive-statusとx-ms-rehydrate-priority
blobプロパティを確認します。
- データが復元されたら、データをOSSに移行します。 詳細については、「Azure BlobからOSSへのデータの移行」をご参照ください。
GCP
Google Cloud Platform (GCP) は、アーカイブデータを復元するためのgsutilという名前のツールを提供します。 このツールを使用すると、指定したファイルのストレージクラスを変更してファイルを復元できます。
このツールはバッチ復元をサポートしていません。 gsutilツールを使用してアーカイブファイルを復元するには、次の手順を実行します。
- gsutilツールをダウンロードしてインストールします。 次に、身元を確認します。
- gsutil rewrite -s STORAGE_CLASS gs:// PATH_TO_OBJECTコマンドを実行して、指定したオブジェクトを復元します。 詳細については、GCPドキュメントのデータの復元に関連するトピックを参照してください。
- STORAGE_CLASSは、オブジェクトを復元するストレージクラスを指定します。
- PATH_TO_OBJECTは、pets/dog.pngなど、復元するオブジェクトの名前を指定します。
- データが復元されたら、データをOSSに移行します。 詳細については、「GCPからOSSへのデータ移行」をご参照ください。
COS
Tencent Cloud Object Storage (COS) は、アーカイブファイルを復元するためのcoscmdというツールを提供します。 このツールはバッチ復元をサポートします。
coscmdツールを使用してファイルを復元するには、次の手順を実行します。
- pip install coscmdコマンドを実行してcoscmdツールをインストールします。
- CLIでcoscmd config -a ak -s sk -b bucket -r regionコマンドを実行し、SecretKey、SecretId、bucket、およびregionを設定します。
- coscmd restore -r -d 10 -t Expedited examplefolder/ コマンドを実行して、指定したバケット内のファイルを復元します。
- -dは、復元されたファイルが復元された状態のままである日数を指定します。 このパラメーターを空のままにすると、デフォルト値7が使用されます。 この例では、-dは10に設定されます。
- -tは、復元の優先順位を指定します。 有効な値: Expedited、Standard、およびBulk。 The default value is Standard.
この例では、-tはExpeditedに設定されています。
アーカイブされたファイルを復元するために請求される料金は、復元の優先順位によって異なります。 詳細については、COSドキュメントのデータの復元に関連するトピックを参照してください。
- データが復元されたら、データをOSSに移行します。 詳細については、「COSからOSSへのデータ移行」をご参照ください。
HUAWEIクラウドOBS
HUAWEI CLOUD Object Storage Service (OBS) は、アーカイブファイルを復元するobsutilという名前のツールを提供します。
このツールはバッチ復元をサポートします。 obsutilツールを使用してファイルを復元するには、次の手順を実行します。
- obsutilツールをダウンロードします。
- obsutilツールのインストールファイルを解凍して実行します。
- Windowsの場合は、obsutilツールのインストールファイルを解凍し、obsutil.exeをダブルクリックします。
- LinuxまたはmacOSの場合、tar -xzvfコマンドを実行してobsutilツールのインストールファイルを解凍し、解凍先のディレクトリに移動してから、chmod 755 obsutilコマンドを実行してツールに実行権限を付与します。
- 対応するコマンドを実行して、指定したバケット内のファイルを復元します。 コマンドでバケット名を指定すると、バケット内のすべてのアーカイブファイルが復元されます。 詳細については、HUAWEI
CLOUD OBSドキュメントのデータの復元に関連するトピックを参照してください。
Windowsの場合は、obsutil restore obs:// bucket-test/key -r -f -i ak -k sk -e endpointコマンドを実行します。 LinuxまたはmacOSで、を実行します。/obsutil restore obs:// bucket-test/key -r -f -i ak -k sk -e endpointコマンド。
- -r: 同時に復元するアーカイブされたオブジェクトの名前にプレフィックスを指定します。
- -f: 確認メッセージを表示せずに、オブジェクトを強制的に復元することを指定します。 このパラメーターはオプションです。
- -v: 同時に復元するアーカイブされたオブジェクトの名前にプレフィックスを指定します。 バージョン管理機能は、これらのアーカイブオブジェクトに実装されます。 このパラメーターはオプションです。
- -j: 同時に復元されるアーカイブオブジェクトの最大数を指定します。 このパラメーターはオプションです。
- -d: 復元されたファイルが復元された状態のままである日数を指定します。 このパラメーターは必須です。 このパラメーターを空のままにすると、デフォルト値1が使用されます。
有効な値の範囲は0から30です。 この例では、-dは10に設定されます。
- -t: 復元の優先順位を指定します。 有効な値: bulkとstandard。 指定された値が優先されると、オブジェクトは1〜5分で復元されます。 指定された値が標準の場合、オブジェクトは3〜5時間で復元されます。
デフォルト値はexpededです。 この例では、デフォルト値が使用されます。
- データが復元されたら、データをOSSに移行します。 詳細については、「HUAWEI CLOUD OBSからOSSへのデータの移行」をご参照ください。
BOS
Baidu Object Storage (BOS) は、指定されたアーカイブファイルを復元するために呼び出すことができるRestoreObject API操作を提供します。
このAPI操作を使用して、複数のファイルを同時に復元することはできません。 指定したファイルを復元し、ファイル内のデータをOSSに移行するには、次の手順を実行します。
- RestoreObject APIを呼び出して、指定したファイルを復元します。 詳細については、BOSドキュメントのRestoreObject API操作について説明しているトピックを参照してください。
リクエストの例
x-bce-restore-daysパラメーターは、復元されたファイルが復元された状態の日数を指定します。 デフォルト値は7です。 有効な値の範囲は0から30です。
x-bce-restore-tierパラメーターは、復元の優先度を指定します。 有効な値はExpeditedとStandardです。
POST /ObjectName? HTTP/1.1の復元
ホスト: <BucketNam e>.bj.bcebos.com
日付: <日付>
コンテンツ長: 0
権限付与: <Authorization_String>
x-bce-restore-tier: 迅速 /標準
x-bce-restore-days:3
レスポンスの例
HTTP/1.1 200 OK
x-bce-request-id: 4db4b34d-653d-4d9a-b49b-3049ca786409
日付: 5月2018日水曜日08:34:40 GMT
サーバー: BceBos
- データが復元されたら、データをOSSに移行します。 詳細については、「BOSからOSSへのデータ移行」をご参照ください。
KS3
Kingsoft Standard Storage Service (KS3) は、指定したファイルを復元するために呼び出すことができるRestoreObject
API操作を提供します。 API操作を使用して複数のファイルを同時に復元することはできません。 指定したファイルを復元し、ファイル内のデータをOSSに移行するには、次の手順を実行します。
- RestoreObject APIを呼び出して、指定したファイルを復元します。
リクエストの例
POST /{ObjectKey}? HTTP/1.1の復元
ホスト: {BucketName}.{endpoint}
日付: {Date}
権限付与: {SignatureValue}
注
- デフォルトでは、復元されたオブジェクトは24時間復元された状態のままです。 オブジェクトが再アーカイブされる前に、RestoreObjectを再度呼び出して、オブジェクトが復元状態のままである時間を24時間延長できます。
同じオブジェクトに対して、RestoreObjectを最大7回呼び出すことができます。 このようにして、復元されたオブジェクトは最大7日間復元された状態を維持できます。
- 初めてRestoreObjectを呼び出してアーカイブオブジェクトを復元すると、ステータスコード202が返されます。 オブジェクトの復元中に、RestoreObjectを呼び出してオブジェクトを再度復元すると、ステータスコードが409され、エラーメッセージRestoreAlreadyInProgressが返されます。
エラーメッセージは、復元要求が進行中であることを示します。 オブジェクトが復元されるまで最大10分間待つ必要があります。 オブジェクトが復元された状態のときにAPI操作を呼び出してオブジェクトを再度復元すると、ステータスコード200が返され、オブジェクトはさらに24時間復元された状態を維持できます。
- アーカイブファイルを復元するときに課金されます。 RestoreObjectを呼び出すたびに、復元を完了するために行われたリクエストに対して課金されます。 課金の詳細については、KS3ドキュメントのデータの復元に関するトピックを参照してください。
レスポンスの例
HTTP/1.1 200 OK
サーバー: Tengine
日付: 12月26日金曜日2018 06:40:02 GMT
コンテンツ長: 0
接続: キープアライブ
X-Application-Context: application
x-kss-request-id: 1d147c34a9d542aa8dc7f0f70d3db893
x-kss-storage-class: アーカイブ
- データが復元されたら、データをOSSに移行します。 詳細については、「KS3からOSSへのデータ移行」をご参照ください。
Qiniu Cloud-オブジェクトストレージ
Qiniu Cloudは、アーカイブされたファイルを同時に復元するために呼び出すことができるAPI操作を提供します。 次のセクションでは、手順について説明します。
- APIを呼び出して、アーカイブファイルを同時に復元します。 詳細については、Qiniu Cloud-Object Storageのドキュメントでデータの復元に関連するトピックを参照してください。
リクエストの例
EncodedEntryURIは、Base64-encodedアドレスを
<Bucket >:< Key>
形式で指定します。 FreezeAfterDaysは、復元されたファイルが復元された状態のままである日数を指定します。 有効な値の範囲は1から7です。
POST /バッチHTTP/1.1
ホスト: rs.qbox.me
コンテンツタイプ: application/x-www-form-urlencoded
承認: Qiniu <AccessToken>
op=/restoreAr/<EncodedEntryURI>/freezeAfterDays/<FreezeAfterDays>&op=/restoreAr/<EncodedEntryURI>/freezeAfterDays/<FreezeAfterDays>&...
レスポンスの例
HTTP/1.1 200 OK
Content-Type: application/json
キャッシュ制御: no-store
- データが復元されたら、データをOSSに移行します。 詳細については、「Qiniu Cloud-Object StorageからOSSへのデータ移行」をご参照ください。
Ucloud US3
Ucloud US3は、ファイルを復元するus3cliというツールを提供します。 このツールはバッチ復元をサポートします。 us3cliツールを使用してファイルを復元するには、次の手順を実行します。
- us3cliツールをダウンロードしてインストールし、ツールの実行権限を付与します。
- を実行します。/us3cli config config1 -- accesskey ak -- secretkey -- endpoint endpointをCLIでコマンドして、AccessKeyペアとエンドポイントを設定します。
- を実行します。/us3cli restore us3:// bucket/dir -r -- parallel 30指定したバケット内のファイルを復元し、同時に復元するファイル数を指定します。 詳細については、US3ドキュメントの「頻繁に使用されるコマンド」トピックの復元コマンドの説明を参照してください。
- -rは再帰フォルダを指定します。 サブフォルダ内のファイルを含め、このフォルダ内のすべてのファイルが復元されます。
- -- parallelは、同時に復元されるオブジェクトの数を指定します。 デフォルト値は 10 です。 この例では、-- parallelは30に設定されます。
- データが復元されたら、データをOSSに移行します。 詳細については、「Ucloud US3からOSSへのデータ移行」をご参照ください。