Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅
中国的 Amazon Web Services 服务入门
(PDF)。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
更改容量模式
当您将表从预置的容量模式切换到按需容量模式时,Amazon Keyspaces 会对表和分区的结构进行若干更改。此过程可能耗时数分钟。在切换期间,您的表将提供与先前预置的 WCU 和 RCU 数量相一致的吞吐量。
当您从按需容量模式切换回预置的容量模式时,表将提供与表设置为按需容量模式时达到的先前峰值一致的吞吐量。
切换容量模式时,需要等待以下时间:
- Cassandra Query Language (CQL)
-
使用 CQL 更改表的吞吐能力模式
-
要将表的容量模式更改为 PROVIOSIONED
,必须根据工作负载的预期峰值配置读取容量和写入容量单位数。以下语句便是一个示例。您也可以运行此语句来调整表的读取容量或写入容量单位数。
ALTER TABLE catalog.book_awards WITH CUSTOM_PROPERTIES={'capacity_mode':{'throughput_mode': 'PROVISIONED', 'read_capacity_units': 6000, 'write_capacity_units': 3000}};
要使用自动扩缩功能配置预置容量模式,请参阅在现有表上配置自动扩缩。
要将表的容量模式更改为按需模式,请将吞吐量模式设置为 PAY_PER_REQUEST
。下面是一个示例语句。
ALTER TABLE catalog.book_awards WITH CUSTOM_PROPERTIES={'capacity_mode':{'throughput_mode': 'PAY_PER_REQUEST'}};
您可以使用以下语句来确认表的容量模式。
SELECT * from system_schema_mcs.tables where keyspace_name = 'catalog' and table_name = 'book_awards';
使用按需容量模式配置的表返回以下内容。
{
"capacity_mode":{
"last_update_to_pay_per_request_timestamp":"1727952499092",
"throughput_mode":"PAY_PER_REQUEST"
}
}
last_update_to_pay_per_request_timestamp
值以毫秒为单位。
- CLI
-
使用更改表的吞吐容量模式 Amazon CLI
-
要将表的容量模式更改为 PROVIOSIONED
,必须根据工作负载的预期峰值配置读取容量和写入容量单位数。下面是一个命令示例。您也可以运行此命令来调整表的读取容量或写入容量单位数。
aws keyspaces update-table --keyspace-name catalog --table-name book_awards
\--capacity-specification throughputMode=PROVISIONED,readCapacityUnits=6000,writeCapacityUnits=3000
要使用自动扩缩功能配置预置容量模式,请参阅在现有表上配置自动扩缩。
-
要将表的容量模式更改为按需模式,请将吞吐量模式设置为 PAY_PER_REQUEST
。下面是一个示例语句。
aws keyspaces update-table --keyspace-name catalog --table-name book_awards
\--capacity-specification throughputMode=PAY_PER_REQUEST
您可以使用以下命令查看为表配置的容量模式。
aws keyspaces get-table --keyspace-name catalog --table-name book_awards
而在按需模式下,表的输出类似如下内容。
"capacitySpecification": {
"throughputMode": "PAY_PER_REQUEST",
"lastUpdateToPayPerRequestTimestamp": "2024-10-03T10:48:19.092000+00:00"
}