Amazon dynamodb DynamoDB:如果主键的散列范围是schema,那么如何从主键中找到唯一的散列键?

Amazon dynamodb DynamoDB:如果主键的散列范围是schema,那么如何从主键中找到唯一的散列键?,amazon-dynamodb,Amazon Dynamodb,我有一张dynamodb桌子 它有主分区键-IdType(String)和主排序键-Id(String) 由于它是散列范围模式,IdType不是唯一的,一个键可以多次使用。我需要找到所有唯一的IdType 我们如何找到它?一个可能的解决方案是使用扫描获取所有IdType,并处理所有客户端,然后使用我们自己的代码查找唯一的IdType。但扫描成本很高,每次扫描只能扫描1MB的数据,因此扫描是不可行的,因为表中的数据已经超过1MB,并且将来会逐渐增加 还有别的办法吗?任何帮助都将不胜感激 PS:没有

我有一张dynamodb桌子

它有主分区键-IdType(String)和主排序键-Id(String)

由于它是散列范围模式,IdType不是唯一的,一个键可以多次使用。我需要找到所有唯一的IdType

我们如何找到它?一个可能的解决方案是使用扫描获取所有IdType,并处理所有客户端,然后使用我们自己的代码查找唯一的IdType。但扫描成本很高,每次扫描只能扫描1MB的数据,因此扫描是不可行的,因为表中的数据已经超过1MB,并且将来会逐渐增加

还有别的办法吗?任何帮助都将不胜感激


PS:没有索引

简短的回答是没有,要查询DynamoDB表,您首先需要的是哈希键,因此这消除了查询数据的所有选项,因为您必须具有哈希键才能找到数据

据我所知,DyanmoDB没有任何用于查找密钥唯一性的内置属性

如果你想做到这一点,你可以通过

1) 如前所述扫描表,并在应用程序级别对其进行筛选

2) 如果数据不经常更新,则可以将数据存储在缓存中并检索所需信息

3) 您可以使用另一个名为cloudSearch的AWS服务来实现所需的结果(需要支付更多费用)

如果你能用另一种方法实现,请分享

希望有帮助