如何在 DynamoDB 中使用 Set <String> 属性?
How to use a Set <String> attribute in DynamoDB?
我正在聊天并将聊天用户的 id 保存在一个集合 <String>
中,问题是在 DynamoDB
中保存数据时会自动按升序排序,而我这样做不想那样订购,但不知道如何避免。
目前,实际上,字符串集确实按字母升序排列。但是,根据@notionquest 的评论,不能保证顺序,也不能依赖。所以,没有办法避免它。查看详细信息 here。
例如,如果您想按参与聊天的最后一个用户的时间戳排序,则必须以不同的方式存储此数据——例如在单独的 table 中,chat_id 作为 hash/partition 键,时间戳作为范围键,user_id 作为附加属性。然后,您可以对特定 chat_id 和 return 所有按时间顺序或倒序参与的用户执行 query。这只是一个实现的例子。我对您的用例了解不多,因此它可能不适合您。无论哪种方式,我认为 DynamoDB 字符串集不会满足您的需求。
我正在聊天并将聊天用户的 id 保存在一个集合 <String>
中,问题是在 DynamoDB
中保存数据时会自动按升序排序,而我这样做不想那样订购,但不知道如何避免。
目前,实际上,字符串集确实按字母升序排列。但是,根据@notionquest 的评论,不能保证顺序,也不能依赖。所以,没有办法避免它。查看详细信息 here。
例如,如果您想按参与聊天的最后一个用户的时间戳排序,则必须以不同的方式存储此数据——例如在单独的 table 中,chat_id 作为 hash/partition 键,时间戳作为范围键,user_id 作为附加属性。然后,您可以对特定 chat_id 和 return 所有按时间顺序或倒序参与的用户执行 query。这只是一个实现的例子。我对您的用例了解不多,因此它可能不适合您。无论哪种方式,我认为 DynamoDB 字符串集不会满足您的需求。