问题标签 [dynamodb-queries]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
58 浏览

amazon-web-services - 您如何查询/构建 DynamoDB 表以根据各种标签进行搜索

我有一个表格,需要根据用户的搜索返回标题,他们输入的每个主要单词都成为一个标签

我已经在线查看了 AWS 文档和各种示例。但似乎没有回答我的问题

所有说明都说明您应该尝试并且只使用一个表,并使用 GSI 来构造您的数据以进行查询。

但是,我一生都无法找到一种方法来订购可以通过多个标签搜索的数据,例如:

我想要一个仅根据用户搜索标签“mix”和“paint”返回“mix paint”的查询......

有任何想法吗?

0 投票
1 回答
2638 浏览

node.js - 如何在 dynamoDB 上使用分页

如何使用 dynamoDB 发出分页请求(limit、offset 和 sort_by)?在 mysql 上,您可以:

SELECT... LIMIT 10 OFFSET 1 order by created_date ASC

我正在使用nodejs尝试这个,在这种情况下created_date不是主键,我可以使用排序键查询created_date吗?

这是我的users桌子

0 投票
2 回答
635 浏览

nosql - 从 dynamodb 查询项目的最佳策略

我有一个产品表,其中包含 ID、名称和一些我想用来过滤的其他属性(例如颜色、类型、制造商)。

我想将 ID 设置为主键,将名称设置为排序键,并考虑如何处理其他查询,例如 api/products?color=X&type=Y&manufacturer=Z

为每个属性(颜色、类型、制造商)创建全局二级索引会是一个好的解决方案吗?因此,对于这样的请求,我将执行 3 个查询,这些查询将返回 3 个带有 ID 的记录列表,我将使用它们来根据主键进行查询。

0 投票
1 回答
514 浏览

java - DynamoDB:我们可以用更新表达式附加列表数据吗

当我将一些数据更新到我想要的数据库中时,如果users(列表类型)已经存在,那么需要附加新用户而不是覆盖。是否有任何选项可以在单个查询中附加到数据库中现有的用户列表。

我有的其他选择是,先打一个电话,然后附加它并更新它

这是 Dynamodb 数据模型

请帮助您提出宝贵的建议。

0 投票
1 回答
295 浏览

node.js - 日期范围查询在 dynamodb 中不起作用

我是 aws dynamodb 的新手并点击查询,如下所示

这是我的数据库架构

是否需要更改架构我没有得到正确的结果。createdOn 字段包含 epoc 时间,例如:“1548659664131”

0 投票
0 回答
376 浏览

bash - 基于属性更新每个 Dynamodb 项目的有效方法

我们有一个包含约 8,000 条记录的 DynamoDB 表,我们需要对每条记录进行更新。每条记录的结构类似于:id: 1492357, appIds: [123232], info: "{stringified json}"我们想要做的是获取“appIds”数组并将其插入到“info”的字符串化 json 值中,这样如果我们解析 json,appIds 属性现在是 json 中的一个属性.

我们有一个 API 可以通过调用来为我们完成这项工作,myApi/:id/update并且有一个 shell 脚本可以从 dynamo 获取表中每条记录的 id。我们可以循环 id 数组并使用每个 id 卷曲 api,但这似乎效率低下。

Dynamo 中是否有本地方式来做这样的事情(绕过 api)?我对脚本或 curl 也不是很熟悉,如果没有本地方法可以做到这一点,是否有更有效的方法来循环我们的 ids 数组并为每个人调用 api?除了是否有 200 响应之外,我们根本不关心 api 响应。

当前脚本:

0 投票
1 回答
3796 浏览

amazon-dynamodb - DynamoDB查询使用二级索引,如何使用不同的key进行查询

我正在使用带有 dynamodb [在本地] 的无服务器框架。尝试使用二级索引字段进行查询。目标是像我们在 Mongo 中的基本查找查询中那样使用很少的键进行查询:{url:'<Somevalue>'}或者可能是这样{url:<somevalue>,ha:<somevalue>}

我目前使用的表配置:

无服务器.yml

有了这个,目前我只能用id字段搜索,

1> 使用不同字段进行查询需要进行哪些更改?[这是二级索引,没有id在查询中使用]

2> 如何搜索多个属性?[即:{url:<somevalue>,ha:<somevalue>}]

我正在使用的查询:

查询的输出:

0 投票
1 回答
8749 浏览

amazon-dynamodb - DynamoDB,如何使用 BEGINS_WITH 查询

我正在使用DocumentClient进行查询。并使用带有 DynamoDb 的无服务器框架。

我正在尝试在不提供任何主键的情况下使用 BEGINS_WITH 进行查询。

这是我的数据的样子:

这是我的serverless.yml[即我猜的表配置]:

问: 使用 DocumentClinet 我想查询some_string. 这将返回所有匹配的文档。就像在这种情况下我想查询{some_string:"77"}它会返回

目前我的查询看起来像这样[这给出错误][在本地 DynamoDB JS shell 中运行]:

似乎上面的查询需要一个主键,在我的情况下是id. 如果我通过它,那么它将指向一个文档。

这是我到目前为止所取得的成就:

上面的这个查询可以满足我的要求。但是任何更好的方法或解决方案总是受欢迎的。

0 投票
1 回答
46 浏览

amazon-web-services - 如何从 DynamoDB 过滤(扫描)映射列表

这是我的数据库结构

我有几行类似的结构。我需要根据地区过滤帐户。任何人都可以帮助我使用 filterExpression 进行扫描吗?任何帮助,将不胜感激。

0 投票
1 回答
21 浏览

amazon-dynamodb - 如何为给定的一组关系表设计 dynamodb 表

我有一组 3 个关系表。我想将它们转换为 dynamodb 中的单个表。每个表都托管不同 tranType 的数据。每个表都有 Id, tranDate 作为它的键。对于给定的 Id、tranDate 和 tranType,有多个行。

我的访问模式是获取给定 Id 和 TranDate 的数据 - 这将为我获取所有 tranTypes 的数据。

对于给定的 Id、tranDate,每个表中的行在 400KB 以内,但如果我在 3 个表中添加给定 Id 和 tranDate 的行,它将超过 400KB。

给定 Id=1,tranDate='2018-12-01' -- 预期结果