Firebase SQL Connect
Cloud SQL for PostgreSQL と型安全なモバイル SDK およびウェブ SDK を使用して安全でスケーラブルなアプリを作成したいデベロッパー向けの、Firebase 初のリレーショナル データベース ソリューション。詳細
Firebase SQL Connect は、モバイルアプリとウェブアプリ用のリレーショナル データベース サービスです。Cloud SQL を利用したフルマネージド PostgreSQL データベースを使用して、構築とスケーリングを行うことができます。Firebase Authentication との統合に優れた GraphQL テクノロジーを使用して、セキュアなスキーマ、クエリ、ミューテーションの管理を提供します。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 には、本番環境にデプロイしなくてもローカル データベースでアプリをテストできるエミュレータが含まれています。 |
| Gemini in Firebase による AI アシスタンス | Gemini in Firebase を使用して、自然言語でクエリとミューテーションをオンデマンドで生成し、Firebase コンソールで直接テストします。詳しくは、クエリとミューテーションに AI assistance for SQL Connect を使用するをご覧ください。 |
仕組み
Firebase SQL Connect の最上位リソースは サービスです。これは、デベロッパーが定義してエンドユーザーが呼び出すことができるマネージド GraphQL API を表します。スキーマは、サービスのアプリ データモデルです。主に GraphQL ソースファイルのコレクションと、接続されたデータソース(Cloud SQL インスタンスなど)の特定の構成として表されます。サービスごとにスキーマは 1 つのみ存在できます。最後に、コネクタは、サービスのスキーマに対して動作するように定義されたクエリとミューテーションのコレクションです。サービスごとに複数のコネクタを設定できます(ライドシェアリング会社で「乗客」アプリと「運転手」アプリがある場合など)。
SQL Connect スキーマは、特定の基盤となる PostgreSQL データベース スキーマに明示的にマッピングされます。SQL Connect には、アプリのスキーマの変更に基づいてスキーマ移行の実行に必要な SQL DDL を自動的に生成するツールが含まれています。アプリのスキーマに基づいて、SQL Connect はデータモデルのクエリと操作を行うための追加の GraphQL スキーマを自動的に生成します。
アプリのスキーマを定義したら、アプリでデータを読み書きするために実行される事前定義済みのクエリとミューテーションを記述できます。SQL Connect クエリとミューテーションはクライアント コードによって送信されず、サーバーで実行されます。代わりに、デプロイ時に、これらの SQL Connect オペレーションは Cloud Functions などのサーバーに保存されます。これにより、コード管理とクライアント コードの開発が簡素化されます。Firebase コンソールや SQL Connect VS Code 拡張機能などの特権環境では、管理オペレーションに適した Google IAM 認証情報を使用して、アドホック オペレーションを実行できます。
クライアント コードの場合、サポートされている各プラットフォームには、バックエンドへの接続、リクエストの発行、レスポンスの処理を行うコア 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 の料金と請求について学習する。