場所

Firestore インスタンスをプロビジョニングする場合は、インスタンスのロケーションを選択する必要があります。レイテンシを低減し可用性を高めるため、データを必要とするユーザーとサービスに近いロケーションにデータを保存します。

必要に応じて、プロジェクト内に複数のデータベースを作成し、それぞれに独自のロケーション設定を指定できます。

データベース インスタンスをプロビジョニングした後、そのロケーション設定を変更することはできないことに注意してください。

ロケーションの種類

Firestore のデータは、マルチリージョン ロケーションまたはリージョン ロケーションに保存できます。

マルチリージョン ロケーション

データベースの可用性と耐久性を最大限にする場合は、マルチリージョン ロケーションを選択します。

マルチリージョン ロケーションは定義済みのリージョンのセットで構成され、それら複数のリージョンにデータベースの複数のレプリカが保存されます。各レプリカは、データベース内のすべてのデータを含む読み取り / 書き込みレプリカ、または完全なデータセットを保持せずレプリケーションに参加するウィットネス レプリカのいずれかです。

複数のリージョン間でデータを複製することで、1 つのリージョン全体が失われてもデータの提供を継続できます。リージョン内においては、データはゾーン間で複製されるため、1 つのゾーンが失われてもそのリージョン内でデータの提供を継続できます。

Firestore は、次のマルチリージョン ロケーションをサポートしています。

マルチリージョン名 マルチリージョンの説明 読み取り / 書き込みリージョン ウィットネス リージョン
eur3 ヨーロッパ europe-west1(ベルギー)、europe-west4(オランダ) europe-north1(フィンランド)
nam5 米国 us-central1(アイオワ)、us-central2(オクラホマ - 限定公開の GCP リージョン) us-east1(サウスカロライナ)

プロジェクトに us-central または europe-west のいずれかのロケーションを使用する App Engine アプリがすでにある場合、デフォルトの Firestore データベースはマルチリージョンとみなされることに留意してください。

リージョンのロケーション

リージョン ロケーションは、サウスカロライナなどの特定のロケーションを表します。リージョン ロケーションのデータは、リージョン内の複数のゾーンに複製されます。すべてのリージョン ロケーションは、他のロケーションから 160 km 以上離れています。

アプリケーションでレイテンシが重要な場合や、他の Google Cloud リソースとのコロケーションが必要な場合は、費用や書き込みレイテンシを抑えるためにリージョン ロケーションを選択します。

Firestore は、次のリージョン リソース ロケーションをサポートしています。

リージョン名リージョンの説明
北米
us-west1オレゴン
us-west2ロサンゼルス
us-west3ソルトレイクシティ
us-west4ラスベガス

us-central1

この場所は App Engine をサポートしていません。 App Engine を使用する予定の場合は、別の場所を選択する必要があります。

アイオワ
northamerica-northeast1モントリオール

northamerica-northeast2

この場所は App Engine をサポートしていません。 App Engine を使用する予定の場合は、別の場所を選択する必要があります。

トロント

northamerica-south1

この場所は App Engine をサポートしていません。 App Engine を使用する予定の場合は、別の場所を選択する必要があります。

ケレタロ
us-east1サウスカロライナ
us-east4北バージニア

us-east5

この場所は App Engine をサポートしていません。 App Engine を使用する予定の場合は、別の場所を選択する必要があります。

コロンバス

us-south1

この場所は App Engine をサポートしていません。 App Engine を使用する予定の場合は、別の場所を選択する必要があります。

ダラス
南アメリカ

southamerica-west1

この場所は App Engine をサポートしていません。 App Engine を使用する予定の場合は、別の場所を選択する必要があります。

サンティアゴ
southamerica-east1サンパウロ
ヨーロッパ
europe-west2ロンドン

europe-west1

この場所は App Engine をサポートしていません。 App Engine を使用する予定の場合は、別の場所を選択する必要があります。

ベルギー

europe-west4

この場所は App Engine をサポートしていません。 App Engine を使用する予定の場合は、別の場所を選択する必要があります。

オランダ

europe-west8

この場所は App Engine をサポートしていません。 App Engine を使用する予定の場合は、別の場所を選択する必要があります。

ミラノ

europe-southwest1

この場所は App Engine をサポートしていません。 App Engine を使用する予定の場合は、別の場所を選択する必要があります。

マドリッド

europe-west9

この場所は App Engine をサポートしていません。 App Engine を使用する予定の場合は、別の場所を選択する必要があります。

パリ

europe-west12

この場所は App Engine をサポートしていません。 App Engine を使用する予定の場合は、別の場所を選択する必要があります。

トリノ

europe-west10

この場所は App Engine をサポートしていません。 App Engine を使用する予定の場合は、別の場所を選択する必要があります。

ベルリン
europe-west3フランクフルト

europe-north1

この場所は App Engine をサポートしていません。 App Engine を使用する予定の場合は、別の場所を選択する必要があります。

フィンランド
europe-central2ワルシャワ
europe-west6チューリッヒ
中東

me-central1

この場所は App Engine をサポートしていません。 App Engine を使用する予定の場合は、別の場所を選択する必要があります。

ドーハ

me-central2

この場所は App Engine をサポートしていません。 App Engine を使用する予定の場合は、別の場所を選択する必要があります。

ダンマーム

me-west1

この場所は App Engine をサポートしていません。 App Engine を使用する予定の場合は、別の場所を選択する必要があります。

テルアビブ
アジア
asia-south1ムンバイ

asia-south2

この場所は App Engine をサポートしていません。 App Engine を使用する予定の場合は、別の場所を選択する必要があります。

デリー
asia-southeast1シンガポール
asia-southeast2ジャカルタ
asia-east2香港
asia-east1台湾
asia-northeast1東京
asia-northeast2大阪
asia-northeast3ソウル
オーストラリア
australia-southeast1シドニー

australia-southeast2

この場所は App Engine をサポートしていません。 App Engine を使用する予定の場合は、別の場所を選択する必要があります。

メルボルン
アフリカ

africa-south1

この場所は App Engine をサポートしていません。 App Engine を使用する予定の場合は、別の場所を選択する必要があります。

ヨハネスブルグ

ロケーション SLA

Firestore のロケーションの種類によって、サービスレベル契約(SLA)の稼働率が決まります。

対象サービス 各月の稼働率
Firestore マルチリージョン 99.999% 以上
Firestore リージョン 99.99% 以上

ロケーションの料金

Firestore のロケーションによって、データベース オペレーションの料金が決まります。

リージョン別とリージョン タイプ別の料金の詳細については、Firestore の課金についてをご覧ください。

データベースのロケーションを表示する

データベースのロケーション設定を表示するには、次のいずれかの方法を使用します。

「デフォルトの Google Cloud リソースのロケーション」が原因で発生する可能性のあるロケーション依存関係

「デフォルトの Google Cloud リソースのロケーション」は、Google App Engine に関連付けられたプロジェクト リソースのロケーション設定です。次のものが含まれます。

  • デフォルトの Firestore データベース インスタンス
  • 名前の形式が *.appspot.com のデフォルトの Cloud Storage for Firebase バケット
  • 第 1 世代のスケジュール設定された関数でのみ使用される Google Cloud Scheduler

この「デフォルトの Google Cloud リソースのロケーション」は変更不可の設定です。また、関連付けられたリソースのいずれかにロケーションを設定すると、App Engine との共通の関連付けにより、すべてのリソースのロケーションが間接的に設定されます。

ただし、Firebase と Google Cloud エコシステムには長年にわたって多くの変更が行われており、リソースと App Engine の関連付けも変化しています。特に、2024 年 10 月 30 日以降、Firebase 用に新しくプロビジョニングされたデフォルトの Cloud Storage バケットの名前形式はすべて *.firebasestorage.app になり、App Engine には関連付けられません

考えられるロケーションの依存関係での変更内容は次のとおりです。

  • 2024 年 10 月 30 日以降、デフォルトの Firestore インスタンスとデフォルトの Cloud Storage for Firebase バケットがまだプロビジョニングされていない場合:

    • デフォルトの Firestore インスタンスをプロビジョニングすると、プロジェクトでプロビジョニングされる今後の App Engine アプリのロケーションが設定されます。ただし、将来のデフォルトの Cloud Storage バケットのロケーションは指定されません

    • デフォルトの Cloud Storage バケットをプロビジョニングしても、App Engine アプリはプロビジョニングされなくなりました。したがって、デフォルトの Cloud Storage バケットのロケーションが、今後のデフォルトの Firestore インスタンスのロケーションを指定することはありません。

  • 2024 年 10 月 30 日以降、デフォルトの Firestore インスタンスがすでにプロビジョニングされているが、デフォルトの Cloud Storage for Firebase バケットがプロビジョニングされていない場合:

    • 既存のデフォルトの Firestore インスタンスは、将来のデフォルトの Cloud Storage バケット(*.firebasestorage.app)のロケーションを指定しません
  • 2024 年 10 月 30 日以降、デフォルトの Cloud Storage for Firebase バケットがすでにプロビジョニングされている(具体的には *.appspot.com バケット)が、デフォルトの Firestore インスタンスがプロビジョニングされていない場合:

    • デフォルトの Cloud Storage バケット(*.appspot.com)がプロビジョニングされたとき、App Engine アプリもプロビジョニングされたため、将来のデフォルトの Firestore インスタンスのロケーションがその時点で設定されました。*.appspot.com バケットを削除しても App Engine アプリを削除できないため、今後のデフォルトの Firestore インスタンスのロケーション設定はすでに設定されています。

第 1 世代のスケジュール設定された関数を使用した場合、そのロケーションはデフォルトの Google Cloud リソースのロケーションに設定されます。これは、以前は Cloud Scheduler と App Engine が相互に関連付けられていたためです。また、このロケーション設定を共有するほかのリソースをプロビジョニングする前に第 1 世代のスケジュール設定された関数を設定した場合は、そのロケーションも設定します。

us-central または europe-west のいずれかのロケーションを使用する App Engine アプリがある場合、デフォルトの Google Cloud リソースのロケーションはマルチリージョンとみなされます。

次のステップ

  • 特定のロケーションに Firestore データベースを作成するには、Firestore クイックスタートのいずれかにアクセスしてください。
  • レイテンシ、可用性、耐久性の要件を満たすアプリケーションの構築について詳しくは、地域とリージョンをご覧ください。