

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

# 配置按需容量模式
<a name="ReadWriteCapacityMode.OnDemand"></a>

Amazon Keyspaces（Apache Cassandra 兼容）*按需*容量模式是一个灵活的计费选项，可以每秒处理数千个请求而不需要进行容量规划。此选项针对读写请求提供按请求支付定价，以便您只需为使用的资源付费。

 选择按需模式时，Amazon Keyspaces 可以将表的吞吐容量立即扩展到以前达到的任何流量级别，然后在应用程序流量减少时调整回来。如果工作负载的流量级别达到新的峰值，则该服务会迅速调整以便为您的表增加吞吐容量。您可以为新表和现有表启用按需容量模式。

On-demand 如果满足以下任一条件，则模式是一个不错的选择：
+ 您创建工作负载未知的新表。
+ 您的应用程序流量不可预测。
+ 您更喜欢只为您使用的容量付费的便利性。

要开始使用按需模式，您可以使用控制台或使用几行 Cassandra 查询语言 (CQL) 代码创建新表或更新现有表以使用按需容量模式。有关更多信息，请参阅 [表](cql.ddl.table.md)。

**Topics**
+ [读取请求单位和写入请求单位](#ReadWriteCapacityMode.requests)
+ [峰值流量和扩缩属性](#ReadWriteCapacityMode.PeakTraffic)
+ [按需容量模式的最初吞吐量](#ReadWriteCapacityMode.InitialThroughput)

## 读取请求单位和写入请求单位
<a name="ReadWriteCapacityMode.requests"></a>

 使用按需容量模式表，您无需预先指定您希望应用程序使用多少读取和写入吞吐量。Amazon Keyspaces 会根据读取请求单位 (RRU) 和写入请求单位 (WRU) 向您对表执行的读取和写入操作收费。
+ 对于大小不超过 4 KB 的行，一个 *RRU* 代表一个 `LOCAL_QUORUM` 读取请求，或两个 ` LOCAL_ONE` 读取请求。如果您需要读取大于 4 KB 的行，则读取操作将使用额外的 RRU。所需的 RRU 总数取决于行大小，以及要使用 `LOCAL_QUORUM` 还是 `LOCAL_ONE` 读取一致性。例如，使用 `LOCAL_QUORUM` 读取一致性读取一个 8 KB 行需要 2 个 RRU，如果选择 `LOCAL_ONE` 读取一致性，则需要 1 RRU。
+ 一个 *WRU* 代表对大小不超过 1 KB 的行的一次写入。所有写入操作都使用 `LOCAL_QUORUM` 一致性，使用轻量级事务 (LWT) 不收取额外费用。如果您需要写入大于 1 KB 的行，则写入操作将使用额外的 WRU。所需 WRU 的总数取决于行大小。例如，如果行大小为 2 KB，则需要 2 个 WRU 才能执行一个写入请求。

有关支持的一致性级别的信息，请参阅[支持的 Apache Cassandra 读写一致性级别和相关成本](consistency.md)。

## 峰值流量和扩缩属性
<a name="ReadWriteCapacityMode.PeakTraffic"></a>

使用按需容量模式的 Amazon Keyspaces 表会自动适应应用程序的流量。 On-demand 容量模式可立即容纳桌子上高达之前峰值流量的两倍。例如，您的应用程序流量模式可能在每秒 5,000 到 10,000 次 `LOCAL_QUORUM` 读取之间变化，其中每秒 10,000 次读取是以前的流量峰值。

使用这种模式，按需容量模式可即时容纳最高每秒 20,000 次读取的持续流量。如果应用程序承受每秒 20,000 次读取的流量，则该峰值将成为新的之前峰值，从而使后续流量高达每秒 40,000 次读取。

 如果您在一个表上需要的流量是前一个峰值的两倍以上，则随着流量的增加，Amazon Keyspaces 会自动分配更多容量。这有助于确保您的表具有足够的吞吐容量来处理额外的请求。但是，如果您在 30 分钟内超过前一个峰值的两倍，则可能会出现吞吐容量不足错误。

例如，假设您的应用程序流量模式在每秒 5,000 到 10,000 个强一致性读取之间变化，而上一次达到的流量峰值为每秒 20,000 次读取。在这种情况下，服务建议您在将流量推动到每秒 40,000 次读取之前，至少将流量增长的时间间隔 30 分钟。

要了解如何估算表的读取和写入容量消耗，请参阅[估算 Amazon Keyspaces 中读取和写入吞吐量的容量消耗](capacity-examples.md)。

要了解有关账户的默认配额以及如何增加此配额的更多信息，请参阅 [Amazon Keyspaces（Apache Cassandra 兼容）限额](quotas.md)。

## 按需容量模式的最初吞吐量
<a name="ReadWriteCapacityMode.InitialThroughput"></a>

如果您在启用按需容量模式的情况下创建了新表，或者首次将现有表切换为按需容量模式，则该表将具有以下之前峰值设置，即使该表之前尚未使用按需容量模式提供流量也是如此。
+  **在按需容量模式下新创建的表**：先前峰值为 2000 个 WRU 和 6000 个 RRU。您可以立即将以前的峰值翻倍。这样，新创建的按需表可以提供最高 4000 个 WRU 和 12000 个RRU。
+  **现有表切换为按需容量模式：**先前峰值是为该表先前预置的 WCU 和 RCU 的一半，或者是按需容量模式的新建表的设置，以较高者为准。