このドキュメントでは、Cloud SQL データに接続するデータストアを作成する方法について説明します。このデータストアを Gemini Enterprise app にリンクすると、エージェントがデータを分析できるようになります。
Gemini Enterprise データストアを使用して Cloud SQL データに接続するには、次のいずれかのモードを使用します。
連携クエリ(推奨)[プレビュー]: データのコピーや移動に伴う下り(外向き)料金を発生させることなく、Cloud SQL データに接続します。連携クエリは、ID に Identity and Access Management(IAM)アクセス権があるすべてのインスタンス、データベース、テーブルにわたって、クエリを Cloud SQL に直接送信します。これは、分析クエリをより効率的に行うためです。連携クエリモードを使用すると、Gemini Enterprise アプリの [アシスタント] タブで Knowledge Catalog が自動的に有効になり、ユーザーがアクセスできるデータを検索してコンテキストを検索するためのエージェント ツールが提供されます。
データの取り込み: 特定の Cloud SQL テーブルから Gemini Enterprise データストアにデータをコピーします。Cloud SQL テーブルの変更を反映するには、データを手動で更新する必要があります。このモードでは、データを新しいロケーションに移動するための下り(外向き)料金が発生します。また、既存の IAM 権限はデータストアに複製されません。
始める前に
Gemini Enterprise で Cloud SQL データストアを作成するには、Gemini Enterprise 管理者(roles/discoveryengine.agentspaceAdmin)または Discovery Engine 管理者(roles/discoveryengine.admin)のロールが必要です。詳細については、管理者に権限を付与するをご覧ください。
プロジェクトが VPC Service Controls の境界で保護されている場合、または組織のポリシーの適用が有効になっている場合は、組織のポリシーでコネクタが許可されていることを確認します。
discoveryengine.managed.allowedDataSourcesマネージド制約(データコネクタに許可されるデータソースを制限する)のallowedDataSourcesパラメータにcloudsqlを追加します。詳細については、マネージド ポリシー制約の概要と許可されたデータソースを構成するをご覧ください。
また、前提条件を完了し、使用する予定のコネクタモードに必要な Cloud SQL IAM 権限を構成します。
連携クエリ
連携クエリモードを使用して Cloud SQL に接続するには、Cloud SQL インスタンスを含む Google Cloud プロジェクトで次の前提条件を完了します。
Cloud SQL インスタンスで Data API を有効にする。
gcloud sql instances patch <var>INSTANCE_NAME</var> \ --project=<var>PROJECT_ID</var> \ --data-api-access=ALLOW_DATA_APIIAM 権限を付与する: コネクタを介してクエリまたはアクションを実行するユーザーに、Cloud SQL インスタンスを含む Google Cloud プロジェクトで次の IAM ロールを付与します。
- インスタンスとデータベースへのアクセス:
- Cloud SQL 閲覧者(
roles/cloudsql.viewer)と Cloud SQL クライアント(roles/cloudsql.client)(または IAM データベース認証を使用する Cloud SQL インスタンス ユーザー(roles/cloudsql.instanceUser))。読み取り専用のクエリとツール用。 - 書き込みまたは管理アクションが有効になっている場合は、Cloud SQL 編集者(
roles/cloudsql.editor)または Cloud SQL 管理者(roles/cloudsql.admin)。
- Cloud SQL 閲覧者(
- MCP ツールへのアクセス:
- Cloud SQL インスタンスが存在するプロジェクトの MCP ツールユーザー(
roles/mcp.toolUser)権限。MCP ツールを呼び出すために必要です。
- Cloud SQL インスタンスが存在するプロジェクトの MCP ツールユーザー(
- インスタンスとデータベースへのアクセス:
データの取り込み
Cloud SQL からデータを取り込むには、次の IAM 権限を構成します。
- ステージング バケットへのアクセス: Cloud SQL からデータを取り込むと、データは最初に Cloud Storage バケットにステージングされます。中間 Cloud Storage バケットに対するストレージ管理者(
roles/storage.admin)ロールを、Cloud SQL インスタンスのサービス アカウント(p9876-abcd33f@gcp-sa-cloud-sql.など)に付与します。 - プロジェクト間の Cloud SQL アクセス: 作成する Gemini Enterprise データストアを含む Google Cloud プロジェクトとは異なるソース Google Cloud プロジェクトからデータをインポートする場合は、ソース Cloud SQL プロジェクトの Cloud SQL 閲覧者(
roles/cloudsql.viewer)ロールをservice-PROJECT_NUMBER@gcp-sa-discoveryengine.サービス アカウントに付与します(ここで、PROJECT_NUMBERは Gemini Enterprise データストアを含むGoogle Cloud プロジェクトのプロジェクト番号です)。
Cloud SQL データストアを作成する
Cloud SQL から Gemini Enterprise にデータを接続するデータストアを作成する手順は次のとおりです。
Google Cloud コンソールで、[Gemini Enterprise] ページに移動します。
[データストア] ページに移動します。
[データストアを作成] をクリックします。
[ソース] ページで、データストアのデータソースを選択します。[データソースを選択] 検索フィールドで「Cloud SQL」を検索するか、[ファーストパーティ データソース] のリストで Cloud SQL を見つけます。[データソースを追加] を選択します。
[データ] ページで、データへの接続方法のコネクタモードを選択します。選択したモードに応じて、次のタブから選択して詳細な手順を確認してください。
連携クエリ
データの取り込み
- [データの取り込み] を選択します。
- インポートするデータの詳細を指定します。[Cloud SQL テーブルからデータをインポートする] で、次の情報を指定します。
- プロジェクト ID: Cloud SQL テーブルを含む Google Cloud プロジェクト。これは必須項目です。
- インスタンス ID: インポートするデータを含む Cloud SQL インスタンス ID。これは必須項目です。
- データベース ID: インポートするデータを含む Cloud SQL データベース ID。これは必須項目です。
- テーブル ID: インポートするデータを含む Cloud SQL テーブル ID。これは必須項目です。
- データの Google Cloud Storage バケットのロケーションを入力します。このフィールドは必須です。 必要に応じて、[サーバーレス エクスポートを有効にする] を選択して、Cloud SQL サーバーレス エクスポートを使用します。サーバーレス エクスポートを有効にすると、追加料金が発生します。Cloud SQL サーバーレス エクスポートの料金をご覧ください。
- [続行] をクリックします。
[構成] ページで、データストアの設定を構成します。
- データコネクタのロケーション: データストアのメタデータを保存するリージョンを選択します。データストアの作成後にロケーションを変更することはできません。マルチリージョンに関する重要な情報については、Gemini Enterprise のロケーションをご覧ください。
- データコネクタ名: [データコネクタ名] フィールドに、データコネクタの名前を入力します。データコネクタの作成後に名前を変更することはできません。名前を入力すると、データコネクタの一意の ID が生成されます。必要に応じて、[タグ(省略可)] フィールドにデータコネクタのタグを入力します。このタグは、すべてのバージョンでコネクタの安定した識別子として機能します。
- 機密データの保護ポリシー: データストアの機密データの保護ポリシーを選択します。形式は、
projects/{project}/locations/{location}/contentPolicies/{policy}に従う必要があります。この設定は後で編集できます。
[作成] をクリックします。
これで、データストアを Gemini Enterprise アプリに接続する準備が整いました。連携クエリモードでは、ユーザーが接続されたアプリを介してクエリを実行すると、Cloud SQL の使用料金が発生します。データ取り込みモードでは、データストアをアプリに接続する前であっても、データのインポート時に Cloud SQL、Cloud Storage、Gemini Enterprise のインデックス作成料金が発生します。これらの料金の詳細については、Gemini Enterprise の料金をご覧ください。
次のステップ
データストアをアプリに接続するには、Gemini Enterprise app を作成するの手順に沿ってアプリを作成し、データストアを選択します。
Knowledge Catalog がデータクラウド コネクタと連携(連携クエリモードを使用すると自動的に有効になります)して、ユーザーがアクセスできるデータをエージェントが検索し、組織のコンテキストを検索できるようにする方法を学習します。
検証済みのクエリを使用して高精度でスコープ設定されたエージェントを構築するには、Cloud SQL for MySQL データ エージェントまたは Cloud SQL for PostgreSQL データ エージェントを Gemini Enterprise に公開するをご覧ください。