Cloud Firestore の料金

このドキュメントでは、Cloud Firestore の料金の詳細について説明します。また、Cloud Firestore での利用額を制限および監視する方法についても説明します。

米ドル以外の通貨でお支払いの場合は、Cloud Platform SKU に記載されている料金の通貨が適用されます。

料金の概要

Cloud Firestore を使用すると、以下の項目に対し課金されます。

  • 実行する読み取り、書き込み、および削除の回数
  • データベースにより使用されるストレージの容量(メタデータとインデックスのオーバーヘッドを含む)。
  • ネットワーク帯域幅の使用量

ストレージと帯域幅の使用量はギガバイト(GiB)単位で計算されます(1 GiB は 230 バイト)。課金はすべて日単位で発生します。

この後の各セクションでは、Cloud Firestore の使用に伴う請求の仕組みについて詳しく説明します。

読み取り、書き込み、および削除

Cloud Firestore で実行するドキュメントの読み込み、書き込み、および削除のオペレーションごとに課金が発生します。

マルチリージョン 無料割り当て超過分の料金
ドキュメントの読み取り ドキュメント 100,000 点あたり $0.06
ドキュメントの書き込み ドキュメント 100,000 点あたり $0.18
ドキュメントの削除 ドキュメント 100,000 点あたり $0.02
米ドル以外の通貨でお支払いの場合は、Cloud Platform SKU に記載されている該当通貨の料金が適用されます。

書き込みと削除の料金はシンプルです。読み取りの課金については注意すべき点があります。以下のセクションでは、これらの点について詳しく説明します。

クエリ結果をリッスンする

Cloud Firestore ではクエリの結果をリッスンでき、クエリの結果が変化した時点でリアルタイムの更新を取得できます。

クエリの結果をリッスンする場合、結果セット内のドキュメントを追加または更新するたびに、1 回の読み取りとして課金されます。また、ドキュメントが結果セットから除去される場合も、ドキュメントが変更されることになるため、1 回の読み取りとして課金されます(これとは対照的に、ドキュメントが削除される場合、これは読み取りとして課金されません)。

また、リスナーが 30 分を超えて切断している場合(ユーザーがオフラインになっている場合など)、新しいクエリを発行する場合と同様に読み取りが課金されます。

大きな結果セットを管理する

Cloud Firestore には、多数の結果を返すクエリを管理する際に役立ついくつかの機能があります。

  • カーソル。これは、長期実行クエリを再開できます。
  • ページトークン。これは、クエリ結果のページを設定できます。
  • 制限。これは、取得する結果の数を指定します。
  • オフセット。これは、一定数のドキュメントをスキップできます。

カーソル、ページトークン、および制限を使用する場合、追加コストは発生しません。これらの機能は実際に必要なドキュメントだけを読み取るので、コストを節約できます。

一方、オフセットを含むクエリを送信すると、スキップされるドキュメントごとに読み取り料金が課金されます。たとえば、クエリでオフセット 10 を使用している場合、このクエリが 1 つのドキュメントを返すと、11 回の読み取りとして課金されます。このような追加コストが発生することから、可能な場合は常にオフセットではなくカーソルを使用してください。

ドキュメントの読み取り以外のクエリ

コレクション ID リストのリクエストなど、ドキュメントの読み取り以外のクエリは 1 回のドキュメント読み取りとして課金されます。完全な結果セットを取得するために複数のリクエストが必要な場合(ページ設定を使用している場合など)、リクエストごとに 1 回ずつ課金されます。

クエリの最小コスト

クエリが結果を返さない場合でも、実行するクエリごとに 1 回の読み取り分の最小費用が発生します。

Cloud Firestore セキュリティ ルール

モバイル ライブラリおよびウェブ クライアント ライブラリの場合、Cloud Firestore セキュリティ ルールexists() または get() を使用して 1 つ以上のドキュメントをデータベースから読み取ると、以下のように追加の読み取り料金が課金されます。

  • Cloud Firestore セキュリティ ルールを評価するために必要な読み取りに対する課金が発生します。

    たとえば、ルールで 3 つのドキュメントを参照しているが、Cloud Firestore がルールを評価するために読み取る必要があるドキュメントが 2 つだけの場合、2 回の従属ドキュメントの読み取りに対する課金が発生します。

    ルールで従属ドキュメントを複数回参照している場合でも、従属ドキュメントごとに 1 回の読み取りとしてのみ課金されます。

  • ルールの評価は、リクエストごとに 1 回のみ課金されます。

    その結果、ドキュメントを 1 つずつ読み取るより、複数ドキュメントを一度に読み取る方が必要となるリクエストが少なくなり、最終的なコストが低くなる可能性があります。

  • クエリの結果をリッスンする場合、以下のすべての状況においてルール評価に対する課金が発生します。

    • クエリを発行する場合。
    • クエリ結果の更新ごと。
    • ユーザーの端末がオフラインになり、その後オンラインになる場合。
    • ルールを更新する場合。
    • ルールで従属ドキュメントを更新する場合。

ストレージ サイズ

Cloud Firestore に保存するデータの容量(ストレージ オーバーヘッドを含む)に対して課金されます。オーバーヘッドの容量には、メタデータ、自動インデックス、および複合インデックスが含まれます。Cloud Firestore に保存されている各ドキュメントには、次のメタデータが必要です。

  • ドキュメント ID(コレクション ID とドキュメント名を含む)。
  • 各フィールドの名前と値。Cloud Firestore はスキーマレスなので、ドキュメント内の各フィールドの名前がフィールド値とともに保存されます。
  • ドキュメントを参照するすべての単一フィールドおよび複合インデックス。各インデックス エントリには、コレクション ID、任意の数のフィールド値(インデックスの定義によって異なる)、ドキュメント名が含まれます。

Cloud Firestore ストレージの計算方法については、ストレージ サイズの計算をご覧ください。データベースにより使用されているストレージ容量は、API Console の App Engine の割り当ての詳細ページで確認できます。

マルチリージョン 無料割り当て超過分の料金
保存データ $0.18 /GiB/月
米ドル以外の通貨でお支払いの場合は、Cloud Platform SKU に記載されている料金の通貨が適用されます。

ネットワーク帯域幅

以下のセクションで説明するように、Cloud Firestore のリクエストによって使用されるネットワーク帯域容量に対して課金が発生します。

これまでのネットワーク帯域幅の使用量を確認するには、API Console を使用して課金データをファイルにエクスポートします

一般的なネットワークの料金体系

Google Cloud Platform 内で発生したリクエスト(Google Compute Engine で実行中のアプリケーションからのリクエストなど)については、次の課金が発生します。

トラフィックの種類 料金
上り 無料
リージョン内の下り 無料
同一マルチリージョン内のリージョン間の下り 無料
US 内のリージョン間の下り(GiB あたり) $0.01(月ごとの最初の 10 GiB は無料です)
リージョン間の下り(US リージョン間のトラフィックは除く) Google Cloud Platform インターネット下り料金

米ドル以外の通貨でお支払いの場合は、Cloud Platform SKU に記載されている料金の通貨が適用されます。

Cloud Firestore では、次のリクエストについては追加のインターネット下り料金が発生します。

  • リージョン間の Google Cloud Platform リクエスト(US リージョン間のトラフィックは除く)
  • Google Cloud Platform 外部からのリクエスト(ユーザーのモバイル端末からのリクエストなど)

Google Cloud Platform インターネット下り料金をご覧ください。

料金設定の例

30 日の請求サイクル中の使用量が次のとおりであった場合を考えてみます。

  • US 内での保存データ: 平均 100 GiB
  • ドキュメント読み取りオペレーション: 100,000,000 点
  • ドキュメント書き込みオペレーション: 50,000,000 点
  • ドキュメント削除オペレーション: 5,000,000 点

この請求サイクルでの Cloud Firestore の請求の内訳は次のようになります。この請求サイクルで使用した他の Cloud Platform サービス(Compute Engine インスタンスなど)に対しては追加料金が適用されます。

保存データ

  • 無料の割り当て: 1 GiB
  • 追加データ: $0.18 * 99 GiB = $17.82

ドキュメント読み取りオペレーション

  • 無料の割り当て: 1 日あたり 50,000 オペレーション * 30 日 = 1,500,000 オペレーション
  • 追加のオペレーション: $0.06 *(98,500,000÷100,000)= $59.10

ドキュメント書き込みオペレーション

  • 無料の割り当て: 1 日あたり 20,000 オペレーション * 30 日 = 600,000 オペレーション
  • 追加のオペレーション: $0.18 *(49,400,000÷100,000)= $88.92

ドキュメント削除オペレーション

  • 無料の割り当て: 1 日あたり 20,000 オペレーション * 30 日 = 600,000 オペレーション
  • 追加のオペレーション: $0.02 *(4,400,000÷100,000)= $0.88

月間の合計額

この例では、Cloud Firestore の合計請求額は $166.72 になります。

費用を管理する

想定外の請求を回避するには、Google App Engine を使用して 1 日あたりの費用制限を設定するか、Google Cloud Platform の課金コンソールを使用して 1 か月の予算とアラートを設定します。

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

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