このドキュメントでは、Cloud SQL データに接続する データストアを作成する方法について説明します。このデータストアを Gemini Enterprise app にリンクすると、エージェントがデータを分析できるようになります。
Gemini Enterprise データストアを使用して Cloud SQL データに接続するには、次のいずれかのモードを使用します。
連携クエリ(推奨) [プレビュー]: データをコピーして移動する下り(外向き)料金を発生させることなく、Cloud SQL データに直接接続します。連携クエリは、ID に Identity and Access Management(IAM)権限が付与されているすべての Cloud SQL インスタンス、データベース、テーブルにクエリを直接送信するため、分析クエリの効率が向上します。連携クエリ モードを使用すると、 Knowledge Catalog が Gemini Enterprise app の [アシスタント] タブで自動的に有効になり、エージェントはユーザーがアクセスできるデータを検索してコンテキストを検索できます。
データの取り込み: 特定の 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 ロールを付与します。
- インスタンスとデータベースへのアクセス:
- 読み取り専用のクエリとツールの場合、
roles/cloudsql.viewerCloud SQL 閲覧者() と Cloud SQL クライアント(roles/cloudsql.client) (または IAM データベース認証を使用する Cloud SQL インスタンス ユーザー(roles/cloudsql.instanceUser) )。 - 書き込みまたは管理アクションが有効になっている場合は、Cloud SQL 編集者(
roles/cloudsql.editor) または Cloud SQL 管理者(roles/cloudsql.admin) 。
- 読み取り専用のクエリとツールの場合、
- 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 app に接続する準備ができました。連携クエリ モードでは、ユーザーが接続されたアプリを介してクエリを実行すると、クエリで 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 に公開するをご覧ください。