gpt4 book ai didi

java - DynamoDB 读取吞吐量低于容量且没有任何限制

转载 作者:太空宇宙 更新时间:2023-11-04 10:51:03 25 4
gpt4 key购买 nike

我在使用 Dynamo 时遇到问题,读取吞吐量远低于预配置容量,且图表中没有任何明显的限制。

我的表有 100GB 的数据,类似于:

|分区键 |排序键 |值(value)
|一个 | A1 | 1
|一个 | A2 | 21
|一个 | A3|第231章
...
|一个 | A200 | 31
|乙| B1 | 5

此结构不能改变太多,因为我可以查询与给定键关联的所有值(以及基于与给定分区键关联的排序键的更复杂的查询),这一点很重要。。这导致我限制了写入,因为它必须经常访问相同的分区,但真正奇怪的是读取吞吐量。该表配置了 1000 个读取单元,但最大记录吞吐量为每秒 600 次读取。这与每秒最多 10,000 个预配置读取单元一致。

在客户端,我每秒发送 1000 个请求(统一使用速率限制器),因此理论上,读取吞吐量应为每秒 1000 个读取。即使客户端增加请求数,速率也保持不变,并且限制读取为零。

客户端在与 Dynamo 位于同一区域的 EC2 m4.2xlarge 实例上运行。我已经排除了客户端的问题,因为 CPU 使用率相当低,并且有足够的可用内存。

有什么想法可能导致这种情况吗?

最佳答案

每个项目的数据量会影响 RCU。

参见: http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.ProvisionedThroughput.html

One read capacity unit represents one strongly consistent read per second, or two eventually consistent reads per second, for an item up to 4 KB in size. If you need to read an item that is larger than 4 KB, DynamoDB will need to consume additional read capacity units. The total number of read capacity units required depends on the item size, and whether you want an eventually consistent or strongly consistent read.

您需要检查是否使用一致读取以及每次读取获取的数据量。

关于java - DynamoDB 读取吞吐量低于容量且没有任何限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47869243/

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