更改对象存储类别

本页面介绍了如何通过覆盖对象来更改存储分区中对象的存储类别。要了解如何在不覆盖对象的情况下更改对象存储类别,请参阅对象生命周期管理功能。

控制台

不能通过 Console 设置各个对象存储类别。请改为使用 gsutil。

gsutil

rewrite 命令中使用 -s 标志,例如:

gsutil rewrite -s [STORAGE_CLASS] gs://[PATH_TO_OBJECT]

其中:

  • [STORAGE_CLASS] 是对象的新存储类别,例如 nearline
  • [PATH_TO_OBJECT] 是您想要更改其类别的对象的名称,例如 pets/dog.png

REST API

JSON API

  1. OAuth 2.0 Playground 获取授权访问令牌。将 Playground 配置为使用您自己的 OAuth 凭据。
  2. 创建一个包含以下信息的 .json 文件:

    {
      "storageClass": "[STORAGE_CLASS]"
    }

    其中:

    • [STORAGE_CLASS] 是对象的新存储类别,例如 nearline
  3. 使用 cURL,通过 POST Object 请求调用 JSON API

    curl -X POST --data-binary @[JSON_FILE_NAME].json \
      -H "Authorization: Bearer [OAUTH2_TOKEN]" \
      -H "Content-Type: application/json" \
      "https://www.googleapis.com/storage/v1/b/[BUCKET_NAME]/o/[OBJECT_NAME]/rewriteTo/b/[BUCKET_NAME]/o/[OBJECT_NAME]"

    其中:

    • [JSON_FILE_NAME] 是您在第 2 步中创建的 JSON 文件的名称。
    • [OAUTH2_TOKEN] 是您在第 1 步中生成的访问令牌。
    • [BUCKET_NAME] 是包含原始对象的存储分区的名称,例如 my-bucket
    • [OBJECT_NAME] 是对象的名称,例如 pets/dog.png

XML API

  1. OAuth 2.0 Playground 获取授权访问令牌。将 Playground 配置为使用您自己的 OAuth 凭据。
  2. 使用 cURL,通过 PUT Object 请求调用 XML API

    curl -X PUT --data-binary @[OBJECT] \
      -H "Authorization: Bearer [OAUTH2_TOKEN]" \
      -H "Content-Type: [OBJECT_CONTENT_TYPE]" \
      -H "x-goog-storage-class: [STORAGE_CLASS]" \
      "https://storage.googleapis.com/[BUCKET_NAME]/[OBJECT_NAME]"

    其中:

    • [OBJECT] 是您想要更改其存储类别的对象的本地路径(使用 XML API 更改存储类别时,您必须重新上传对象),例如 Desktop/dog.png
    • [OAUTH2_TOKEN] 是您在第 1 步中生成的访问令牌。
    • [OBJECT_CONTENT_TYPE] 是该对象的内容类型,例如 image/png
    • [STORAGE_CLASS] 是对象的新存储类别,例如 nearline
    • [BUCKET_NAME] 是包含要覆盖的对象的存储分区名称,例如 my-bucket
    • [OBJECT_NAME] 是要覆盖的对象的名称,例如 pets/dog.png
此页内容是否有用?请给出您的反馈和评价:

发送以下问题的反馈:

此网页
Cloud Storage
需要帮助?请访问我们的支持页面