Google Vertex AI Agent とリアルタイムの Amazon Athena データを CData Connect AI で統合
Vertex AI は、Agent Development Kit(ADK)を使用して AI エージェントを構築するための開発エコシステムを提供します。ADK を使用すると、開発者は推論、アクション実行、構造化されたツールインターフェースを通じた外部システムとの連携が可能なツール拡張エージェントを作成できます。これらのエージェントは ADK Web インターフェースでローカルにテストでき、エンタープライズワークフロー向けの高度なロジックで拡張できます。
Vertex AI ADK を CData Connect AI の組み込み MCP(Model Context Protocol)サーバーと統合することで、エージェントはリアルタイムでAmazon Athena のデータをクエリ、分析、操作できるようになります。 この接続により、Google のエージェント構築フレームワークと CData Connect AI のガバナンスされたエンタープライズ接続が橋渡しされ、すべてのリクエストが手動のデータ移動なしに認可されたデータソースに対してセキュアに実行されます。
この記事では、Connect AI で Amazon Athena 接続を設定し、必要な認証トークンを生成し、Vertex AI ADK 環境を設定し、エージェントが CData MCP サーバーを通じてリアルタイムのAmazon Athena のデータと正常に通信できることを確認する手順を説明します。
Amazon Athena データ連携について
CData は、Amazon Athena のライブデータにアクセスし、統合するための最も簡単な方法を提供します。お客様は CData の接続機能を以下の目的で使用しています:
- IAM 認証情報、アクセスキー、インスタンスプロファイルなど、さまざまな方法で安全に認証できます。多様なセキュリティニーズに対応し、認証プロセスを簡素化します。
- 詳細なエラーメッセージにより、セットアップを効率化し、問題を迅速に解決できます。
- サーバーサイドでのクエリ実行により、パフォーマンスを向上させ、クライアントリソースへの負荷を最小限に抑えます。
ユーザーは、Tableau、Power BI、Excel などの分析ツールと Athena を統合し、お気に入りのツールから詳細な分析を行うことができます。
CData を使用した Amazon Athena のユニークなユースケースについては、ブログ記事をご覧ください:https://jp.cdata.com/blog/amazon-athena-use-cases
はじめに
ステップ1:Vertex AI 用の Amazon Athena 接続を設定
Vertex AI から Amazon Athena への接続は、CData Connect AI のリモート MCP サーバーを通じて実現できます。Vertex AI からAmazon Athena のデータを操作するには、まず CData Connect AI で Amazon Athena 接続を作成・設定します。
- Connect AI にログインして「Sources」をクリック、次に「 Add Connection」をクリック
- 接続を追加パネルから「Amazon Athena」を選択
-
Amazon Athena に接続するために必要な認証プロパティを入力します。
Amazon Athena 接続プロパティの取得・設定方法
それでは、早速Athena に接続していきましょう。
データに接続するには、以下の接続パラメータを指定します。
- DataSource:接続するAmazon Athena データソース。
- Database:接続するAmazon Athena データベース。
- AWSRegion:Amazon Athena データがホストされているリージョン。
- S3StagingDirectory:クエリの結果を保存するS3 フォルダ。
Database またはDataSource が設定されていない場合、CData 製品はAmazon Athena の利用可能なデータソースからすべてのデータベースのリスト化を試みます。そのため、両方のプロパティを設定することでCData 製品のパフォーマンスが向上します。
Amazon Athena の認証設定
CData 製品は幅広い認証オプションに対応しています。詳しくはヘルプドキュメントの「はじめに」を参照してみてください。
AWS キーを取得
IAM ユーザーの認証情報を取得するには、以下のステップお試しください。
- IAM コンソールにサインインします。
- ナビゲーションペインでユーザーを選択します。
- ユーザーのアクセスキーを作成または管理するには、ユーザーを選択してからセキュリティ認証情報タブに移動します。
AWS ルートアカウントの資格情報を取得するには、以下のステップをお試しください。
- ルートアカウントの認証情報を使用してAWS 管理コンソールにサインインします。
- アカウント名または番号を選択します。
- 表示されたメニューでMy Security Credentials を選択します。
- ルートアカウントのアクセスキーを管理または作成するには、Continue to Security Credentials をクリックし、[Access Keys]セクションを展開します。
その他の認証オプションについては、ヘルプドキュメントの「Amazon Athena への認証」を参照してください。
- 「Save & Test」をクリック
- 「Permissions」タブに移動し、ユーザーベースの権限を更新します
パーソナルアクセストークンの追加
パーソナルアクセストークン(PAT)は、Vertex AI から Connect AI への接続を認証するために使用されます。アクセスを細かく管理するため、統合ごとに個別の PAT を作成することをお勧めします。
- Connect AI アプリの右上にある歯車アイコン()をクリックして設定を開きます
- 設定ページで「Access Tokens」セクションに移動し、「 Create PAT」をクリックします
- PAT にわかりやすい名前を付けて「Create」をクリックします
- トークンが表示されたらコピーして安全に保管します。再度表示されることはありません
Amazon Athena 接続が設定され PAT が生成されたので、Vertex AI は CData MCP サーバーを通じてAmazon Athena のデータに接続できるようになりました。
ステップ2:必要な依存関係をインストール
Vertex AI ADK が Gemini モデルを実行し、エージェント環境を構築し、Google Cloud プロジェクト内のサポートサービスにアクセスできるように、必要な Google Cloud API を有効にします。これらの API は、開発と実行時に ADK が依存するバックエンド機能を提供します。
- Google Cloud Console にアクセスします
- ページ上部の「Project Picker」をクリックし、「New Project」を選択します
- プロジェクトを作成し、「Project ID」をメモします。この ID は後で環境設定で使用します
- 左側のナビゲーションメニューから「APIs & Services」を開き、「Enabled APIs & Services」を選択します
- 「 Enable Apis and services」をクリックします
- 以下の API を有効にします:
- Vertex AI API
- Cloud Build API
- Artifact Registry API
- Service Networking API
- Cloud Logging API
これらのサービスを有効にすると、Google Cloud プロジェクトで Vertex AI ADK の開発とローカルツール実行の準備が整います。
Vertex AI ADK プロジェクトフォルダの準備
プロジェクトディレクトリを作成し、Python 環境をセットアップします。このステップにより、ADK が正しくインストールされ、依存関係の競合なしにエージェントをロードできるクリーンなワークスペースが準備されます。
- Google Cloud Console を開き、Cloud Shell を選択します。プロジェクトピッカーから作成したプロジェクトが選択されていることを確認してください。
- ADK プロジェクトディレクトリを作成します:
- Python 仮想環境を作成してアクティベートします:
- 必要な ADK および MCP パッケージをインストールします:
mkdir -p ~/adk_agents/cdata_mcp_agent cd ~/adk_agents/cdata_mcp_agent
python3 -m venv .venv source .venv/bin/activate
python -m pip install --upgrade pip python -m pip install google-adk python -m pip install mcp python -m pip install --upgrade "google-cloud-aiplatform[agent_engines]"
ステップ3:ADK エージェントファイルを作成
ADK がエージェントを認識できるようにエージェントモジュールを定義します。この構造により、Vertex AI が MCP 設定をロードし、CData MCP サーバーが公開するツールを登録できます。
- agent.py ファイルを作成し、以下のコードを貼り付けます
- もう1つのファイル __int__.py を作成し、以下のコードを貼り付けます
import os
import base64
import logging
from google.adk.agents import LlmAgent
from google.adk.tools.mcp_tool.mcp_toolset import MCPToolset
from google.adk.tools.mcp_tool.mcp_session_manager import StreamableHTTPConnectionParams
# ---------- Logging ----------
logging.basicConfig(level=logging.INFO)
logger = logging.getLogger(__name__)
# ---------- CData MCP config ----------
CDATA_MCP_URL = os.environ.get("CDATA_MCP_URL", "https://mcp.cloud.cdata.com/mcp")
CDATA_USER_ID = os.environ.get("CDATA_USER_ID")
CDATA_PAT = os.environ.get("CDATA_PAT")
tools = []
if not (CDATA_USER_ID and CDATA_PAT):
logger.warning(
"CData MCP credentials not set (CDATA_USER_ID or CDATA_PAT missing); "
"starting agent WITHOUT MCP tools."
)
else:
# Basic auth header: base64("user:pat")
basic_auth_bytes = f"{CDATA_USER_ID}:{CDATA_PAT}".encode("utf-8")
basic_auth_header = base64.b64encode(basic_auth_bytes).decode("utf-8")
try:
logger.info("Initializing CData MCPToolset against %s", CDATA_MCP_URL)
tools.append(
MCPToolset(
connection_params=StreamableHTTPConnectionParams(
url=CDATA_MCP_URL,
headers={
"Authorization": f"Basic {basic_auth_header}",
# ADK handles content-type etc. internally;
# we just pass auth headers.
},
),
)
)
logger.info("CData MCPToolset initialized successfully.")
except Exception as e:
logger.exception("Failed to initialize CData MCPToolset")
# ---------- Root agent ----------
root_agent = LlmAgent(
model="gemini-2.0-flash",
name="cdata_mcp_agent",
instruction=(
"You are a data assistant. Use the CData MCP tools (if available) to "
"list connections, list catalogs/schemas/tables, and run SQL-style queries."
),
tools=tools,
)
from .agent import root_agent __all__ = ["root_agent"]
環境変数のエクスポート
Connect AI に認証するために必要な環境変数をエクスポートします。これらの値により、エージェントは MCP ツールセットを初期化し、CData MCP サーバーと通信できます。その前に、ADK が Gemini モデルに認証できるように Google API キーを取得します。このキーにより、エージェントは Vertex AI ADK 環境内で LLM 推論を実行し、ツールコールを正しくルーティングできます。
- Google AI Studio API Key ページにアクセスします
- 「Create API Key」をクリックします。API キーに名前を付け、プロジェクトがない場合は選択または作成します
- 「Create a key」をクリックし、API キーをコピーします
- Google Cloud Shell ページに戻り、環境変数のエクスポートを実行します。「your_cdata_email」、「your_pat」、「your-project-id」、「your_google_api_key」を実際の値に置き換えてください
export CDATA_MCP_URL="https://mcp.cloud.cdata.com/mcp" export CDATA_USER_ID="your_cdata_email" export CDATA_PAT="your_pat" export GOOGLE_API_KEY="your_google_api_key" export VERTEXAI_PROJECT="your-project-id" export VERTEXAI_LOCATION="us-central1"
ステップ4:ADK Web インターフェースを起動
ADK Web インターフェースを起動してエージェントをロードします。インターフェースはランタイムを初期化し、MCP 対応エージェントをインタラクティブテスト用に利用可能にします。
- 親フォルダに移動します:
- ADK Web を起動します:
cd ~/adk_agents
adk web .
ステップ5:エージェントを選択して MCP 接続をテスト
ADK Web インターフェースからエージェントを選択します。ADK は MCP ツールをロードし、リアルタイムの MCP クエリを実行できるように環境を準備します。
- ブラウザタブから ADK Web UI を開きます
- エージェントのドロップダウンから「cdata_mcp_agent」を選択します
- チャットパネルに「list catalogs」と入力します。ADK は Connect AI 接続のリアルタイムリストを返します
これで、Vertex AI ADK エージェントは CData Connect AI MCP サーバーと通信し、リモート MCP ツールを通じてリアルタイムのAmazon Athena のデータメタデータを取得できるようになりました。
CData Connect AI を入手
300 以上の SaaS、ビッグデータ、NoSQL ソースへのリアルタイムデータアクセスをクラウドアプリケーションから直接取得するには、CData Connect AI を今すぐお試しください!