オブジェクトのメタデータ

このページでは、オブジェクトとともに Cloud Storage に保存されるメタデータ フィールドについて説明します。オブジェクトのメタデータの表示や設定の方法については、オブジェクトのメタデータの表示と編集を参照してください。

はじめに

Cloud Storage に保存されるオブジェクトには、メタデータが関連付けられます。メタデータは、オブジェクトのプロパティを示し、アクセスの際の処理方法を指定します。メタデータは Key-Value というペアで存在します。たとえば、オブジェクトのストレージ クラスはメタデータ エントリ storageClass:REGIONAL によって表されます。storageClass はメタデータのキーで、すべてのオブジェクトにはこのようなキーが関連付けられています。 REGIONAL は、このオブジェクトの値です。値はオブジェクトごとに異なります。

メタデータにはさまざまな種類があり、いつでも編集できるメタデータもあれば、オブジェクトの作成時にのみ設定できるメタデータもあります。表示しかできないメタデータもあります。たとえば、Cache-Control メタデータの値はいつでも編集できますが、storageClass メタデータはオブジェクトの作成または再書き込みの際にしか割り当てることができません。また、generation メタデータの値を直接編集することはできませんが、generation の値は変化します。

編集可能なメタデータ

オブジェクトでユーザーが変更できるメタデータには次の 2 つのカテゴリがあります。

  • 固定キーメタデータ: キーが設定されたメタデータ。ユーザーは値を指定できます。

  • カスタム メタデータ: ユーザーがキーとキーに関連する値の両方を指定して、追加するメタデータ。

メタデータを編集するときは、一般に非 ASCII 文字を使用しないでください。これらの文字は、XML API が使用する HTTP ヘッダーで許可されないためです。XML API を使用する場合は、リクエスト URL と HTTP ヘッダーの合計サイズが 16 KB に制限されているため、メタデータの合計サイズについてもこの制限を考慮する必要があります。

固定キーメタデータ

オブジェクトについて次のメタデータを編集できますが、そのためには十分な権限が必要です。

アクセス制御メタデータ

Cloud Storage では、Identity and Access Management(IAM)アクセス制御リスト(ACL)を使用してオブジェクトへのアクセスを制御します。これらのアクセス制御方法や関連するメタデータについては、該当するリンクを参照してください。

Cache-Control

Cache-Control メタデータでは、Cloud Storage でのデータの使用方法に関して、データをキャッシュに保存できるかどうか、データを変換できるかどうかの 2 つを指定できます。

データをキャッシュに格納する

Cache-Control メタデータを使用すると、ブラウザ キャッシュとインターネット キャッシュにオブジェクトを保存するかどうかを設定できます。また、保存期間も設定できます。Cache-Control の値を no-cache に設定すると、オブジェクトはキャッシュに保存されません。値を max-age=[TIME_IN_SECONDS] に設定すると、指定した期間までオブジェクトがキャッシュに保存されます。

Cache-Control を適用できるのは、一般公開されているオブジェクトのみです。非公開のデータはキャッシュに保存できません。特に指定しない限り、一般公開されているオブジェクトの Cache-Control 設定は 3,600 秒です。

キャッシュへの保存を有効にした場合、オブジェクトの新しいバージョンをアップロードした後でオブジェクトをダウンロードしても、古いバージョンが表示されることがあります。これは、古いオブジェクトが一定期間キャッシュに保存されているためです。また、オブジェクトはインターネット上のさまざまな場所のキャッシュに保存されます。このため、キャッシュに保存されているオブジェクトをすべて強制的に期限切れにすることはできません。一般公開されているオブジェクトをキャッシュに保存しないようにするには、オブジェクトに対して Cache-Control:private を設定してください。

データを変換する

Cache-Control メタデータを使用すると、互換性のないクライアントのために gzip content-encoding を削除するなど、データに変換を適用せずに、保存されたままの状態でオブジェクトを提供することもできます。オブジェクトをそのままで提供するには、Cache-Control:no-transform を設定します。

Content-Disposition

Content-Disposition メタデータは、転送するデータに関する表示情報を指定します。Content-Disposition を設定すると、コンテンツの表示スタイルを制御できます。たとえば、添付ファイルを自動的に表示したり、開く前にユーザーの操作を要求したりすることができます。Content-Disposition の指定方法については、https://tools.ietf.org/html/rfc6266 をご覧ください。

Content-Encoding

Content-Encoding メタデータを使用すると、オブジェクトが圧縮されているが、基礎となる Content-Type を維持していることを示すことができます。たとえば、gzip 圧縮されているテキスト ファイルについては、Content-Type で示されるようにテキスト ファイルであるという事実と、Content-Encoding で示されるように gzip 圧縮されているという事実があります。指定された Content-Encoding を使用してファイルが実際に圧縮されていることを、アップロードする前に確認する必要があります。そうしないと、オブジェクトをダウンロードしようとして予期しない動作が発生する可能性があります。詳細については、トランスコーディングのページを参照してください。

テキストなど圧縮可能なコンテンツの場合は、Content-Encoding: gzip を使用すると、ネットワークとストレージのコストを抑え、コンテンツ配信のパフォーマンスを向上させることができます。ただし、アーカイブや多くのメディア形式など、本来すでに圧縮されているコンテンツの場合は、さらに圧縮を適用し、それを Content-Encoding メタデータにマーキングすることは、一般にオブジェクトのサイズとパフォーマンスの両方にとって弊害となるため、避けてください。

Content-Language

Content-Language メタデータは、オブジェクトが対応する言語を指定します。このメタデータに指定できる値については、ISO 639-1 言語コードを参照してください。

Content-Type

最もよく設定されるメタデータは Content-Type(MIME タイプともいう)です。ブラウザは、このメタデータを使用してオブジェクトを正しく表示します。すべてのオブジェクトは Content-Type メタデータに値が指定されていますが、この値はオブジェクトの基になる型と一致する必要はありません。たとえば、Content-Type がアップロード時に指定されておらず判別できない場合、アップロード方法に応じて application/octet-stream または application/x-www-form-urlencoded に設定されます。

カスタム メタデータ

カスタム メタデータは、ユーザーが追加や削除を行うことができるメタデータです。カスタム メタデータを作成するには、値とキーの両方を指定します。カスタム メタデータの key:value ペアを作成した後で、キーを削除したり、値を変更したりできます。

メタデータの表示と編集のページには、カスタム メタデータの設定に関する情報が含まれています。カスタム メタデータを使用するとストレージとネットワークのコストが発生することに注意してください。

編集不可能なメタデータ

一部のメタデータは直接編集できません。このようなメタデータは、オブジェクトの作成または再書き込み時に設定されます。オブジェクトの作成や再書き込みの際に、ユーザーが設定できるメタデータ(オブジェクトのストレージ クラス顧客指定の暗号鍵など)もあります。オブジェクトの生成番号または作成時刻などの他のメタデータは自動的に追加され、表示のみが可能です。

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

ご不明な点がありましたら、Google のサポートページをご覧ください。