Rapid Cache を使用してキャッシュ インスタンスを作成して管理し、レイテンシを短縮して、Cloud Storage に保存されているオブジェクトのデータアクセスを最適化できます。このキャッシュ保存ソリューションは、データ取得を高速化することで、アプリケーションのパフォーマンスを向上させます。
このページでは、Rapid Cache を使用してキャッシュ インスタンスを作成して管理する方法について説明します。Rapid Cache の非同期キャッシュ オペレーションから開始される長時間実行オペレーションの使用方法と管理方法については、長時間実行オペレーションを使用するをご覧ください。
Rapid Cache を使用する前に、制限事項をご確認ください。
始める前に
Rapid Cache キャッシュの作成と管理に必要な権限を取得するには、キャッシュを作成するバケットに対するストレージ管理者 (roles/storage.admin)IAM ロールを付与するよう管理者に依頼してください。
この事前定義ロールには、Rapid Cache キャッシュの作成と管理に必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。
必要な権限
Rapid Cache キャッシュを作成、管理するには、次の権限が必要です。
-
storage.anywhereCaches.create(キャッシュの作成に必要) -
storage.anywhereCaches.disable(キャッシュを無効にするために必要) -
storage.anywhereCaches.get(キャッシュの取得に必要) -
storage.anywhereCaches.list(キャッシュの一覧表示に必要) -
storage.anywhereCaches.resume(キャッシュの再開に必要) -
storage.anywhereCaches.update(キャッシュの更新に必要)
カスタムロールを使用して、これらの権限を取得することもできます。
バケットに対するロールの付与については、バケットでの IAM ポリシーの設定と管理をご覧ください。
Rapid Cache メソッドから開始される長時間実行オペレーションを管理するには、追加のロールと権限が必要になる場合があります。詳細については、長時間実行オペレーションに必要なロールをご覧ください。
キャッシュを作成する
コンソール
既存のバケットにキャッシュを作成するには:
- Google Cloud コンソールで Cloud Storage の [バケット] ページに移動します。
バケットのリストで、データをキャッシュに保存するバケットの名前をクリックします。
[バケットの詳細] ページで、[構成] タブをクリックします。
[Rapid Cache] セクションで、[キャッシュを管理] 編集をクリックします。
バケットの [キャッシュを構成] ページが表示されます。
[キャッシュ リージョン] セクションで、キャッシュを作成するゾーンを含むリージョンをクリックします。
[キャッシュ ゾーン] セクションで、キャッシュを作成するゾーンを選択します。選択したゾーンごとに、有効期間(TTL)とデータ取り込み条件を設定します。
TTL を設定するには、[有効期間] 列の [期間]* フィールドに期間を入力し、時間単位を選択します。
データ取り込み条件を設定するには、[取り込み条件] 列で、 [編集] をクリックします。表示された [取り込み条件を設定] パネルで、データ取り込みオプションを選択し、[完了] をクリックします。
[保存] をクリックします。
表示されるダイアログで [確認] をクリックします。
[バケットの詳細] ページの [オペレーション] タブが開き、キャッシュ作成オペレーションのジョブ ステータスが表示されます。
新しいバケットの作成時にキャッシュを作成するには、新しいバケットを作成するの手順に沿って操作します。
[バケットリスト] ページからバケットのキャッシュのステータスを表示するには:
- Google Cloud コンソールで Cloud Storage の [バケット] ページに移動します。
[列を表示] アイコン()をクリックし、[キャッシュ] を選択して [OK] をクリックします。
コマンドライン
gcloud storage buckets anywhere-caches create コマンドを使用します。
gcloud storage buckets anywhere-caches create gs://BUCKET_NAME CACHE_ZONE \ [--ttl=TTL] [--enable-ingest-on-write]
次のように置き換えます。
BUCKET_NAMEは、データをキャッシュに保存するバケットの名前に置き換えます。例:my-bucketCACHE_ZONEは、キャッシュを実行するゾーンに置き換えます。例:us-east1-b複数のキャッシュを一度に作成するには、複数のゾーンを指定します。例:
us-east1-b us-east1-c us-east1-dTTL(省略可)は、キャッシュ内のデータの有効期間(TTL)に置き換えます。値は 1 ~ 7 日の範囲で指定できます。値は、秒、分、時間、日単位で表すことができます。次に例を示します。86400s: 86,400 秒1440m: 1,440 分24h: 24 時間1d: 1 日
指定しない場合のデフォルトは
86400s(1 日)です。
データがバケットに書き込まれた瞬間にデータをキャッシュに取り込むようにキャッシュを構成するには、--enable-ingest-on-write フラグを指定します。
成功すると、このコマンドは AnywhereCache の作成オペレーションに関連付けられた長時間実行オペレーションの ID を返します。長時間実行オペレーションの詳細を取得したり、AnywhereCaches 作成オペレーションの完了前に長時間実行オペレーションをキャンセルできます。
クライアント ライブラリ
C++
詳細については、Cloud Storage C++ API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証情報を設定するをご覧ください。
Java
詳細については、Cloud Storage Java API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証情報を設定するをご覧ください。
Rust
Terraform
Terraform で Rapid Cache を使用する方法については、google_storage_anywhere_cache Terraform のドキュメントをご覧ください。
REST API
JSON API
gcloud CLI をインストールして初期化します。これにより、
Authorizationヘッダーのアクセス トークンを生成できます。次の情報が含まれる JSON ファイルを作成します。
{ "zone": "ZONE", "ttl": "TIME_TO_LIVE", "ingestOnWrite": INGEST_SETTING }次のように置き換えます。
ZONEは、キャッシュを実行するゾーンに置き換えます。例:us-east1-bTIME_TO_LIVEは、キャッシュ内のデータの有効期間(TTL)に置き換えます。値は、秒、分、時間、日単位で表すことができます。次に例を示します。86400s: 86,400 秒1440m: 1,440 分24h: 24 時間1d: 1 日
指定しない場合、デフォルトは
86400s(1 日)です。最大値は 7 日です。trueまたはfalseを使用してINGEST_SETTINGを指定し、キャッシュが書き込み時にデータを取り込むかどうかを指定します。
cURLを使用して、キャッシュの作成リクエストで JSON API を呼び出します。curl -X POST --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/anywhereCaches"次のように置き換えます。
JSON_FILE_NAMEは、手順 2 で作成した JSON ファイルの名前に置き換えます。BUCKET_NAMEは、データをキャッシュに保存するバケットの名前に置き換えます。例:my-bucket
成功した場合、オペレーションは google.longrunning.Operation を返します。長時間実行オペレーションの詳細を取得したり、AnywhereCaches 作成オペレーションの完了前に長時間実行オペレーションをキャンセルできます。
キャッシュを表示する
コンソール
- Google Cloud コンソールで Cloud Storage の [バケット] ページに移動します。
バケットのリストで、表示するキャッシュに関連付けられているバケットの名前をクリックします。
[バケットの詳細] ページで、[構成] タブをクリックします。
[Rapid Cache] セクションで、[キャッシュ] フィールドの横にある [編集] をクリックします。
表示された [構成を編集] ページで、リージョンを選択して、リージョンのゾーン内のすべてのキャッシュを表示します。
[キャッシュゾーン] ペインで、使用可能な各キャッシュの詳細を確認できます。
コマンドライン
gcloud storage buckets anywhere-caches describe コマンドを使用します。
gcloud storage buckets anywhere-caches describe CACHE_ID
次のように置き換えます。
CACHE_IDは、BUCKET_NAME/CACHE_ZONEとして記述されたキャッシュ インスタンスの ID に置き換えます。例:my-bucket/us-east1-b。
オプションの raw フラグを使用して、標準化された API レスポンスではなく、未加工の API レスポンスを出力します。
成功すると、コマンドは AnywhereCache リソースを返します。
クライアント ライブラリ
C++
詳細については、Cloud Storage C++ API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証情報を設定するをご覧ください。
Java
詳細については、Cloud Storage Java API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証情報を設定するをご覧ください。
Rust
Terraform
Terraform で Rapid Cache を使用する方法については、google_storage_anywhere_cache Terraform のドキュメントをご覧ください。
REST API
JSON API
gcloud CLI のインストールと初期化を行います。これにより、
Authorizationヘッダーのアクセス トークンを生成できます。cURLを使用して、キャッシュの取得リクエストで JSON API を呼び出します。curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/anywhereCaches/RAPID_CACHE_ID"
次のように置き換えます。
BUCKET_NAMEは、取得するキャッシュに関連付けられているバケットの名前に置き換えます。例:my-bucketRAPID_CACHE_IDは、キャッシュが配置されているゾーンに置き換えます。例:us-east1-b
成功すると、このオペレーションは AnywhereCache リソースを返します。
キャッシュの一覧表示
コンソール
- Google Cloud コンソールで Cloud Storage の [バケット] ページに移動します。
バケットのリストで、表示するキャッシュに関連付けられているバケットの名前をクリックします。
[バケットの詳細] ページで、[構成] タブをクリックします。
[Rapid Cache] セクションで、[キャッシュ] フィールドの横にある [編集] をクリックします。
表示された [構成を編集] ページで、リージョンを選択して、リージョンのゾーン内のすべてのキャッシュを表示します。
リージョン内のゾーンで使用可能なすべてのキャッシュが [キャッシュゾーン] ペインに表示されます。
コマンドライン
gcloud storage buckets anywhere-caches list コマンドを使用します。
gcloud storage buckets anywhere-caches list gs://BUCKET_NAME
次のように置き換えます。
BUCKET_NAMEは、一覧表示するキャッシュに関連付けられているバケットの名前に置き換えます。例:my-bucket
成功すると、コマンドは AnywhereCache リソースのリストを返します。
必要に応じて --raw フラグを使用し、標準化されたレスポンスではなく未加工の API レスポンスを返すことができます。結果のページネーションなど、表示動作を制御する方法については、gcloud storage ls のドキュメントをご覧ください。
クライアント ライブラリ
C++
詳細については、Cloud Storage C++ API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証情報を設定するをご覧ください。
Java
詳細については、Cloud Storage Java API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証情報を設定するをご覧ください。
Rust
Terraform
Terraform で Rapid Cache を使用する方法については、google_storage_anywhere_cache Terraform のドキュメントをご覧ください。
REST API
JSON API
gcloud CLI のインストールと初期化を行います。これにより、
Authorizationヘッダーのアクセス トークンを生成できます。cURLを使用して、キャッシュを一覧表示するリクエストで JSON API を呼び出します。curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/anywhereCaches"
次のように置き換えます。
BUCKET_NAMEは、取得するキャッシュに関連付けられているバケットの名前に置き換えます。例:my-bucket
複数のキャッシュを一覧表示する場合は、結果をページネーションできます。
成功すると、このオペレーションは AnywhereCache リソースのリストを返します。このレスポンスの構造の詳細については、AnywhereCaches リストのドキュメント内のレスポンスをご覧ください。
キャッシュを更新する
コンソール
- Google Cloud コンソールで Cloud Storage の [バケット] ページに移動します。
バケットのリストで、更新するキャッシュに関連付けられているバケットの名前をクリックします。
[バケットの詳細] ページで、[構成] タブをクリックします。
[Rapid Cache] セクションで、 [キャッシュを管理] をクリックします。
[キャッシュの管理] ペインで、[ キャッシュを編集または作成] をクリックします。
表示された [構成を編集] ページで、キャッシュのプロパティを更新します。
キャッシュの TTL を更新するには、[有効期間] 列を見つけて、期間を指定し、時間単位(分など)を選択します。
書き込み時の取り込みを有効にするには:
[取り込み条件] 列を見つけて、 [キャッシュ取り込み条件を編集] をクリックします。
[取り込み条件を設定] ペインで、[書き込み時にデータを取り込む] チェックボックスをオンにして、[完了] をクリックします。
[構成の編集] ページで、[保存] をクリックします。
表示されるダイアログで [確認] をクリックします。
コマンドライン
gcloud storage buckets anywhere-caches update コマンドを使用します。
gcloud storage buckets anywhere-caches update CACHE_ID \ [--ttl=TTL] [--[no-]enable-ingest-on-write]
次のように置き換えます。
CACHE_IDは、BUCKET_NAME/CACHE_ZONEとして記述されたキャッシュ インスタンスの ID に置き換えます。例:my-bucket/us-east1-b。複数のキャッシュを一度に更新するには、複数の ID を指定します。例:
my-bucket/us-east1-b my-bucket/us-east1-cTTL(省略可)は、キャッシュ内のデータの有効期間(TTL)に置き換えます。値は 1 ~ 7 日の範囲で指定できます。値は、秒、分、時間、日単位で表すことができます。次に例を示します。86400s: 86,400 秒1440m: 1,440 分24h: 24 時間1d: 1 日
データがバケットに書き込まれた瞬間にデータをキャッシュに取り込むようにキャッシュを構成するには、--enable-ingest-on-write フラグを指定します。書き込み時にデータの取り込みを無効にするには、--no-enable-ingest-on-write フラグを指定します。
成功すると、このコマンドは AnywhereCache 更新オペレーションに関連付けられた未加工の長時間実行オペレーションの ID を返します。長時間実行オペレーションの詳細を取得できます。
クライアント ライブラリ
C++
詳細については、Cloud Storage C++ API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証情報を設定するをご覧ください。
Java
詳細については、Cloud Storage Java API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、クライアント ライブラリの認証情報を設定するをご覧ください。