构建具有多数据库持久性的智能电子商务目录

1. 简介

在现代零售业中,数据是一个庞大而多样化的生态系统。您拥有坚实的交易数据(价格和库存)、“杂乱”的多态目录(电子产品规格与服装尺码)以及数 PB 的行为日志。如果强行将这些功能塞进一个庞大的单体应用中,不仅会产生技术债务,还会严重损害用户体验。

在此 Codelab 中,您将构建一个多语言强力引擎,它将协调:

“秘诀”是什么?您将使用 MCP Toolbox for Databases 智能地编排和统一在 Cloud Run 上运行的数据源,将其作为语义桥梁,然后使用智能体开发套件 (ADK) 部署多智能体聊天应用。您不仅是在构建搜索栏,更是在构建一个智能零售大脑,它能够理解上下文、遵循约束条件,并弥合原始数据与人类意图之间的差距。

不可能的用户查询

标准电商智能体无法进行多维度推理(结合负面限制条件、视觉相似度和实时库存)。例如,我通常会这样与零售网站对话:

“嗨,我正在规划一次高海拔摄影之旅。给我看一些防水背包,款式与“AeroGlow Pro”类似,但不含任何皮革成分。另外,请告诉我这些相机包是否真的有货,以及是否有其他摄影师在评价中抱怨过肩带的耐用性。”

为什么此查询是“智能体杀手”:

  • 视觉相似度(AlloyDB + Vector Search):“与 AeroGlow Pro 风格相似”需要进行图片嵌入比较。
  • 否定约束条件 (MongoDB):“不含任何皮革”需要通过灵活的嵌套属性进行过滤,而这些属性通常不在标准 SQL 架构中。
  • 实时库存 (AlloyDB):“实际有货”需要进行实时事务检查(而不是过时的搜索索引)。
  • 语义合成(BigQuery + 多智能体):分析“表带耐用性”评价时,智能体需要实时总结 BigQuery 中的非结构化反馈。

大多数零售机器人只会看到“背包”和“皮革”,并显示 10 个皮革背包。我们如何阻止这种情况?

因为我们不仅仅是匹配关键字。我们使用 MCP Toolbox,让智能体能够同时在所有这些来源(AlloyDB 中的事务性真实数据和 MongoDB 中的灵活属性)中进行“推理”。让我们开始构建吧!

您将执行的操作

电子商务多数据库架构

前提条件

2. 准备工作

创建 Google Cloud 项目

  1. 在 Google Cloud 控制台的项目选择器页面上,选择或创建一个 Google Cloud 项目。
  2. 确保您的 Cloud 项目已启用结算功能。了解如何检查项目是否已启用结算功能。

启动 Cloud Shell

Cloud Shell 是在 Google Cloud 中运行的一个命令行环境,它预加载了必要的工具。

  1. 点击 Google Cloud 控制台顶部的激活 Cloud Shell。
  2. 连接到 Cloud Shell 后,验证您的身份:
    gcloud auth list
    
  3. 确认您的项目已配置:
    gcloud config get project
    
  4. 如果项目未按预期设置,请进行设置:
    export PROJECT_ID=<YOUR_PROJECT_ID>
    gcloud config set project $PROJECT_ID
    

设置变量

在 Cloud Shell 中,为您的项目 ID 和项目编号设置环境变量:

export PROJECT_ID=$(gcloud config get-value project)
export PROJECT_NUMBER=$(gcloud projects describe $PROJECT_ID --format="value(projectNumber)")

启用必需的 API

运行以下命令可启用所有必需的 API:

gcloud services enable \
  alloydb.googleapis.com \
  bigquery.googleapis.com \
  storage.googleapis.com \
  run.googleapis.com \
  cloudbuild.googleapis.com \
  artifactregistry.googleapis.com \
  iam.googleapis.com \
  secretmanager.googleapis.com \
  compute.googleapis.com \
  servicenetworking.googleapis.com \
  aiplatform.googleapis.com

3. 设置 Cloud Storage

Cloud Storage 可作为海量存储空间,用于存储非结构化媒体素材资源,例如商品图片。

  1. 在 Google Cloud 控制台中,前往 Cloud Storage,然后点击创建存储桶。
  2. 为您的存储桶指定全局唯一的名称,例如 -ecommerce-images。
  3. 点击创建。
  4. 如需允许演示应用在未经身份验证的情况下访问图片,请清除禁止公开访问此存储桶选项,然后点击确认。
  5. 前往权限标签页。
  6. 在权限中,点击授予访问权限。
  7. 在新主账号中,输入 allUsers。
  8. 在选择角色中,依次选择 Cloud Storage > Storage Object Viewer。
  9. 点击保存,然后点击允许公开访问,确认您要将该资源设为公开。
  10. 在 Cloud Shell 中,将存储桶名称保存在变量中:
    export BUCKET=<your-bucket-name>
    
    将 替换为您创建的存储桶的名称。

上传占位图

项目使用占位图,以提供最佳视觉体验。

  1. 在 Cloud Shell 中,克隆代码库:
    git clone https://github.com/AbiramiSukumaran/polyglot-persist-ecommerce.git
    
  2. 转到 UploadImages 文件夹:
    cd polyglot-persist-ecommerce/UploadImages
    
  3. 将示例图片上传到存储桶:
    gcloud storage cp *.jpg gs://$BUCKET/
    

4. 设置 AlloyDB

AlloyDB 是结构化、事务型和关键数据(例如商品 ID、名称、SKU、价格和库存)的单一事实来源。AlloyDB 还为 AI 智能体提供相似度搜索功能,用于推荐和自然语言查询。

预配 AlloyDB 集群

  1. 在 Google Cloud 控制台中,前往 AlloyDB for PostgreSQL。
  2. 点击创建集群。
  3. 在集群 ID 部分,输入 ecommerce-cluster。
  4. 为 postgres 用户设置安全系数高的密码。出于学习目的,您可以使用 alloydb。
  5. 对于数据库版本,保留默认值。
  6. 对于区域,选择 us-central1(或您的首选区域)。

配置主实例

  1. 在实例 ID 部分,输入 ecommerce-cluster-primary。
  2. 在可用区级可用性中,选择单个可用区。
  3. 对于机器系列,选择 N2;对于机器类型,选择 4 vCPU, 32 GB。
  4. 在专用 IP 连接中,选择专用服务访问通道 (PSA),然后选择 default 网络。如果尚未设置默认网络,请点击确认网络设置以创建一个。
  5. 在公共 IP 连接中,选中启用公共 IP 复选框,以便 MCP Toolbox 在此 Codelab 中正常连接。控制台会自动启用 password.enforce_complexity 标志,这是 AlloyDB 使用公共 IP 所必需的。
  6. 在授权外部网络中,输入 0.0.0.0/0。选中我确认已知晓风险复选框,然后点击保存。
  7. 点击创建集群。

初始化数据库

  1. 点击左侧导航菜单中的 AlloyDB Studio。
  2. 在数据库下拉菜单中,选择 postgres。
  3. 选择内置身份验证以登录数据库。
  4. 对于用户名,使用 postgres 用户。
  5. 在密码部分,输入您之前设置的密码。
  6. 点击身份验证。
  7. 在编辑器视图中,打开一个新的未命名查询标签页。
  8. 复制以下 DDL,然后点击运行:
    CREATE TABLE products_core_table (
      product_id UUID PRIMARY KEY,
      name VARCHAR(255) NOT NULL,
      sku VARCHAR(50) UNIQUE NOT NULL,
      price NUMERIC(10, 2) NOT NULL,
      stock INT NOT NULL
    );
    
  9. 在 Cloud Shell 中,前往项目根文件夹:
    cd ~/polyglot-persist-ecommerce
    
  10. 在 Cloud Shell 中打开 alloydb_insert_queries.sql 文件,然后复制插入查询。
    cat alloydb_insert_queries.sql
    
  11. 在新的未命名查询标签页中,仅粘贴 INSERT 语句,然后点击运行。
  12. 在新的未命名查询标签页中,复制以下 DDL,然后点击运行,在 products_core_table 表上创建索引:
    CREATE INDEX idx_products_core_sku ON products_core_table(sku);
    

为 AI 智能体创建图片嵌入,以便提取类似商品

AI 智能体集成使用图片嵌入来提取相似商品。嵌入是使用 multimodalembedding@001 模型生成的,并存储在 AlloyDB 数据库中。嵌入是 1408 维向量,存储在 img_embeddings 列中。

在生成嵌入之前,我们必须向 AlloyDB 服务账号授予访问 Cloud Storage 所需的角色。

向 AlloyDB 服务账号授予访问 Cloud Storage 的角色

向 AlloyDB 服务账号授予从 Cloud Storage 读取图片和生成 Vertex AI 嵌入所需的角色:

for role in roles/storage.objectUser roles/storage.objectViewer roles/aiplatform.user; do
  gcloud projects add-iam-policy-binding $PROJECT_ID \
    --member="serviceAccount:service-${PROJECT_NUMBER}@gcp-sa-alloydb.iam.gserviceaccount.com" \
    --role=$role --condition=None
done

启用扩展程序

为了构建此应用,我们将使用扩展程序 pgvector 和 google_ml_integration。借助 pgvector 扩展程序,您可以存储和搜索向量嵌入。google_ml_integration 扩展程序提供了一些函数,可用于访问 Vertex AI 预测端点,以便在 SQL 中获取预测结果。通过运行以下 DDL 启用这些扩展程序:

  1. 在 Google Cloud 控制台中,前往 AlloyDB for PostgreSQL。
  2. 点击左侧导航菜单中的 AlloyDB Studio。
  3. 在编辑器视图中,打开一个新的未命名查询标签页。
  4. 复制以下 DDL,然后点击运行:
    CREATE EXTENSION IF NOT EXISTS vector;
    CREATE EXTENSION IF NOT EXISTS google_ml_integration;
    

使用嵌入初始化数据库

  1. 将 img_embeddings 列添加到 products_core_table。
    ALTER TABLE products_core_table
    ADD COLUMN img_embeddings vector(1408);
    
  2. 输出嵌入查询,并填入您的存储桶名称:
    cd ~/polyglot-persist-ecommerce
    sed "s/<STORAGE_BUCKET_NAME>/$BUCKET/g" alloydb_generate_embeddings.sql
    
  3. 复制输出,将其粘贴到新的 AlloyDB Studio 查询标签页中,然后点击运行。此过程大约需要 1 分钟。如果超时,请再次运行;系统会跳过已有嵌入的商品。

5. 在 Google Cloud 上设置 MongoDB Atlas

MongoDB 存储丰富的半结构化商品详情和灵活的用户行为数据(例如点击和浏览)。

创建 MongoDB 集群

  1. 登录 MongoDB Atlas(如有需要,请创建一个免费账号)。
  2. 在部署集群页面上,选择免费。(Atlas 会预先选择付费层级;请确保选择“免费”层级。)
  3. 在提供商部分,选择 Google Cloud;在区域部分,选择爱荷华 (us-central1)。
  4. 在名称部分,输入 ecommerce-cluster,然后清除预加载示例数据集。
  5. 点击创建部署。

允许访问并创建数据库用户

Atlas 会打开连接到 ecommerce-cluster 对话框。

  1. 点击添加其他 IP 地址,输入 0.0.0.0/0,然后添加。
  2. 在用户名中输入 store-user,在密码中输入 storeuser,然后点击创建数据库用户。
  3. 点击选择连接方法,然后点击驱动程序和客户端库。
  4. 在在应用中使用此连接字符串下,复制连接字符串。该路径类似于 mongodb+srv://store-user:@ecommerce-cluster.xxxxx.mongodb.net/。将 替换为 storeuser 并保存该字符串;您将在 tools.yaml 中使用它。

创建数据库和集合

  1. 在左侧导航栏中,点击数据探索器,然后点击创建数据库并输入详细信息:
    • 数据库名称: ecommerce_db
    • 合集名称: product_details_collection
  2. 点击创建数据库。
  3. 在数据资源管理器中,选择集合名称。
  4. 点击添加数据 (+) 图标,然后点击插入文档。
  5. 复制 product_details_export.json 中的 JSON 内容,并将其粘贴到插入文档编辑器对话框中。
  6. Atlas 会显示一个横幅,提示将文本转换为 shell 语法。点击转换,然后点击插入。验证是否已添加 192 个文档。
  7. 在数据浏览器中,点击 ecommerce_db 数据库旁边的创建集合 (+)。
  8. 输入 user_interactions_collection 作为集合名称,然后点击创建集合。
  9. 在数据资源管理器中,选择 user_interactions_collection 集合。
  10. 点击添加数据 (+) 图标,然后点击插入文档。
  11. 从 user_interactions_export.json 中复制 JSON 内容,并将其粘贴到插入文档编辑器对话框中。
  12. Atlas 会显示一个横幅,提示将文本转换为 shell 语法。点击转换,然后点击插入。验证是否已添加 211 个文档。

6. 设置 BigQuery

BigQuery 会汇总并分析历史用户行为,以生成智能报告和建议。

创建数据集

  1. 在 Google Cloud 控制台中,前往 BigQuery。
  2. 在“探索器”窗格中,点击项目 ID 旁边的三点状菜单,然后选择创建数据集。
  3. 在数据集 ID 部分输入 ecommerce_analytics。
  4. 在数据位置中选择 US (multiple regions)(tools.yaml 配置需要位置 US)。
  5. 点击创建数据集。

创建 Analytics 表

  1. 在 BigQuery 工作区中打开一个新查询。
  2. 运行以下 SQL 语句,创建将用户与商品互动关联起来的摘要表:
CREATE TABLE ecommerce_analytics.user_product_interactions (
    user_id STRING DEFAULT 'any user',
    product_id STRING,
    interaction_score INT
);

向 Compute 服务账号授予角色

向默认 Compute 服务账号授予 MCP Toolbox 和应用所需的角色:

for role in \
  roles/bigquery.dataEditor \
  roles/bigquery.jobUser \
  roles/secretmanager.secretAccessor \
  roles/alloydb.client \
  roles/serviceusage.serviceUsageConsumer \
  roles/storage.objectViewer \
  roles/aiplatform.user \
  roles/artifactregistry.writer; do
  gcloud projects add-iam-policy-binding $PROJECT_ID \
    --member="serviceAccount:${PROJECT_NUMBER}-compute@developer.gserviceaccount.com" \
    --role="$role" \
    --condition=None
done

或者,在控制台中,前往 IAM 和管理 > IAM,点击授予访问权限,输入服务账号,然后添加相同的角色。

7. 全面了解应用

为了了解各个组件如何协同工作,我们将创建一个使用多个数据库和服务的电子商务应用。该应用使用 Python (Flask) 后端构建,并集成了多项 Google Cloud 服务和数据库。

了解目录结构

在下一部分中,您将克隆 polyglot-persist-ecommerce 代码库,并使用它在本地运行应用。在本地测试应用后,我们会将 MCP Toolbox 和应用部署到 Cloud Run。

探索此目录中下载的文件。存在以下高级目录:

  • UploadImages:存储图片素材资源,主要用于电子商务商品清单的文档或视觉内容。
  • static:存储应用的静态 Web 资源,例如 CSS 和 JavaScript 文件,用于设置界面样式并增加互动性(来源)。
  • templates:存储 Python 应用使用的 HTML 模板(可能是 Flask 的 Jinja2),用于为电子商务目录动态呈现网页(来源)。

此代码库中的文件协同工作,用于构建、配置和部署多数据库电子商务应用。app.py 等核心文件通过整合 SQL 和 JSON 文件中定义的各种数据源来协调后端,而配置文件则确保无缝部署到云环境:

  • app.py:编排 Flask 后端和多数据库集成。
  • agentengine.py:用于初始化和配置 Vertex AI 智能体的核心逻辑。
  • .env:存储数据库和存储连接的 Secret。
  • tools.yaml:为多数据库操作配置 MCP Toolbox。
  • Dockerfile:定义容器映像和环境设置。
  • requirements.txt:列出应用运行时所需的 Python 库。
  • tools.yaml:MCP Toolbox 的配置。
  • Procfile:指定用于部署的生产执行命令。
  • alloydb_insert_queries.sql:包含关系型数据的 SQL 查询。
  • product_details_export.json 和 user_interactions_export.json:提供 NoSQL 数据库的示例 JSON 数据。
  • README.md:指导设置、部署和项目理解。

应用的端到端流程

  • AlloyDB 设置:预配高性能集群,并使用提供的 SQL 脚本创建 products_core_table,其中包含用于存储图片嵌入的向量列。
  • MongoDB Atlas 设置:在 Google Cloud 上部署一个集群,用于在 product_details 中存储灵活的商品属性,并在 user_interactions 中记录实时点击流。
  • BigQuery Analytics:创建一个数据集来汇总互动日志,从而实现复杂的分析查询,从数百万个事件中找出“前 5 个”热门商品。
  • Cloud Storage 代码库:创建一个公开存储桶来存放高分辨率商品图片,确保前端可以使用签名网址或公开网址访问每项资产。
  • MCP Toolbox 部署:将 Toolbox 部署到 Cloud Run,将其作为中央 RESTful 桥梁,将自然语言意图转换为多数据库查询。
  • Tools.yaml 配置:定义“工具”(例如 get_product_core_data 或 get_top_5_views),将特定的 SQL 和 NoSQL 操作映射到简单易懂、智能体可读的名称。
  • Flask 后端逻辑:实现与 MCP Toolbox 交互的 app.py 路由,处理数据检索的协调,并充当界面的 API。
  • 多智能体编排:在代码中配置 ADK 智能体,使其能够通过推理理解用户意图,并选择合适的“工具”来解决复杂的多来源零售查询。
  • 前端集成:构建一个 index.html 界面,其中包含商品清单(具有互动记录功能)、“分析”标签页(用于了解商品效果分析)以及专用的“智能体标签页”(使用 ADK 多智能体对话功能提供顺畅的对话式购物体验)。

现在,我们来实现编排和部署。

8. 设置 MCP Toolbox 并部署到 Cloud Run

MCP Toolbox 抽象化了我们的多个数据源,让应用能够统一提取和写入数据。

在本地安装 MCP Toolbox

将 MCP Toolbox 二进制文件下载到主目录中,并使其可执行:

export VERSION=1.15.0
curl -L -o ~/toolbox https://storage.googleapis.com/mcp-toolbox-for-databases/v$VERSION/linux/amd64/toolbox
chmod +x ~/toolbox

配置 tools.yaml

您需要为 AlloyDB、MongoDB 和 BigQuery 定义抽象。tools.yaml 文件会告知 MCP Toolbox 如何相互交互。

  1. 该代码库已包含 tools.yaml。打开:
    cd ~/polyglot-persist-ecommerce
    cloudshell edit tools.yaml
    
  2. 将 ***** 占位符替换为您的值:

    数据库

    字段

    示例值

    AlloyDB/BigQuery

    project

    YOUR_PROJECT_ID

    AlloyDB

    region

    us-central1

    AlloyDB

    cluster

    ecommerce-cluster

    AlloyDB

    instance

    ecommerce-cluster-primary

    AlloyDB

    database

    postgres

    AlloyDB

    password

    alloydb

    AlloyDB

    ipType

    public(如果 alloydb-source 下没有此行,请添加)

    MongoDB

    uri

    您之前保存的连接字符串

  3. 将图片预览指向您的存储桶:
    sed -i "s/ecommerce-app-images/$BUCKET/g" tools.yaml
    

测试工具界面

  1. 在 Cloud Shell 终端中,在本地运行 Toolbox 以提供界面:
    ~/toolbox --config tools.yaml --ui --enable-api
    
  2. 在 Cloud Shell 中,依次点击网页预览 > 更改端口,输入 5000,然后在打开的网址末尾添加 /ui。

系统会显示以下 MCP Toolbox 界面:

MCP Toolbox 界面

完成后,按 Ctrl+C 停止本地 Toolbox。

部署到 Cloud Run

将 MCP Toolbox 部署到 Cloud Run,使其成为一项安全、托管式服务,供我们的应用查询数据库。我们会将配置存储在 Secret Manager 中,以保护敏感的连接详细信息。

  1. 将 tools.yaml 配置上传到 Google Secret Manager:
    gcloud secrets create tools --data-file=tools.yaml
    
    如果您稍后更改了 tools.yaml,请使用以下命令上传新版本:
    gcloud secrets versions add tools --data-file=tools.yaml
    
  2. 使用公开 MCP Toolbox 容器映像进行部署:
    gcloud run deploy toolbox \
        --image us-central1-docker.pkg.dev/database-toolbox/toolbox/toolbox:$VERSION \
        --region us-central1 \
        --service-account ${PROJECT_NUMBER}-compute@developer.gserviceaccount.com \
        --set-secrets "/app/tools.yaml=tools:latest" \
        --args="--config=/app/tools.yaml","--address=0.0.0.0","--port=8080","--ui","--enable-api" \
        --allow-unauthenticated
    
    --enable-api 启用 Web 应用使用的 REST API。
  3. 保存 Toolbox 网址:
    export TOOLBOX_URL=$(gcloud run services describe toolbox --region us-central1 --format='value(status.url)')
    echo $TOOLBOX_URL
    
    您可以在浏览器中打开 $TOOLBOX_URL/ui 以查看这些工具。

9. 设置电子商务应用并将其部署到 Cloud Run

数据库运行且 MCP Toolbox 抽象层部署完毕后,我们就可以运行 Flask Web 应用了!

为了提供商品清单,Flask 应用会执行以下步骤来处理数据:

  1. 提取核心数据:从 AlloyDB (list_products_core) 检索完整的产品列表。
  2. 提取扩展详情:从 MongoDB (list_all_product_details) 中检索所有商品详情。
  3. 合并列表:串联两个列表。
  4. 使用媒体内容丰富:将 Cloud Storage 图片网址添加到每个商品。

创建 Agent Engine

  1. 安装依赖项:
    cd ~/polyglot-persist-ecommerce
    pip install -r requirements.txt
    
    注意:此步骤可能需要几分钟时间来解析和安装软件包。
  2. 使用 Vertex AI 推理引擎初始化并注册 AI 智能体:
    export REASONING_ENGINE_LOCATION=us-central1
    export APP_NAME=$(python agentengine.py)
    echo $APP_NAME
    
    输出将如下所示:
    projects/991742412753/locations/us-central1/reasoningEngines/4933254136889081856
    

该应用会从环境变量(您在下面的 deploy 命令中传递)中读取其设置,因此您无需修改 .env。

将前端部署到 Cloud Run

  1. 将 Web 应用部署到 Cloud Run 以完成架构:
    gcloud run deploy polyglot --source . \
      --region us-central1 \
      --allow-unauthenticated \
      --set-env-vars="MCP_TOOLBOX_SERVER_URL=$TOOLBOX_URL,GCS_PRODUCT_BUCKET=$BUCKET,FALLBACK_IMAGE_URL=https://storage.googleapis.com/$BUCKET/fallback.jpg,GOOGLE_GENAI_USE_VERTEXAI=TRUE,PROJECT_ID=$PROJECT_ID,GOOGLE_CLOUD_LOCATION=global,REASONING_ENGINE_LOCATION=$REASONING_ENGINE_LOCATION,APP_NAME=$APP_NAME,MODEL=gemini-3.5-flash"
    

您的应用现已上线!打开 Cloud Run 提供的服务网址,查看 Multidb Ecommerce 目录。网址将类似于 https://polyglot-*********-uc.a.run.app/。

10. 探索应用

  1. 点击商品清单可查看所有商品。
    产品目录
  2. 点击产品图标即可查看产品详情。您会注意到,图片来自 Cloud Storage,商品详情来自 MongoDB,商品库存来自 AlloyDB。产品详情
  3. 与商品清单互动,生成发送到 MongoDB 的模拟查看和写入操作。
  4. 点击 ETL 和分析以查看产品分析。您会注意到,商品分析数据是从 BigQuery 中提取的。
    产品 ETL 和分析
  5. 点击 AI 智能体标签页,与 AI 智能体互动。使用自然语言提出问题,例如:
    I'm planning a high-altitude photography trip.
    Show me some weather-resistant backpacks similar in style to aero glow pro
    but without any leather components. Also, let me know if they are actually in
    stock and if other photographers have complained about the strap durability
    in the reviews.
    
    AI 智能体

可以看到,搜索结果完全符合我们的要求:不含皮革成分、有货,且评价中没有关于肩带耐用性的投诉。

AI 智能体

11. 清理

为避免系统向您的 Google Cloud 账号持续收取费用,请删除在此 Codelab 期间创建的资源。

运行以下 Cloud Shell 命令:

gcloud run services delete toolbox --region us-central1 --quiet
gcloud run services delete polyglot --region us-central1 --quiet
gcloud secrets delete tools --quiet
bq rm -r -f -d $PROJECT_ID:ecommerce_analytics
gcloud storage rm --recursive gs://$BUCKET
gcloud alloydb clusters delete ecommerce-cluster --region us-central1 --force --quiet

(可选)删除 Agent Engine 实例:

curl -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  "https://us-central1-aiplatform.googleapis.com/v1/$APP_NAME?force=true"

或者,在 Google Cloud 控制台中,前往 Vertex AI > Agent Engine,然后删除实例。

(可选)如需删除整个 Google Cloud 项目及其所有资源,请运行以下命令:

gcloud projects delete $PROJECT_ID

12. 恭喜

恭喜!您已成功构建跨云 Multidb 架构。

您演示了 MCP Toolbox 如何作为架构粘合剂,用于构建现代化的专用应用。通过为每项工作匹配合适的数据库,您实现了:

  • 灵活的数据写入:MongoDB 适用于事件日志。
  • 事务一致性:AlloyDB 可确保核心完整性。
  • 高性能分析:BigQuery 助力商业智能。
  • 统一开发:一个 Python 后端,使用 MCP Toolbox 抽象化所有复杂性。

参考文档

详细了解相关的 Google Cloud 产品,并探索以下 Codelab:

如需详细了解此 Codelab 中使用的产品,请参阅: