- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我一直在浏览 AWS DynamoDB 文档,但在我的一生中,我无法弄清楚 batchGetItem() 和 Query() 之间的核心区别是什么。两者都基于表和索引中的主键检索项目。唯一的区别在于检索到的项目的大小,但这似乎不是突破性的差异。两者都支持条件更新。
在什么情况下我应该使用 batchGetItem 而不是 Query,反之亦然?
最佳答案
简而言之:
BatchGetItem 处理表并使用散列键来标识要检索的项目。您最多可以在响应中获得 16MB 或 100 个项目
查询适用于表、本地二级索引和全局二级索引。您最多可以在响应中获得 1MB 的数据。最大的区别是查询支持过滤表达式,这意味着你可以请求数据,DDB 会在服务器端为你过滤。
如果你真的想使用这些中的任何一个,你可能可以实现同样的事情,但经验法则是当你需要从 DDB 批量转储东西时你做一个 BatchGet,当你需要缩小你的范围时你查询想要检索(并且您希望 dynamo 为您过滤数据)。
关于amazon-web-services - DynamoDB 中的 BatchGetItem 和 Query 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30749560/
我尝试使用 batchGetItem从表中返回多个项目的属性,但似乎它只适用于分区键和范围键的组合,但是如果我只想通过主键识别请求的项目怎么办?唯一的方法是创建没有范围键的表吗? // Add
是否可以使用batchgetitem api从dynamodb全局二级索引中检索行?如果我的目标是也基于某些非键属性从主表中检索数据,但应在 100 个项目的批次中检索数据 - GSI 索引是否不适合
我有一个名为 User 的表。它有一个用户 ID 的哈希键和一个组织 ID 的范围键。 如何返回所有组织 ID 为“3”的用户 (顺便说一下,这是一个 Lambda 函数) 这段代码给了我一个错误:
我正在尝试从Swift应用程序中的DynamoDB获取一些行。在下面代码的最后一行,我得到一个NSInvalidArgumentException。我认为一定是因为我的请求格式不正确,但是我不知道出了
方法 BatchGetItemRequest(Map requestItems) 不允许添加任何键或范围条件。如果没有范围键,BatchGetItemRequest 将失败。如何使用比较运算符指定范围
我有一个在 AWS DynamoDB 中执行 batchGetItem 的 Swift 函数。输出以 JSON 格式返回,但我无法解析它。下面是我试图用来解析数据的代码,以及 JSON 输出的样子。任
这里的想法是在查询通过 GSI 运行时并行运行多个 DynamoDB 查询。截至目前 BatchGetItems doesn't support querying over Indexes推荐的方法是
具体来说,什么时候使用一个或另一个更好?我现在正在使用 BatchGetItem,它看起来非常慢。 最佳答案 就检索单个项目的效率而言,您知道分区键(如果在表中使用了排序键,则为排序键),GetIte
我正在使用 GO SDK 并使用 DynamnoDB BatchGetItem API。 我看到了这个代码示例 - https://github.com/aws/aws-sdk-go/blob/mas
我们在过去几周开始在我们的项目中使用 DynamoDB,既作为缓存又作为系统中发生的事件的列表(请不要讨论为什么有更好的替代方案来实现这个,我已经争论过我自己在选择 DynamoDB 之前没有结果)。
哈希和范围都指定了,它还认为一个是空的?还是在谈论其他一些属性? 返回的 task.result() 为 nil,task.error() 表示: "Error Domain=com.amazonaw
使用 BatchGetItem 与并行发出多个 GetItem 有很大差异(在时间性能上)吗? 如果我可以使用 GetItem 并自己处理并行化,我的代码会更简洁。 但是,如果 BatchGetIte
我正在为我当前的应用程序构建一个无服务器后端,使用 dynamoDb 作为我的数据库。我使用 aws sam 将我的 lambda 函数上传到 aws。此外,我将所有表名作为全局变量传递给 lambd
我想调用 BatchGetItem 以使用集成请求中的 API Gateway json 映射模板从 DynamoDB 的简单表中获取多个文档。 使用 时,以下模板对我有用查询 获取单个项目的操作:
我想检索 500 个项目并且我知道它们的主键。 调用 BatchGetItem 是否比在 dynamodb 的循环中调用 GetItem 更有效? 最佳答案 是的。对于 GetItem,您将为每个项目
如果您请求超过 100 个项目,BatchGetItem 将返回一个 ValidationException 并显示消息“为 BatchGetItem 调用请求的项目太多。”有什么办法可以通过 bat
我一直在浏览 AWS DynamoDB 文档,但在我的一生中,我无法弄清楚 batchGetItem() 和 Query() 之间的核心区别是什么。两者都基于表和索引中的主键检索项目。唯一的区别在于检
我正在尝试使用 Node JS AWS-SDK 从 DynamoDB 表中获取项目。 getItem 函数工作正常,但 BatchGetItem 更难使用。 我使用官方文档: http://docs.
我在使用 Boto3/DynamoDB 时遇到困难 BatchGetItem 手术。我将不胜感激任何帮助或指导!如果这是一个新手问题,我对 python/aws 还很陌生,所以很抱歉。 当我执行操作时
我是一名优秀的程序员,十分优秀!