大きなS3転送を安全に検証する

大きなオブジェクトにマルチパートアップロードを使用し、パートと認証情報の制限を守ってアップロードを完了または中止した後、保存サイズとETagを検証します。

最終確認日

スクリーンショットは英語版の画面です。

大きなS3オブジェクトにはマルチパートアップロードを使用してください。dosyaでテスト済みのrclone設定は64Miで切り替わります。ゲートウェイは1〜10,000のパート番号を受け付け、各パートを5 GiB以下に制限します。

大きなS3転送を安全に検証する4段階の手順図。rcloneプロファイルのマルチパート切り替え値を64Miに設定し、テスト済みのマルチパート経路を使用します。パート番号を1〜10,000、各パートを5 GiB以下に保ちます。すべてのパートのETagが揃ってから完了し、揃わなければ中止します。完了したオブジェクトにHEADを発行し、長さを元のバイト数と比較し、ETagを確認します。
このS3の図は、rcloneプロファイルのマルチパート切り替え値を64Miに設定してテスト済みの経路を使用する手順から始まります。パート番号を1〜10,000、各パートを5 GiB以下に保ち、すべてのETagが揃ってから完了し、揃わなければ中止します。最後に完了したオブジェクトにHEADを発行し、長さを元のバイト数と比較し、ETagを確認します。スクリーンショットを原寸で開く。

始める前に

転送元のバイトサイズ、保存先のバケットとキー、クライアントのマルチパート設定を記録してください。完了まで十分なストレージの空きを確保します。認証情報とロールのファイルサイズ制限は、ゲートウェイがマルチパートの合計サイズを確認できる時点で評価されます。

50 MiB以下のパートはバッファリングされ、ストレージへの書き込み時に再試行されます。それより大きなパートは直接ストリーミングされ、読み取り済みの本文を同じリクエスト内で再送できません。クライアントは失敗したパート番号を再試行する必要があります。未完了のマルチパートアップロードは明示的に中止し、保存されたパートと同時実行スロットを解放してください。

手順

  1. クライアントのマルチパートしきい値を、単一リクエストの転送上限より小さく設定します。rcloneではリリース済みのupload_cutoff = 64Miの値を使用します。
  2. 正確なワークスペースバケットとアンカーからの相対キーにアップロードを開始し、認証情報を公開せずに返されたアップロードIDを記録します。
  3. 成功したパートの応答とETagを監視します。パート番号は1〜10,000、各パートの申告サイズは5 GiB以下に保ちます。
  4. パートが失敗したら同じ番号を再試行します。転送を断念する場合は未完了のままにせず、AbortMultipartUploadを送信します。
  5. アップロードを完了し、CompleteMultipartUploadの成功応答を確認します。完了時にスコープ、ロール、容量制限、バックアップロック、合計サイズの制限が再確認されます。
  6. HEADを使用して保存されたContent-Lengthを転送元のバイト数と比較し、マルチパートETagを記録します。より厳密な検証が必要な場合は、内容をダウンロードするかサンプルを確認します。
「大きなS3転送を安全に検証する」の参照画面:dosyaのS3互換アクセスの概要ページ。
「大きなS3転送を安全に検証する」の参照画面:dosyaのS3互換アクセスの概要ページ。スクリーンショットを原寸で開く。

期待される結果

指定したキーに、転送元と同じバイト数の完全なdosyaファイルが1件表示されます。マルチパートETagは想定されたマルチパート形式で組み立てられたことを示す記録であり、ファイル全体のMD5チェックサムではありません。

完了時にQuotaExceeded、EntityTooLarge、ロックによる拒否、またはNoSuchUploadが返された場合、ファイルが保存されたと決めつけないでください。原因を解消し、まだ有効なアップロードを中止して、新しいマルチパートセッションを開始します。現在のマルチパート完了処理では認証情報とロールのファイルサイズ制限および容量制限が適用されますが、ワークスペースのmax_file_size_gb設定は適用されません。

関連ガイド

この記事は役に立ちましたか?

評価の結果を読み込んでいます…

投票すると、回答を変更できるように、必要な投票用Cookieが最長180日間保存されます。

質問と回答

このガイドの手順について質問できます。質問は確認後に公開されます。

公開の質問には、アカウントの詳細、認証情報、非公開ファイルを含めないでください。これらについては 非公開サポート をご利用ください。

質問を読み込んでいます…

    dosyaアカウントにサインインすると、質問を投稿できます。

    やり直す前に結果を確認

    操作をもう一度確認する必要があるときは、次の共通の確認事項をご利用ください。