本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
要查看范围查询的读取容量消耗,我们使用以下示例表,该表使用按需容量模式。
pk1 | pk2 | pk3 | ck1 | ck2 | ck3 | value -----+-----+-----+-----+-----+-----+------- a | b | 1 | a | b | 50 | <any value that results in a row size larger than 4KB> a | b | 1 | a | b | 60 | value_1 a | b | 1 | a | b | 70 | <any value that results in a row size larger than 4KB>
现在,对该表运行以下查询。
SELECT * FROM amazon_keyspaces.example_table_1 WHERE pk1='a' AND pk2='b' AND pk3=1 AND ck1='a' AND ck2='b' AND ck3 > 50 AND ck3 < 70;
您从查询中收到以下结果集,Amazon Keyspaces 执行的读取操作RRUs在一LOCAL_QUORUM
致模式下消耗 2。
pk1 | pk2 | pk3 | ck1 | ck2 | ck3 | value -----+-----+-----+-----+-----+-----+------- a | b | 1 | a | b | 60 | value_1
Amazon Keyspaces 消耗 2 RRUs 来评估包含这些值的行ck3=60
ck3=70
并处理查询。但是,Amazon Keyspaces 仅返回查询中指定的 WHERE
条件为 true 的行,即值为 ck3=60
的行。为了评估查询中指定的范围,Amazon Keyspaces 会读取与该范围上限匹配的行(在本例中为 ck3 = 70
),但不会在结果中返回该行。读取容量消耗基于处理查询时读取的数据,而不是返回的数据。