在矿山探测器中存储多少个不同对象的最有效方法是什么?
例如我的对象有十个属性,我希望根据3个属性获得一个独特的计数。
答案 0 :(得分:4)
如果您需要计数器,最好使用AtomicCounters(http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/WorkingWithDDItems.html)。在您的情况下,DynamoDB不支持由3个属性组成的开箱即用密钥,除非您将它们连接起来,因此选项是创建一个冗余表,其中密钥是这3个属性的串联,每个属性管理这些属性对象,也更新AtomicCounter(添加,删除,更新 - 实际上不需要)。
然后你只是查询计数器,避免扫描。因此,获得检索数据的速度是空间复杂性。
答案 1 :(得分:1)
使用适当的ScanFilter执行扫描(在这种情况下,三个属性为not_null),并使用withCount(true)仅返回匹配记录的数量而不是记录本身。
See the documentation了解一些示例代码。