在Dynamo DB中索引本地二级索引

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Dynamo DB中索引本地二级索引相关的知识,希望对你有一定的参考价值。

比如,我有一个包含5列的表: - A,B,C,D,E。A是散列键,B是排序键。现在,我也想查询A和C.然后,将C添加为本地二级索引就可以了,对吧?我问,因为本地二级索引主要用于范围查询。对于我的情况,它将是对C属性的相等查询。

你可能有任何建议将不胜感激。

答案

我找到了答案。我可以创建一个本地二级索引,其中A为哈希键,C为范围键。但我需要确保在创建表时创建此索引,因为在创建表后无法创建LSI。

另一答案

你是对的。使用本地二级索引,您无法更改分区键。使用这个你可以查询=

另一答案

您可以使用二级索引进行查询:

let params = {
    TableName: 'users',
    KeyConditionExpression: "#_id = :_id",
    IndexName: "_id-index",
    ExpressionAttributeNames:{
        "#_id": "_id"
    },
    ExpressionAttributeValues: {
        ":_id":userId
    }
};

使用document.query方法

以上是关于在Dynamo DB中索引本地二级索引的主要内容,如果未能解决你的问题,请参考以下文章

扫描Dynamo DB中的特定行

使用 DynamoMapper 和类 Annotation 创建具有全局二级索引的表

DynamoDB 中本地索引和全局索引的区别

对于典型的 crud 应用程序,推荐的 dynamo 索引架构是啥?

使用二级索引改进数据访问DynamoDB

2021年大数据HBase:Apache Phoenix 二级索引