全球和区域级服务端点

本页面介绍 Spanner 全球和区域服务端点及其使用方法。

服务端点是一个基础网址,指定了 API 服务的网络地址。Spanner 同时具有全球端点和区域端点。您可以使用全球或区域级服务端点向 Spanner 发出请求。

如果您没有严格的区域限制要求,请使用全球端点。虽然数据存储在所选区域内,但数据可能会在区域外部处理。Spanner 的全球端点为 spanner.googleapis.com。默认 API 端点访问全球端点。

区域端点会强制执行区域限制。数据在同一区域内存储和处理。Spanner 的区域端点可确保并保证存储和处理的数据受限于数据库所在的 Spanner 区域实例配置。如果您的数据位置必须受到限制和控制以遵守监管要求,请使用区域端点。您无法使用区域端点访问属于其他实例配置的资源。您必须先在区域实例配置中创建实例,然后才能将区域端点用于该实例配置。

Spanner 区域端点仅在达曼的 me-central2 区域实例配置中可用。无论您使用哪个端点,底层 Spanner 存储政策都不会发生更改。

区域端点的安全性和合规性

使用 Spanner 区域端点而非全球端点的优势在于,该区域端点提供区域隔离和保护,以满足安全性、合规性和监管要求。

您只能使用属于该区域实例配置的区域端点。例如,如果您访问的实例属于 us-central1 区域实例配置,则不能使用 spanner.me-central2.rep.googleapis.com 来处理请求。该请求将被拒绝,并显示 InvalidRegionalRequest 错误。

区域端点的限制

您无法使用单区域端点访问双区域或多区域实例配置。您必须使用全球端点访问双区域或多区域实例配置。例如,如果您有一个实例采用多区域实例配置 nam7,就无法使用区域端点 spanner.us-central1.rep.googleapis.comnam7 中的实例发送请求。

如果您的活跃请求在任何实例资源上使用区域端点,则移动实例会影响使用区域端点的所有请求,因为区域强制执行会阻止对跨区域实例的访问。使用全球端点的请求不受影响。

区域端点命名惯例

Spanner 区域端点名称遵循与区域实例配置名称相同的命名惯例。区域端点采用 spanner.<REGION>.rep.googleapis.com 格式。例如,达曼的区域实例配置名称和区域端点名称均为 me-central2。因此,区域端点为 spanner.me-central2.rep.googleapis.com

只有 me-central2 可用作可能的区域端点。

指定区域性端点

您可以使用 Google Cloud CLI、REST 或 RPC API 请求来指定 Spanner 区域端点。

gcloud

如需指定区域端点并替换全球端点,请运行以下命令:

gcloud config set api_endpoint_overrides/spanner https://spanner.REGION.rep.googleapis.com/

请提供以下值:

REGION
要为其设置区域端点的区域。例如:me-central2

例如,如需将区域性端点配置为 me-central2,请运行以下命令:

gcloud config set api_endpoint_overrides/spanner https://spanner.me-central2.rep.googleapis.com/

如需为全球端点重新配置区域端点,请运行以下命令:

gcloud config unset api_endpoint_overrides/spanner

REST API

默认 API 端点可访问全球端点。如需使用区域端点,请使用以下模式将端点配置为区域端点的地址:

https://spanner.REGION.rep.googleapis.com

例如,如果要在区域实例配置达曼 (me-central2) 中强制执行数据保证,请使用以下命令:

  https://spanner.me-central2.rep.googleapis.com

如需了解详情,请参阅 REST API

RPC API

默认 API 端点可访问全球端点。如需使用区域端点,请使用以下模式将端点配置为区域端点的地址:

spanner.REGION.rep.googleapis.com

例如,如果要在区域实例配置达曼 (me-central2) 中强制执行数据保证,请使用以下命令:

spanner.me-central2.rep.googleapis.com

如需了解详情,请参阅 RPC API

后续步骤