地理分区概览

本页面介绍并解释了 Google Cloud 中地理位置分区的工作原理, Spanner。

Spanner 提供单区域和多区域实例 配置,以便将您的数据 跨地理位置进行分析。通过地理分区,您可以进一步细分和 跨不同实例配置在数据库表中存储行。

优势和用例

地理位置分区的优势包括:

  • 通过将数据存储在 地理位置与您的查询相同。

  • 优化非对称全球工作负载(例如,使用 us-central1 分区(包含 10 个节点)和一个包含 2 个节点的 asia-south1 分区 节点)。

以下是一些常见用例:

  • 用户相关数据:对用户相关数据进行地理分区以进行处理 并将数据存储在距离用户最近的区域。

  • 本地化的数据:具体位置的信息,例如路况和特殊情况 事件。

地理位置分区的工作原理

所有 Spanner 实例都有一个主实例分区,该分区是 称为 default 分区。如果不创建额外分区 数据库对象存储在默认分区中,该分区与 作为实例配置的位置。

如果要对数据库中的数据进行分区, 在实例中配置多个分区用户创建的这些分区有自己的分区 配置(单区域或多区域)和节点数。 像平常一样创建数据库:您的数据库可以 在同一实例中创建的分区。然后, 在数据库中创建与 与分区相关联最后,您可以创建展示位置表格 具有展示位置键属性的广告您必须在 DML 中使用布置键 语句用于指定行数据所在的分区。如果您创建了 非放置表,Spanner 会将这些数据存储起来, 默认分区中

如需了解如何使用分区,请参阅 创建和管理分区

重要注意事项

在创建分区、展示位置和 展示位置表格:

  • 分区区域:仔细选择提供 最大收益

    虽然您可以在具有区域级实例的实例中创建分区 我们建议您在具有 多区域实例配置,以使默认分区位置为 多区域配置中

    此外,请选择一个符合以下条件的多区域默认分区位置: 覆盖所有所需管辖区的读写区域和只读区域 由您的应用启动然后,创建额外分区(可以是 具有与多区域位置中的区域相匹配的主要区域 默认分区。

  • 分区数:分区过多可能会导致开销,而分区数过多 那么少数产品可能无法提供足够的优势。您最多可以创建十个 每个实例的分区数

限制

地理位置分区具有以下限制:

  • 地理分区不支持 PostgreSQL 方言数据库。
  • 您无法使用双区域配置创建实例分区。
  • 对于每个分区,计算容量必须至少为一个节点 (1000) 处理单元)。
  • 对于给定实例,您不能创建多个实例分区 使用相同的基本实例配置例如,在 test-instance,您不能创建两个分区,即 partition-1 和 均使用 us-central1 作为分区配置的 partition-2
  • 对于分区中的每个节点,最多可以放置 2000 万行。 您可以查看已放到 分区。
  • 对于目标实例分区中的每个节点,Spanner 每秒大约可移动 10 行。
  • 您无法在免费试用实例中创建分区,或者 小于一个节点(1000 个处理单元)的精细实例。
  • 您无法为具有分区的实例创建备份。
  • 您不能将客户管理的加密密钥用于 分区。
  • 您无法在具有代管式服务的实例中创建实例分区 自动扩缩器
  • 您无法将该分区迁移到其他实例配置。
  • 您无法移动包含分区的实例。
  • 使用分区不能保证安全性、合规性和监管 要求。
  • 变更数据流不支持分区数据。
  • 要使用地理分区,您必须创建一个新的空数据库,并将 将 opt_in_dataplacement_preview 选项设为 true。如需了解详情,请参阅 创建和管理数据展示位置
  • 如果对布置表使用 INSERTDELETE DML 语句, 语句必须是事务中的唯一语句。

使用 IAM 进行访问权限控制

您需要拥有spanner.instancePartitions.createspanner.instancePartitions.updatespanner.instancePartitions.delete 拥有创建和管理分区的权限。如果您只需查看 您需要具有 spanner.instancePartitions.listspanner.instancePartitions.get 权限。如需了解详情,请参阅 IAM 概览

如需了解如何授予 Spanner IAM 权限,请参阅 应用 IAM 权限

监控

Spanner 提供了多个指标来帮助您监控 分区。创建额外的分区后,您会看到 系统数据分析中 Partitions 的附加下拉过滤条件 页面。默认选择是显示 所有分区。您可以使用下拉菜单过滤特定 。

如需详细了解如何监控 Spanner 资源,请参阅 使用 Cloud Monitoring 监控实例

价格

使用地理位置分区不会产生额外费用。您需要支付 计算容量 您的实例使用的存储空间以及数据库的存储空间使用量。

如需了解详情,请参阅 Spanner 价格

后续步骤