我计划使用dynamodb作为聊天日志的数据存储。如果我不声明范围顺序,只设置ScanIndexForward = false
,那么插入顺序是否保留在我对它所做的任何查询中?
我只想查询给定散列的尾部100 messages
,并希望确保它们是根据插入记录的时间顺序降序返回的
不,项总是按范围键排序(并且只能在相同的散列键内)。
"对于具有给定散列键的项,DynamoDB将这些项存储在一起,按范围键排序。"
将插入时间作为范围键可能是最简单的方法(如果需要,可以作为二级索引)。
或者,您可以使用DynamoDB Streams在其他地方跟踪最近100个更新。