Firestore データベースを作成するときに、Datastore API との互換性を持たせることができます。これは、新しい Firestore 機能へのアクセスを無効にする下位互換性のためのデータベース レベルの設定です。プロジェクト内のすべてのデータベースで、Datastore モード(Datastore)の Firestore の互換性を有効にする必要はありません。
Datastore 互換性は、以前の App Engine アプリなど、Datastore API に依存するアプリケーションでのみ使用することをおすすめします。Datastore 互換性は、Firestore の上に構築された API レイヤであり、可用性、パフォーマンス、整合性、スケーラビリティは同じです。App Engine との統合が強化される以外に、Datastore の互換性には Firestore を直接使用するメリットはありません。
Firestore
Firestore は、自動スケーリング、高パフォーマンス、容易なアプリケーション開発を実現するために構築された、MongoDB 互換のエンタープライズ グレードの NoSQL ドキュメント データベースです。Firestore は Datastore の後継です。Firestore は、数百万件のオペレーションを処理するサーバーサイドのバックエンド アーキテクチャだけでなく、モバイルアプリやウェブアプリにも使用できます。
Firestore には、以前の Datastore の機能に加えて、次の機能があります。
- 強整合性のあるストレージ レイヤ
- コレクションとドキュメントのデータモデル
- リアルタイム アップデート
- モバイル クライアント ライブラリとウェブ クライアント ライブラリ
Firestore は Datastore と下位互換性がありますが、新しいデータモデル、リアルタイム アップデート、モバイルおよびウェブ クライアント ライブラリの機能には下位互換性がありません。Firestore のすべての機能にアクセスする場合は、Datastore 互換性用にデータベースを構成しないでください。
Datastore 互換性の制限事項
Datastore で構築された以前の App Engine アプリケーションを使用している場合を除き、Datastore 互換性を使用しないことをおすすめします。Datastore 互換性を使用すると、次のような多くの有用な Firestore 機能にアクセスできなくなります。
- 豊富なクエリ機能: データベースは Datastore API リクエストを受け入れ、豊富なクエリ機能を提供する Firestore API リクエストを拒否します。
- インデックス タイプの増加: データベースでは、Firestore インデックスの代わりに Datastore インデックスが使用されます。これにより、インデックス タイプの種類が増え、構成の自由度が高まります。
- リアルタイム機能: Firestore のリアルタイム機能は利用できません。
次のステップ
Firestore クライアント ライブラリの使用を開始するには、Firestore データベースを作成してサーバー クライアント ライブラリを接続するをご覧ください。
Datastore 互換性のある Firestore を使ってみるには、Datastore クライアント ライブラリを使ってみるをご覧ください。