在mongoDB中,可以按如下方式在特定字段上将所有文档按asc / desc排序:
db.collection_name.find().sort({field: sort_order})
query()需要一个来指定分区键,如果要查询非键属性,则可以创建一个GSI并对其执行查询,其方法与此处所述相同。 :Query on non-key attribute
scan()可以完成工作,但不提供对任何字段进行排序的选项。
此处描述的一种解决方案:Dynamodb scan in sorted order是具有所有文档的公用密钥,并在属性上创建GSI。
但是正如其中一个解决方案的注释中列出的那样,我引用“ ”。DynamoDB表的性能特征同样适用于GSI。单个哈希键为“ OK”的GSI只会使用一个分区。这将失去DynamoDB的所有扩展特性”。
是否有一种方法可以实现扩展良好?
答案 0 :(得分:2)
DynamoDB唯一应用的排序是通过分区中的范围键。没有按任意字段对结果进行排序的功能,应该在应用程序代码中对自己的结果进行排序。即进行扫描并在客户端对结果进行排序。