IN PartiQL 运算符是否查询或扫描 DynamoDB 表?

问题描述 投票:0回答:1

我们需要查询大型 (2TB+) DynamoDB 表以根据分区键获取多个项目。

我们计划使用 PartiQL,因为它支持

IN
运算符:

SELECT * FROM table_test where pk IN ('1234','1112');

此查询会在后台执行 DynamoDB 查询操作或 DynamoDB 扫描操作吗?

我们希望避免表扫描,因为它们更昂贵。

amazon-web-services amazon-dynamodb dynamodb-queries partiql
1个回答
3
投票

此查询会在后台执行 DynamoDB 查询操作或 DynamoDB 扫描操作吗?

它将执行多个 DynamoDB 查询,因为您的

WHERE
子句条件语句正在 DynamoDB 分区键上进行过滤。

这已根据文档确认:

为了确保 SELECT 语句不会导致全表扫描,WHERE 子句条件必须指定分区键。使用相等或 IN 运算符。

© www.soinside.com 2019 - 2024. All rights reserved.