gpt4 book ai didi

amazon-dynamodb - 查询多个本地二级索引 Dynamodb

转载 作者:行者123 更新时间:2023-12-04 03:25:40 26 4
gpt4 key购买 nike

我的表中有 2 个 LSI,主分区键和主排序键

Org-ID - 主分区键

ClientID- 主排序键

性别 - LSI

部分 - LSI

我对使用一个 LSI 查询表没有任何问题,但是如何提及 2 大规模集成电路 在表模式中。

 var params = {
TableName:"MyTable",
IndexNames: ['ClientID-Gender-index','ClientID-Section-index'],

KeyConditionExpression : '#Key1 = :Value1 and #Key2=:Value2 and #Key3=:Value3',

ExpressionAttributeNames:{
"#Key1":"Org-ID",
"#Key2":"Gender",
"#Key3":"Section"
},

ExpressionAttributeValues : {
':Value1' :"Microsoft",
':Value2':"Male",
':Value3':"Cloud Computing"
}};

谁能解决 中的问题?索引名称 (第 3 行)或 KeyConditionExpression(第 4 行),我不确定。

问题

条件只能是长度 1 或 2

最佳答案

您一次只能查询一个 DynamoDB 索引。您不能在同一查询中使用多个索引。

一个简单的替代方法是使用单个索引并应用查询过滤器,但这可能需要扫描大量记录,并且过滤器只会减少通过网络传输的数据量。

更高级的替代方法是制作复合键。对于此用例,您很可能希望使用 GSI,而不是 LSI。通过创建一个新列,即 Key1、Key2 和 Key3 的字符串连接,您可以使用此 GSI 同时搜索所有三个键。这将通过重复数据使每个单独的记录更大,但它允许更复杂的查询模式。

关于amazon-dynamodb - 查询多个本地二级索引 Dynamodb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44982204/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com