本页面简要介绍了 Spanner Vertex AI 集成。Spanner Vertex AI 集成适用于 GoogleSQL 和 PostgreSQL 数据库。
Spanner Vertex AI 集成可帮助您访问托管在 Vertex AI,通过 GoogleSQL 和 PostgreSQL 页面。这个 有助于将机器学习预测传送功能与常规 使用 DQL/DML 查询执行的 Spanner 数据访问操作。
Spanner Vertex AI 集成的优势
与使用 Spanner Vertex AI 集成生成机器学习预测相比, Spanner 数据访问和访问 Vertex AI 的方法, 分别执行预测端点:
- 效果:
- 延迟时间更短:Spanner Vertex AI 集成直接与 Vertex AI 服务通信,从而消除了运行 Spanner 客户端的计算节点与 Vertex AI 服务之间的额外往返。
- 提升吞吐量/并行性:Spanner Vertex AI 集成运行在 Spanner 的 分布式查询处理基础架构, 可并行执行查询。
- 用户体验:
- 能够使用单一、简单、一致且熟悉的 SQL 接口,在 Spanner 级别的规模上支持数据转换和机器学习服务场景,这降低了机器学习的入门门槛,并带来了更顺畅的用户体验。
- 费用:
- Spanner Vertex AI 集成使用 Spanner 计算容量来 合并机器学习计算和 SQL 查询执行的结果, 因此无需预配额外的计算资源 Compute Engine 或 Google Kubernetes Engine)。
Spanner Vertex AI 集成如何运作?
Spanner Vertex AI 集成不托管机器学习模型,但依赖于 Vertex AI 服务 基础架构您无需使用 Vertex AI 训练模型,即可将其与 Spanner Vertex AI 集成搭配使用,但必须将其部署到 Vertex AI 端点。
如需基于 Spanner 中存储的数据来训练模型,您可以使用以下工具:
BigQuery 联合查询与 BigQuery ML 搭配使用。
Spanner Vertex AI 集成扩展了以下用于使用机器学习模型的函数:
生成机器学习预测,方法是使用 针对 Spanner 数据执行 SQL。您可以使用 Vertex AI Model Garden 中的模型,也可以使用部署到 Vertex AI 端点的模型。
生成文本嵌入以进行 LLM 翻译 转换成数字。如需详细了解嵌入,请参阅获取文本嵌入。
使用 Spanner Vertex AI 集成函数
您可以使用 Spanner Vertex AI 集成中的模型,通过 ML Predict 函数在 SQL 代码中生成预测或文本嵌入。这些函数如下:
GoogleSQL
您可以使用以下适用于 GoogleSQL 的机器学习预测函数:
您需要先使用 CREATE MODEL
DDL 语句注册模型,然后才能将其与 ML.PREDICT
函数搭配使用。
您还可以使用 SAFE.ML.PREDICT
返回 null
,而不是
您的预测。在运行大型查询且可以容忍一些失败预测的情况下,这会非常有用。
PostgreSQL
您可以使用以下适用于 PostgreSQL 的机器学习预测函数:
要使用这些函数 您可以从 Vertex AI Model Garden 或使用已部署到 Vertex AI 的模型。
如需详细了解如何将模型部署到端点 请参阅 将模型部署到端点。
更多信息 如何使用这些函数生成机器学习预测, 请参阅使用 SQL 生成机器学习预测。
如需详细了解如何使用这些函数生成文本嵌入, 请参阅获取文本嵌入。
价格
将 Spanner 与 Spanner Vertex AI 集成结合使用时,不会产生额外费用。 不过,使用此功能可能会产生其他相关费用:
您需要按标准费率支付 Vertex AI 费用 。总费用取决于您使用的模型类型。某个型号 具有固定的每小时费率,具体取决于机器类型和 使用的节点。某些模型类型具有每次调用费率。我们建议您 将后者部署到已设置显式预测的专用项目中 配额。
您需要按标准费率支付数据传输费用 Spanner 与 Vertex AI 之间的连接。总费用取决于 执行查询的服务器所在的区域和托管 称为端点。为了最大限度地降低费用,请部署 Vertex AI 端点 与 Spanner 实例位于同一区域中。使用多区域位置时 实例配置或多个 Vertex AI 端点, 同一大洲上的端点。
服务等级协议
由于 Vertex AI 在线预测可用性 您必须正确配置 Spanner 机器学习模型 Spanner 的高可用性(在使用 Spanner Vertex AI 集成时):
- Spanner 机器学习模型必须使用多个 Vertex AI 端点以启用故障切换。
- Vertex AI 端点必须符合 Vertex AI 服务等级协议 (SLA) 的要求。
- Vertex AI 端点必须预配足够的容量来 流量
- Vertex AI 端点必须使用靠近 Spanner 数据库以避免区域级服务中断。
- Vertex AI 端点应使用单独的项目,以避免 每个项目的预测配额存在的问题。
冗余 Vertex AI 端点的数量取决于其服务等级协议 (SLA) 和 Spanner 查询中的行数:
Spanner 服务等级协议 (SLA) | Vertex AI 服务等级协议 (SLA) | 1 行 | 10 行 | 100 行 | 1000 行 |
---|---|---|---|---|---|
99.99% | 99.9% | 2 | 2 | 2 | 3 |
99.99% | 99.5% | 2 | 3 | 3 | 4 |
99.999% | 99.9% | 2 | 2 | 3 | 3 |
99.999% | 99.5% | 3 | 3 | 4 | 4 |
Vertex AI 端点不需要托管完全相同的模型。我们建议您将 Spanner ML 模型配置为将复杂且计算密集的主要模型作为其第一个端点。后续故障切换 端点可以指向计算密集型程度较低的简化模型, 可以更好地扩缩,并且能够消化流量高峰。
合规性
Assured Workloads 不支持 Vertex AI Prediction API。启用 限制资源用量限制条件 停用 Vertex AI API,实际上是 Spanner Vertex AI 集成功能。
此外,我们建议您创建一个 VPC Service Controls 边界,以确保您的 生产 Vertex AI 中的生产数据库无法连接到 非生产项目。