Spanner 与 Spanner Omni 之间的区别

本文档介绍了基于云的全托管式 Spanner 服务与可自行管理的下载版 Spanner Omni 数据库之间的主要区别。

虽然这两款产品共享相同的分布式数据库引擎,但在部署、扩缩、保护和管理方面有所不同。

核心区别和管理模式

下表比较了这两款产品的许可、环境和服务等级协议 (SLA)。

管理模式和环境差异
功能 Spanner Spanner Omni
管理模式

Google Cloud 全面管理该服务。Google 负责处理部署、修补、备份和维护。

您管理数据库。您负责安装、修补、备份和维护硬件和软件。如需了解详情,请参阅 Spanner Omni 概览。

部署环境

仅在 Google Cloud 基础架构内运行。

可在您自己的硬件上运行,包括本地数据中心、其他云服务提供商和笔记本电脑。如需了解详情,请参阅系统要求。

安装

您以服务的形式访问数据库。您无需安装任何软件。

您必须下载并安装二进制文件或容器映像。

更新和升级

Google 会自动应用更新和升级,无需停机。

您可以手动应用更新和补丁,而横向扩容部署不会停机。如需了解详情,请参阅维护部署。

服务等级协议 (SLA)

Google Cloud 服务等级协议 (SLA)。如需了解详情,请参阅 Spanner SLA 页面。

Spanner Omni 没有服务等级协议 (SLA)。可用性取决于您的基础架构和配置。

价格

Google 会根据计算资源容量(节点或处理单元)、数据库存储空间、备份存储空间、复制、Data Boost 和网络出站流量计费。如需了解详情,请参阅 Spanner 价格页面(不在本文档集中)。

您需要支付自行管理的基础设施费用。Google 会针对 Spanner Omni 的生产和商业用途收取许可费。如需了解详情,请参阅 Spanner Omni 价格详情。

功能支持和兼容性

Google 致力于实现 Spanner 与 Spanner Omni 之间的功能对等。不过,在 Google Cloud 中运行的 Spanner 受管版本与 Spanner Omni 之间存在一些差异。虽然 Spanner Omni 运行的是相同的底层查询引擎,但它不支持云端代管式服务中的所有功能。下表列出了主要区别。

功能支持和兼容性差异
功能 Spanner Spanner Omni
支持的功能

提供完整的 Spanner 功能集。

支持核心 Spanner 功能。如需了解详情,请参阅 Spanner Omni 概览。

不支持以下功能:

时间点恢复 (PITR)

您可以将版本保留期限配置为最长 7 天。如需了解详情,请参阅时间点恢复。

您可以将版本保留期限配置为最长 30 天。如需了解详情,请参阅时间戳边界文档。

TrueTime 实现

使用 Google Cloud 数据中心内基于硬件的同步原子钟和 GPS 接收器。如需了解详情,请参阅 TrueTime 和外部一致性。

使用软件定义的 TrueTime API 来保持强大的外部一致性。如需了解详情,请参阅 TrueTime 和外部一致性。

客户端库支持

支持多种编程语言。如需了解详情,请参阅 API 和客户端库。

支持 Java、Go 和 Python。如需了解详情,请参阅客户端库支持。

API 协议

同时支持 gRPC 和 REST API。

支持 gRPC。

安全性、身份验证和授权

自行管理模型的安全实现采用共担责任结构。下表概述了安全配置和访问权限控制。

安全性、身份验证和授权之间的区别
功能 Spanner Spanner Omni
安全模型

Google 负责管理物理安全和基础设施安全。

您负责保护计算服务器、存储空间、网络边界和容器环境。如需了解详情,请参阅身份验证和授权。

静态加密

默认情况下,静态数据会经过加密处理。您可以使用 Cloud Key Management Service 配置客户管理的加密密钥 (CMEK)。如需了解详情,请参阅客户管理的加密密钥。

不提供内置静态加密功能。您必须配置磁盘级或文件系统级加密(例如,块设备加密)。如需了解详情,请参阅安全概览。

传输加密

Google 会自动管理和强制执行 TLS 加密。

您必须为客户端-服务器连接配置 TLS 1.3,并为服务器-服务器连接配置双向 TLS (mTLS)。如需了解详情,请参阅虚拟机部署加密或 Kubernetes 部署加密。

身份验证

您可以使用 Identity and Access Management (IAM) 配置(服务账号、用户和群组)进行身份验证。如需了解详情,请参阅 IAM。

您可以使用密码(OPAQUE 协议)或客户端证书进行身份验证。如需了解详情,请参阅身份验证。

授权

您可以使用 IAM 角色和权限来授权操作。 如需了解详情,请参阅使用 IAM 进行访问权限控制。

您可以使用与 IAM 分开的内部类 IAM 角色系统(例如 roles/spanner.databaseUser)授权操作。此系统不支持自定义角色。如需了解详情,请参阅授权。

网络安全

Spanner 与 Google Cloud 网络功能(例如 VPC Service Controls 和专用端点)集成。

取决于防火墙配置和网络架构。

合规

Spanner 继承了 Google Cloud 合规性审核和认证。

您必须满足托管环境中的所有合规性要求。

后续步骤