本文档提供了一种高层级架构,用于构建无边界开放式数据湖仓一体,从而建立从原始无边界孤岛直接到 AI 驱动型操作的高度受治理的安全流水线。它展示了如何统一 Google Cloud、其他云服务商和实时运营数据库中的碎片化企业数据,而无需依赖可能导致数据重复的脆弱提取、转换和加载 (ETL) 流水线。
本文档的目标受众群体包括需要设计使用开放标准的高性能联合系统的数据工程师、数据架构师和 AI 开发者。目标受众群体可能还需要应对企业限制,例如无边界网络路由以及严格的身份和访问权限管理隔离。
本文档的部署部分提供了一个代码示例,可帮助您构建和部署本文档中所述的架构。
架构
下图展示了 Google Cloud中具有中央湖仓一体的无边界架构。
上图中的架构由两个子系统组成:数据注入和服务。
- 数据注入子系统从外部来源注入数据。它使用中央湖仓一体架构,将分散的数据库统一并处理为 Google Cloud中的统一客户画像。
- 服务子系统可让用户查询 AI 助理和数据分析智能体,以分析整合后的数据。
以下部分介绍了各个子系统中的组件。
数据注入子系统
数据注入子系统包含以下组件:
- Managed Service for Apache Spark(搭配 Lightning Engine)
-
一项提供分布式处理引擎的服务,可处理复杂的分析工作负载,例如大规模、无边界的数据联接和转换。为了最大限度地提高计算效率,Managed Service for Apache Spark 使用 Lightning Engine 来处理合并无边界数据源所需的大规模多路联接、复杂窗口化和行为聚合。
Managed Service for Apache Spark 使用 Lightning Engine 通过从以下路径注入数据来执行分布式联接:
- 来自 Amazon S3 的 Parquet 文件。
- Cloud Storage 事件日志。
- 通过 BigQuery 连接 从 AlloyDB for PostgreSQL 获取实时事务数据。
- 外部数据源
-
位于其他云环境中的企业数据资产。在本文档介绍的架构中,外部数据源如下:
- Databricks Unity Catalog:一个外部目录,用于管理开放格式 Apache Iceberg 表的元数据。
- Amazon S3:一种外部对象存储区服务,用于以 Apache Parquet 格式存储 Iceberg 表的原始数据文件。
连接到外部数据源后,您可以就地分析数据,而无需进行昂贵且耗时的数据迁移。虽然此示例架构使用 Databricks Unity Catalog 和 Amazon S3 存储桶,但您可以将此架构模式与其他外部 Iceberg 目录服务和云端存储空间提供商搭配使用。
- AlloyDB
- 适用于混合事务和分析处理 (HTAP) 的高性能数据库,例如管理实时库存或实时客户资料。借助 BigQuery AlloyDB 联合,分析引擎可以直接从 BigQuery 向存储在 AlloyDB 中的实时事务数据发送查询。此方法有助于避免与变更数据捕获 (CDC) 流水线相关的延迟时间和开销。
- Cloud Storage
- 一种可伸缩的对象存储服务,适用于高吞吐量数据,例如点击流事件。为确保各种处理引擎都能访问数据,请使用 Cloud Storage 将数据与特定计算服务解耦,并以开放的 Apache Iceberg 格式(例如 Apache Parquet)存储数据。
- 无边界 Lakehouse
-
中央元数据和治理系统,可实现统一的无边界联合。为了建立与 Lakehouse 元数据的连接,Lakehouse 会执行以下操作:
- 连接到 Databricks Unity Catalog,以解析无边界数据的架构和路由信息。
- 向 Secret Manager 发送请求以验证凭证:
- 如果凭据获得批准,则建立与 Lakehouse 元数据的直接连接。
- 如果凭据被拒绝,则返回出错提示并中止操作。
- Cloud NAT 和 Cloud Router
- 托管式服务,可让 Google Cloud网络中的资源安全地访问来自外部云来源的数据,而无需向公共互联网公开这些资源。
- Virtual Private Cloud (VPC)
- 一项服务,可为作为此架构的一部分部署的所有 Google Cloud 资源提供私密、安全、隔离的网络。
- Secret Manager
- 一项服务,可安全地存储 Databricks 服务主体凭据(例如客户端 ID 和密钥),以实现无边界身份验证。
服务子系统
服务子系统包含以下组件:
- 统一的客户资料
- 一个 BigQuery 数据库,用于整合分布式 Spark 作业的输出。BigQuery 表会将碎片化的无边界指标转换为复杂的反规范化数据类型,并充当中央、受管控的数据存储区以供分析。
- BigQuery 数据代理
- 一个对话式分析智能体,可让用户直接在 BigQuery 中查询数据并生成企业数据洞见。智能体会对查询强制执行安全和治理保护措施。
- BigQuery MCP 服务器
- 一个 Google 管理的模型上下文协议 (MCP) 服务器,用于提供对 BigQuery 数据的访问权限。BigQuery MCP 服务器可安全地向本地或外部 AI 模型(例如 Gemini CLI)公开受治理的 Lakehouse 上下文。它支持端到端 Agentic Workflows,而无需 AI 工程师构建和维护自定义 REST API 中间件。
- Gemini CLI
- 一个命令行 AI 助理,可让用户与统一客户资料进行交互,以生成个性化的数据驱动型内容,例如个性化营销活动。Gemini CLI 充当 BigQuery MCP 服务器的客户端,用于访问存储在统一客户资料中的数据。
使用的产品
此示例架构使用以下 Google Cloud 产品和工具:
- Lakehouse:一种高性能存储引擎,可让您构建开放数据湖仓一体架构,并为高级分析和 AI 提供统一的界面。
- BigQuery:一种企业数据仓库,可帮助您使用机器学习、地理空间分析和商业智能等内置功能管理和分析数据。
- AlloyDB for PostgreSQL:与 PostgreSQL 兼容的全托管式数据库服务,专为要求苛刻的工作负载(包括混合事务和分析处理)而设计。
- Managed Service for Apache Spark:一项代管式服务,可在托管式计算基础设施上运行 Apache Spark 批量工作负载。
- Cloud Storage:适用于各种数据类型的费用低廉且不受限制的对象存储区。数据可从 Google Cloud内部和外部访问,并且跨位置进行复制以实现冗余。
- Gemini:Google 开发的一系列多模态 AI 模型。
- Google Cloud MCP 服务器:由 Google 管理的远程服务,这些服务实现了 Model Context Protocol (MCP),可让 AI 应用访问 Google 和 Google Cloud 产品和服务。
- Cloud NAT:一种提供 Google Cloud管理的高性能网络地址转换的服务。
- Cloud Router:一项分布式全托管式服务,可提供边界网关协议 (BGP) 发言者和响应者功能。Cloud Router 可与 Cloud Interconnect、Cloud VPN 和路由器设备配合使用,根据 BGP 收到的路由和自定义已知路由在 VPC 网络中创建动态路由。
- Virtual Private Cloud (VPC):为您的 Google Cloud 工作负载提供全球可扩缩的网络功能的虚拟系统。VPC 包括 VPC 网络对等互连、Private Service Connect、专用服务访问通道和共享 VPC。
此示例架构使用以下第三方产品:
- Databricks Unity Catalog:Databricks 平台上数据和 AI 资产的统一治理和元数据目录。
- Amazon S3:Amazon Web Services (AWS) 提供的一项存储服务,可将数据作为对象进行存储和管理。
使用场景
此参考架构专为需要统一来自多个云环境和本地系统的孤立数据以推动分析和 AI 计划的组织而设计。此架构具有以下优势:
- 无边界的统一画像:提供单一、全面的商业实体视图,让分析师和决策者获得全面的数据洞见。这种统一视图可提高分析的准确性,并有助于确保数据一致且最新,无论数据存储在何处。
- 降低运营复杂性和总拥有成本 (TCO):Lakehouse 有助于避免构建和维护脆弱的数据流水线。通过此方法,您可以直接在不同云端的数据存储位置查询数据。它避免了与物理数据移动相关的运维开销、存储费用和延迟时间。
- 智能体 AI 工作流:AI 智能体可帮助数据分析师将复杂的行为汇总直接转化为切实可行的业务策略。智能体让分析师能够通过标准协议安全地访问结构化、受治理的湖仓一体数据。
以下是本文档中所述架构的用例示例:
- 实时零售分析:一家零售公司需要根据销售和库存情况立即做出决策。借助此架构,他们可以将 AWS 中管理的静态商品清单数据与 Google Cloud上运营 AlloyDB 数据库中的实时销售交易数据相结合。分析师和商店经理可以按预定义的批处理间隔查询此统一视图,以监控销售业绩、识别热销商品以便补货,或分析新出现的区域购买模式。
- 客户个性化:一家金融服务公司希望为其客户经理提供完整且统一的客户视图。该公司可以使用此架构,将 AWS 数据湖中的历史营销互动数据与 AlloyDB 中的实时客户账号信息进行统一。然后,客户经理可以使用 AI 助理提出问题,例如“总结此客户的最后三笔交易,并起草一封个性化电子邮件,建议开设新的高收益储蓄账户”。
设计考虑事项
本部分介绍了一些设计因素、最佳实践和建议,您在使用此参考架构开发满足特定安全性和费用要求的拓扑时应考虑这些内容。
本部分中的指导并非详尽无遗。如需详细了解设计因素和最佳实践,以及有关构建和部署多智能体 AI 系统的建议,请参阅 Google Cloud中的多智能体 AI 系统。
安全性、隐私权和合规性
为了帮助强制执行最小权限原则,请通过系统管理的身份管理访问权限。请考虑以下建议:
- 如需为 Google Cloud 资源创建和管理权限,请使用 Google 的 Identity and Access Management (IAM) 服务。
- 如需安全地访问 Cloud Storage 中的原始数据,请使用 BigQuery Cloud 资源连接。
- 如需安全地对跨云 Databricks 连接进行身份验证,请将 Lakehouse 目录联合与 Secret Manager 搭配使用。
智能体安全和治理
为了帮助应对 AI 智能体的独特安全风险,Google 建议采用一种方法,将确定性安全控制与基于推理的动态防御相结合:
- 人工监督:在业务关键型系统中纳入人机协同流程,以便人工监督员可以审核输出并批准、覆盖或暂停智能体操作。
- Agent Identity:为每个智能体分配一个与工作负载绑定的身份,以强制执行最小权限访问权限控制,并集中管理外部工具的凭证。
- Agent Gateway:通过 Model Armor 强制执行入站和出站流量治理、默认拒绝访问政策以及内嵌提示和工具检查。
- Agent Registry:验证智能体是否仅连接到已获批准的子智能体和 MCP 工具。
成本与性能优化
为确保代理配置满足您的费用和性能要求,请考虑以下建议:
- 计算选择:为了优化性能和费用,请选择最适合工作负载各部分的计算服务。现代数据湖仓一体不依赖于单体式计算服务。如需对操作数据库执行精确匹配过滤,请使用 BigQuery 联合查询。如需分流内存密集型和复杂的数据操作(例如矢量化无边界联接),请使用 Managed Service for Apache Spark(搭配 Lightning Engine)。
- AI 模型接地:为了缓解 AI 模型幻觉,请将模型接地到统一客户资料,以强制执行业务定义和统计验证。如果您向 AI 模型提供数十亿行未经汇总的原始无边界数据,可能会导致令牌消耗过多和幻觉率过高。
- 网络拓扑和出站流量策略:为帮助确保可靠的性能并最大限度地降低无边界网络上的数据传输费用,请使用 Cross-Cloud Interconnect 在 Google Cloud 和 AWS 之间建立专用连接。否则,通过公共互联网从 Google Cloud 到 AWS 的数据查询可能会产生高昂的出站流量费用和不可预测的延迟时间。
部署
如需部署此架构,请参阅构建无边界开放数据湖仓 Codelab。此示例实现可帮助您预配特定的网络基础设施、执行 C++ PySpark 工作流,以及配置 AI 智能体以安全地与 Lakehouse 交互。
后续步骤
- 了解如何将 Lakehouse 运行时目录与 BigQuery 中的表搭配使用。
- 了解如何使用 Lightning Engine 加速 Spark。
- 了解如何通过对话分析数据。
- 如需简要了解 Google Cloud中特定于 AI 和机器学习工作负载的架构原则和建议,请参阅 Well-Architected Framework 中的 AI 和机器学习视角。
- 如需查看更多参考架构、图表和最佳实践,请浏览 Cloud 架构中心。
贡献者
作者:Hyunuk Lim | 开发技术推广工程师
其他贡献者:
- Brad Miro | 高级开发技术推广工程师
- Samantha He | 技术文档工程师