首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >DynamoDB按需表:精读是否影响阅读?

DynamoDB按需表:精读是否影响阅读?
EN

Stack Overflow用户
提问于 2022-03-29 13:32:59
回答 1查看 273关注 0票数 2

我开发了一个高度加载的应用程序,它从DynamoDB按需表中读取数据。假设它经常每秒执行大约500次读取。

有时,我需要将一个大型数据集上传到数据库(1亿条记录)。我使用蟒蛇,火花和audienceproject/spark-dynamodb。我设置了throughput=40k并使用BatchWriteItem()编写数据。

在开始时,我观察到一些编写限制的请求,写容量仅为4k,但随后发生了升级,并且写入容量增加了。

问题:

  1. 在按需表的情况下,密集写作会影响阅读吗?自动标度对reading/writing?
  2. Is来说是独立的吗?在短时间内设置大吞吐量很好吗?据我所见,按需付款表的费用是一样的。潜在的问题是什么?
  3. 我观察到一些节流请求,但是最终,所有的数据都成功地上传了。这怎么解释呢?我建议我使用的客户端具有先进的速率限制逻辑,到目前为止我还没有找到明确的答案。
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-03-29 15:28:45

这是很多问题在一个问题,你会得到一个高水平的答案。

DynamoDB通过增加分区数量来扩展。每个项目都存储在一个分区上。每个分区可以处理:

  • 高达3000个读容量单位
  • 多达1000个写入容量单位
  • 高达10 GB数据

一旦达到任何这些限制,分区就被分割成两个,并且这些项被重新分配。在有足够的能力满足需求之前,就会发生这种情况。您不能控制这种情况是如何发生的,这是一个在后台执行此操作的托管服务。

分区的数量一直在增长。

根据这些信息,我们可以回答您的问题:

  1. 在按需表的情况下,密集写作会影响阅读吗?自动标号为reading/writing?

独立工作吗?

对于读和写活动,缩放机制是相同的,但是缩放点与上面提到的不同。在随需应变表中,不涉及AutoScaling,这仅适用于具有提供吞吐量的表。你不应该注意到这对你的阅读有影响。

  1. 可以在短时间内设置大吞吐量吗?据我所见,按需付款表的费用是一样的。潜在的问题是什么?

我假设您设置了spark可以用作编写预算的吞吐量,它不会对按需表产生太大影响。它的信息,它可以使用内部来决定多大的并行化是可能的。

  1. --我观察到一些节流请求,但最终,所有数据都成功地上传了。这怎么解释呢?我建议我使用的客户端具有先进的速率限制逻辑,到目前为止我还没有找到明确的答案。

如果客户端使用BatchWriteItem,它将获得无法为每个请求写入的项的列表,并且可以再次对它们进行排队。指数退避可能涉及到,但这是一个实现细节。这不是魔术,您只需跟踪哪些项目您已经成功编写,并将那些您还没有再次队列,直到“写”队列是空的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71663032

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档