更新 Amazon Keyspaces 中多区域表的预配置容量和自动扩展设置 - Amazon Keyspaces(Apache Cassandra 兼容)
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

更新 Amazon Keyspaces 中多区域表的预配置容量和自动扩展设置

本节包括如何使用控制台以及如何管理已配置的多区域CQL表的 Amazon Keyspaces 自动扩展设置的示例。 Amazon CLI 有关常规 auto Scaling 配置选项及其工作原理的更多信息,请参阅使用 Amazon Keyspaces 自动扩展功能自动管理吞吐容量

请注意,如果您对多区域表使用预配置容量模式,则必须始终使用 Amazon Keyspaces 调用API来配置自动扩展。这是因为底层的 Application Auto Scaling API 操作不支持区域。

有关如何估算已配置的多区域表的写入容量吞吐量的更多信息,请参阅。在 Amazon Keyspaces 中为多区域表估算和预配置容量

有关亚马逊密钥空间的更多信息,请参阅《亚马逊密钥空间API参》。API

更新多区域表的预配置模式或自动扩展设置时,可以更新表每个副本的读取容量设置和读取自动扩展配置。

但是,写入容量在所有副本之间保持同步,以确保有足够的容量跨所有区域复制写入。

Cassandra Query Language (CQL)
使用更新多区域表的预配置容量和 auto scaling 设置 CQL
  • 您可以使用ALTER TABLE更新现有表的容量模式和 auto Scaling 设置。如果您要更新当前处于按需容量模式的表,capacity_mode则为必填项。如果您的表已处于预置容量模式,则可以省略此字段。

    有关 auto Scaling 设置、目标跟踪策略、目标值和可选设置的详细信息,请参阅创建具有自动缩放功能的新表

    在同一语句中,您还可以通过更新表的replica_updates属性来更新特定区域中表副本的读取容量和自动缩放设置。下面是一个示例语句。

    ALTER TABLE mykeyspace.mytable WITH CUSTOM_PROPERTIES = { 'capacity_mode': { 'throughput_mode': 'PROVISIONED', 'read_capacity_units': 1, 'write_capacity_units': 1 } } AND AUTOSCALING_SETTINGS = { 'provisioned_write_capacity_autoscaling_update': { 'maximum_units': 10, 'minimum_units': 5, 'scaling_policy': { 'target_tracking_scaling_policy_configuration': { 'target_value': 50 } } }, 'provisioned_read_capacity_autoscaling_update': { 'maximum_units': 10, 'minimum_units': 5, 'scaling_policy': { 'target_tracking_scaling_policy_configuration': { 'target_value': 50, 'scale_in_cooldown': 60, 'scale_out_cooldown': 60 } } }, 'replica_updates': { 'us-east-1': { 'provisioned_read_capacity_autoscaling_update': { 'maximum_units': 20, 'minimum_units': 5, 'scaling_policy': { 'target_tracking_scaling_policy_configuration': { 'target_value': 70 } } } } } };
CLI
使用更新多区域表的预配置容量和 auto scaling 设置 Amazon CLI
  • 要更新现有表的预配置模式和 auto Scaling 配置,您可以使用 Amazon CLI update-table命令。

    请注意,您必须使用 Amazon Key CLI spaces 命令来创建或修改多区域自动扩展设置。这是因为 Amazon Keyspaces 用来代表您自动扩展表容量的服务 Application Auto Scaling 不支持多个。 Amazon Web Services 区域

    要更新特定区域中表副本的读取容量,您可以更改表的以下可选参数之一replicaSpecifications

    • 预配置的读取容量单位(可选)

    • 读取容量的自动缩放设置(可选)

    使用复杂的自动缩放设置和不同的表副本配置更新多区域表时,从JSON文件加载表的自动缩放设置和副本配置会很有帮助。

    要使用以下代码示例,您可以从 auto-scaling.zip 下载示例JSON文件,然后提取auto-scaling.jsonreplication.json。记下文件的路径。

    在此示例中,JSON文件位于当前目录中。有关不同的文件路径选项,请参阅如何从文件加载参数

    aws keyspaces update-table --keyspace-name mykeyspace --table-name mytable \ --capacity-specification throughputMode=PROVISIONED,readCapacityUnits=1,writeCapacityUnits=1 \ --auto-scaling-specification file://auto-scaling.json \ --replica-specifications file://replication.json