gcloud ツールを使用したアプリケーション テストとインデックス管理

gcloud コマンドライン ツールを使用してアプリケーションをローカルでテストし、本番環境用の Datastore モードの Cloud Firestore インスタンスのインデックスを管理できます。このページでは、これらのアクティビティの標準的なワークフローを説明します。

gcloud ツールは、次のワークフローをサポートします。

  1. Cloud Datastore インスタンスのローカル サポート(ディレクトリ、必要ファイル、プロジェクト ID など)を作成する。
  2. Cloud Datastore エミュレータを起動する。このエミュレータにより、Cloud Datastore の本番環境のローカル エミュレーションが提供されます。
  3. アプリケーションのクエリからインデックスの定義を生成する。
  4. 手動で作成した(または生成された)インデックスの定義を、本番環境用のデータベース インスタンスにアップロードする。
  5. 本番環境用のデータベース インスタンスから、使用されていないインデックスを削除する。

コマンドライン ツールを使用した開発ワークフロー

gcloud ツールを使用した標準的なワークフローを以下に示します。

  1. データストア エミュレータを起動します。

  2. 環境変数を設定して、アプリケーションにエミュレータの使用を認識させます。

  3. アプリケーションを開始し、エミュレータに対してテストを行います。アプリケーションで使用されるクエリをエミュレータに対して実行する必要があります。これは、本番環境用のデータベース インスタンスのインデックスを生成するためです。

  4. 次の例のように、indexes create コマンドにローカルの index.yaml ファイルのパスを渡して、生成されたインデックスをアップロードします。

    gcloud datastore indexes create ~/.config/gcloud/emulators/datastore/WEB-INF/index.yaml
    

    上の例のパスは、data-dir オプションで特定のディレクトリをまだ設定していないことを前提としています。特定のディレクトリを設定している場合は、index.yaml ファイルへのパスを使用するようにパスを変更します。

  5. 環境変数を削除し、アプリケーションに本番環境用のデータベース インスタンスの使用を認識させます。

  6. 本番環境用のデータベース インスタンスに対してアプリケーションを実行します。

  7. インデックスの一部は、次第に使用されなくなります。使用されないインデックスを本番環境用のデータベース インスタンスから削除するには、そのインデックスをローカルの index.yaml ファイルから削除し、indexes cleanup コマンドを呼び出します。

    gcloud datastore indexes cleanup ~/.config/gcloud/emulators/datastore/WEB-INF/index.yaml
    

    data-dir オプションで特定のディレクトリをすでに設定している場合は、index.yaml ファイルのパスを使用するように上記の例のパスを変更します。

次のステップ

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

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

Cloud Datastore ドキュメント