ソース オブジェクトをストレージ クラスでフィルタする

Amazon S3 からの転送では、オブジェクトをストレージ クラスでフィルタできます。

デフォルトでは、Amazon S3 から転送する場合:

  • Glacier Instant Retrieval(GLACIER_IR)などの標準ストレージ クラスと非アーカイブ ストレージ クラスのオブジェクトが転送されます。
  • Glacier Deep Archive(DEEP_ARCHIVE)内のオブジェクトは、復元された場合にのみ転送されます。
  • Glacier Flexible Retrieval(GLACIER)のオブジェクトは、復元ステータスに関係なくスキップされます。

ストレージ クラスのリストを指定する

含めるストレージ クラスを指定するには:

Google Cloud コンソール

Amazon S3 から Cloud Storage への転送の手順に沿って操作します。

転送元と転送先を指定したら、[ストレージ クラスでフィルタ] を選択し、含めるストレージ クラスを選択します。

gcloud CLI

この機能は gcloud CLI ではサポートされていません。

REST

transferSpec.objectConditions.includeStorageClasses オプションを使用して、含めるストレージ クラスを指定します。

たとえば、STANDARD ストレージ クラスと GLACIER ストレージ クラスのみを転送するには:

POST https://storagetransfer.googleapis.com/v1/transferJobs
{
  "description": "DESCRIPTION",
  "status": "ENABLED",
  "projectId": "PROJECT_ID",
  "transferSpec": {
      "awsS3DataSource": {
          "bucketName": "AWS_SOURCE_NAME",
          "awsAccessKey": {
            "accessKeyId": "AWS_ACCESS_KEY_ID",
            "secretAccessKey": "AWS_SECRET_ACCESS_KEY"
          }
      },
      "gcsDataSink": {
          "bucketName": "GCS_SINK_NAME"
      },
      "objectConditions": {
          "includeStorageClasses": ["STANDARD", "GLACIER"]
      }
  }
}

includeStorageClasses が指定されていて、空白でない場合、指定されたストレージ クラスに属するオブジェクトのみが転送されます。

Amazon S3 からの転送の場合、有効な値は AWS ドキュメント(https://docs.aws.amazon.com/AmazonS3/latest/userguide/sc-howtoset.html)に記載されています。

アーカイブされたオブジェクト

S3 Glacier Deep Archive(DEEP_ARCHIVE)と S3 Glacier Flexible Retrieval(GLACIER)のオブジェクトは、転送する前に復元する必要があります。

Storage Transfer Service には、転送プロセスでスキップされたアーカイブ オブジェクトを追跡するためのカウンタが用意されています。

  • unrestoredDeepArchiveObjectsSkippedCount: 復元されなかったためスキップされた Glacier Deep Archive(DEEP_ARCHIVE)オブジェクトの数。
  • unsupportedS3GlacierObjectsSkippedCount: 復元されなかったか、GLACIER が含まれるストレージ タイプとして指定されなかったためスキップされた Glacier Flexible Retrieval(GLACIER)オブジェクトの数。