Firebase SQL Connect
Cloud SQL for PostgreSQL と型安全なモバイル SDK およびウェブ SDK を使用して、安全でスケーラブルなアプリを作成したいデベロッパー向けの Firebase 初のリレーショナル データベース ソリューション。Cloud SQL詳細
Firebase SQL Connect は、モバイルアプリとウェブ アプリ向けのリレーショナル データベース サービスです。Cloud SQL を基盤とするフルマネージド PostgreSQL データベースを使用して、構築とスケーリングを行うことができます。Firebase Authentication と統合される GraphQL テクノロジーを使用して、セキュアなスキーマ、クエリ、 ミューテーションの管理を実現します Firebase Authentication。Kotlin Android、iOS、Flutter、ウェブの SDK をサポートしているため、このプロダクトをモバイルアプリやウェブアプリに迅速に統合できます。
SQL Connect を使用すると、アプリケーションのデータモデルと、 アプリケーションに必要な正確なクエリを宣言できます。データモデルを使用して、データモデルに適合する PostgreSQL データベース スキーマ、データベースと通信する安全なサーバー エンドポイント、サーバー エンドポイントと通信するクライアント アプリケーション用の型安全な SDK を自動的に作成します。これは、特定のアプリケーションに合わせてオーダーメイドされた「自動運転アプリ サーバー」のようなものです。
主な機能
| Cloud SQL for PostgreSQL を基盤とする | Google Cloud での PostgreSQL リレーショナル データベースの設定、 維持、管理に役立つフルマネージド データベース サービスを利用できます。 |
| ベクトル検索 | SQL Connect は、デベロッパーが AI を活用したアプリケーションを構築するためのベクトル検索をサポートしています。 |
| 複数のプラットフォーム SDK | Firebase SQL Connect は、Kotlin Android、iOS、Flutter、ウェブ用のマルチプラットフォーム SDK を提供しています。 |
| ユーザーベースの認証 | SQL Connect はエンドユーザー認証をサポートしており、 承認されたユーザーのみがデータにアクセスできるようにします。 |
| Visual Studio Code 拡張機能 | GraphQL を使用して、Visual Studio Code コードエディタから直接、スキーマの簡単な開発、クエリとミューテーションの管理を行うことができます。 |
| エミュレータ | Firebase SQL Connect には、本番環境にデプロイしなくてもローカル データベースでアプリをテストできるエミュレータが含まれています。 |
| Firebase の Gemini による AI アシスタンス | の Gemini を使用して、自然言語でクエリとミューテーションをオンデマンド で生成し、Firebase で直接テストします。Firebase詳しくは、クエリとミューテーションに Use AI assistance for SQL Connectを使用するをご覧ください。 |
仕組み
Firebase SQL Connect の最上位リソースはサービスです。これは、デベロッパーが定義し、 エンドユーザーが呼び出すことができるマネージド GraphQL API を表します。スキーマ は、サービスのアプリデータモデルです。主に GraphQL ソースファイルのコレクションとして表されます。また、接続されたデータソース(Cloud SQL インスタンスなど)の特定の構成も表します。サービスごとにスキーマは 1 つだけです。最後に、コネクタ は、サービスのスキーマに対して動作するように定義されたクエリとミューテーションのコレクションです。サービスごとに複数のコネクタを設定できます(たとえば、ライドシェアリング会社に「ライダー」アプリと「ドライバー」アプリがある場合など)。
SQL Connect スキーマは、特定の基盤となる PostgreSQL データベース スキーマに明示的にマッピングされます。SQL Connect には、アプリ スキーマの変更に基づいてスキーマ移行を実行するために必要な SQL DDL を自動的に生成するツールが含まれています。SQL Connect は、アプリ スキーマに基づいて、SQL Connect データモデルのクエリと操作を行うための追加の GraphQL スキーマを 自動的に生成します。
アプリ スキーマを定義したら、アプリケーションでデータの読み取りと書き込みを行うために実行される事前定義されたクエリとミューテーションを作成できます。SQL Connect のクエリとミューテーションは、クライアント コードによって送信され サーバーで実行されることはありません。代わりに、デプロイされると、これらの SQL Connect オペレーションは Cloud Functions のようにサーバーに保存されます。これにより、コード管理とクライアント コードの開発が簡素化されます。Firebase コンソールなどの特権環境で、SQL Connect VS Code 拡張機能を使用すると、管理オペレーションに適した Google IAM 認証情報を使用してアドホック オペレーションを実行できます。Firebase
クライアント コードの場合、サポートされている各プラットフォームには、バックエンドへの接続、リクエストの発行、レスポンスの処理を行うコア SDK があります。これらの SDK はスキーマを認識しないため、オペレーション名と変数を構造化されていないデータとして指定する必要があります。サポートされている各プラットフォームには、生成された SDK もあります。データモデルとオペレーションを定義すると、マシン上のツールによって、アプリケーションに固有の厳格に型指定された SDK が自動的に生成されます。これらの SDK は、型安全性、人間工学、データ検証などの機能のために、コア SDK を「ラップ」します。
実装パス
| スキーマのプロトタイプを作成する | ツールを使用してローカル環境で開始し、ベクトル型を使用した設計など、データベース スキーマのプロトタイプを作成する | |
| オペレーションのプロトタイプを作成する | 自動生成されたクエリとミューテーションに基づいて、クライアント アプリの事前定義されたクエリとミューテーションのオペレーションを構築する | |
| 型安全な SDK を生成する | スキーマとオペレーションから型安全な SDK を生成してテストし、 クライアントサイドのコードを実装する | |
| スキーマとオペレーションをデプロイする | Firebase SQL Connect サービスのスキーマとオペレーションをデプロイする | |
| クライアントをデプロイする | クライアント コードをデプロイする |
次のステップ
- 今すぐ SQL Connect を試す: クイックスタート アプリ リポジトリを探索し、ウェブ向け Codelab、iOS 向け Codelab、Android 向け Codelab に沿って、フル機能の SQL Connect アプリを構築します。
- Firebase SQL Connect の開発フローを実際に確認する場合は、スタートガイドをご覧ください。
- SQL Connect 料金と請求について学習します。