本页面介绍并解释了 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
。如需了解详情,请参阅 创建和管理数据展示位置。 - 如果对布置表使用
INSERT
或DELETE
DML 语句, 语句必须是事务中的唯一语句。
使用 IAM 进行访问权限控制
您需要拥有spanner.instancePartitions.create
、
spanner.instancePartitions.update
和spanner.instancePartitions.delete
拥有创建和管理分区的权限。如果您只需查看
您需要具有 spanner.instancePartitions.list
或
spanner.instancePartitions.get
权限。如需了解详情,请参阅
IAM 概览。
如需了解如何授予 Spanner IAM 权限,请参阅 应用 IAM 权限。
监控
Spanner 提供了多个指标来帮助您监控 分区。创建额外的分区后,您会看到 系统数据分析中 Partitions 的附加下拉过滤条件 页面。默认选择是显示 所有分区。您可以使用下拉菜单过滤特定 。
如需详细了解如何监控 Spanner 资源,请参阅 使用 Cloud Monitoring 监控实例。
价格
使用地理位置分区不会产生额外费用。您需要支付 计算容量 您的实例使用的存储空间以及数据库的存储空间使用量。
如需了解详情,请参阅 Spanner 价格。
后续步骤
- 了解如何创建和管理分区。
- 不妨了解如何创建和管理数据展示位置。