根据我对 DynamoDB 上复合排序键的理解,它在查询方面提供了更大的灵活性,并且比创建全局二级索引的成本更低。
假设我正在创建一个包含限时帖子的博客,并且我希望能够仅查询
我会考虑采用以下复合排序键:
expiry#category#featured
问题:
人工智能的答案往往对于你应该使用什么非常犹豫不决,因此具体的建议将不胜感激。主要访问模式将按类别显示帖子,并能够按用户搜索帖子。过期的帖子永远不应该是可见的。
排序键始终从左到右进行评估,如果这适合您的访问模式,那么它就非常有意义。使用复合排序键时需要注意以下事项:
contains
或 ends_with
。至于将值存储为独立属性,我始终建议您这样做。访问模式将来可能会发生变化,并且能够对其中一个属性进行索引非常重要。此外,它还允许您轻松过滤读取和/或条件写入以及过滤 Lambda 事件。