Firestore について知っておくべきこと: クイック リファレンス
Google Cloud Japan Team
※この投稿は米国時間 2021 年 7 月 8 日に、Google Cloud blog に投稿されたものの抄訳です。
「なぜ機能やアプリケーションの構築にそんなに時間がかかるのか?」このようにプロダクト チームから尋ねられることがあるかもしれません。アプリケーションの構築は、データの管理と保存に使用されるバックエンド サービスの複雑さをはじめとした、技術的な複雑さゆえに手間のかかる作業になります。この技術的な複雑さに気を取られていると、ビジネス上の本質的価値の実現から注意が逸れてしまいます。Firestore は、完全な Backend as a Service(BaaS)を通じて Google Cloud にバックエンドの複雑さを管理させることで、こうした状況に変化をもたらします。
Firestore はサーバーレスの NoSQL ドキュメント データベースであり、シンプルで迅速かつ確実なアプリケーションのイノベーションを実現します。
また、完全な Google Cloud バックエンド エコシステムと Firebase のアプリ内サービス、さらに Google のコア UI フレームワークと OS をインテリジェントに統合する接着剤の役目を果たします。
Firestore とは
Firestore はサーバーレスのフルマネージド NoSQL ドキュメント データベースであり、構成やダウンタイムなしでゼロからグローバルな規模までスケールできます。Firestore には次のような特長があります。
データベースに直接接続する迅速かつ柔軟でスケーラブルなウェブとモバイルの開発に最適です。
データベースの変更に応じた簡単なリアルタイム データ同期をサポートします。
オフライン モードを堅牢にサポートします。インターネットが利用できない場合や不安定な場合でも、ユーザーはアプリを操作し続けることができます。
自由にカスタマイズ可能なセキュリティとデータの検証ルールで、データを確実に保護できます。
強整合性、柔軟なスケーリング、高パフォーマンスに加え、最高水準の 99.999% の可用性が組み込まれています。
Firebase は、Cloud Functions や BigQuery(サーバーレス データ ウェアハウス)などの Google Cloud サービスと統合できます。
豊富な Google Cloud サービス統合に加え、Firestore は Firebase Extensions を介して、増え続けるサードパーティ パートナー各社とワンクリックで緊密に統合し、アプリケーションの構築をさらに高速化できます。
ドキュメントモデル データベース
Firestore はドキュメントモデル データベースの一種です。すべてのデータは「ドキュメント」と「コレクション」に保存されます。ドキュメントは JSON オブジェクトと考えることができます。これはキーと値のマッピングのセットを備えた辞書であり、値には文字列、数値、バイナリ値など、サポートされた異なるいくつかのデータ型を指定できます。
ドキュメントはコレクション内に保存されます。ドキュメントには他のドキュメントを直接含められませんが、他のドキュメントを含むサブコレクションを指し示すことはできます。さらに、そのドキュメントでサブコレクションを指し示すことも可能です。この構造には数々のメリットがあります。まず、実行するすべてのクエリはシャローです。つまり、ドキュメントに含まれるすべてのデータを取得することを心配せずに、ドキュメントを取得できます。理にかなった方法でデータを階層的に構造化できるため、不要データの大量取得を心配する必要がありません。
Firestore の使用方法
Firestore は次の 2 つのモードでご利用いただけます。
ネイティブ モードの Firestore: このモードは、ウェブおよびモバイルアプリを Firestore に直接接続する機能によって差別化されています。ネイティブ モードは、毎秒最大 10,000 件の書き込みや 100 万を超える接続をサポートします。
Datastore モードの Firestore: このモードは Firestore のサーバーサイドでの使用しかサポートしませんが、書き込みも含めて無制限のスケーリングをサポートします。
まとめ
アプリケーションのユースケースにかかわらず、機能やアプリケーションを迅速に構築するなら Firestore BaaS をぜひご利用ください。Firestore の詳細については、ドキュメントをご確認ください。
#GCPSketchnote の詳細については、GitHub リポジトリをフォローしてください。同様のクラウド コンテンツについては、Twitter で @pvergadia で発信しています。thecloudgirl.dev もぜひご覧ください。
-Google デベロッパー アドボケイト Priyanka Vergadia
-プロダクト マネージャー Minh Nyugen