我有一个动觉流(20个片段),大约有1天的数据延迟,这是由基于KCL的动觉消费者消费的。消费者部署了20个ECS实例,因此每个实例都有一个从每个shard提取数据的线程。
根据文档,看起来一个getRecords调用最多可以获取10000条记录,或者最大负载大小为10 MB。然而,当我监视消费者日志时,并不是所有的碎片都达到了这个限制。使用单个getRecords调用获取的记录在消费者实例中非常不一致。有些调用获取大约100-400条记录,而有些调用获取大约4000-5000条记录。在极少数情况下,一些调用会获取9999条记录。因此,数据延迟没有得到减少。
消费者大约需要5分钟来处理10000条记录,因此也无法达到读取吞吐量。
是否有对此的解释或我可以研究的指标,以进一步调试此问题?
我不熟悉您的特定应用程序,因此可能与此无关,但KDS增强型扇形分叉可能会有帮助:
https://docs.aws.amazon.com/streams/latest/dev/enhanced-consumers.html
您可能还想考虑延长保留期。
请注意,这两项建议均需支付额外费用。
根据您的记录大小,这可能是因为以下Kinesis服务限制:
通过GetRecords,每个碎片最多可支持每秒2 MB的最大总数据读取速率。如果对GetRecords的调用返回10 MB,则在接下来的5秒内进行的后续调用会引发异常。
如果这确实是您遇到的限制,那么您可能需要考虑添加更多碎片。
首先,我知道这个查询有点混乱,但它可以正常工作,直到至少有一条记录存在,并且设置为true,此时没有返回任何记录。如果有另一条记录的设置为false或两者的组合,则它可以正常工作,即返回的记录的所有票证总数都设置为0或适当的值。 我已将查询更新为,并将票证表联接更改为left(也尝试了full outer),但它仍然存在上述问题。 为什么会发生这种情况,我能做些什么来防止它?
问题内容: 我有这样的一对一关系 父母 和孩子 } 我想创建返回具有孩子isNotNull的父母的条件,我尝试过像 但是没有用,请给我一个例子,能帮我吗?谢谢 问题答案: 首先,映射是错误的。在父类中,您是说该关联是由映射的,而在您说该关联是使用名为的连接列进行映射之后。下定决心 它是由属性映射的,应该删除。或者它是由JoinColumn映射的,您应该在子级中删除,并在Child实体中使用。 现在
我们正在使用Spring Kafka 2.2.2版本从Kafka中检索记录,使用@KafkaListener和Con电流tKafkaListenerContainerFactory。我们已经配置了max-pore-记录为5,但是它总是在列表中只给消费者1条记录,而不是5条记录。 虽然配置相同,但它在Spring Kafka 2.1中也能工作。4.释放。 这是我们的申请表。yml配置: 以下是我们的
我目前正在为H264视频流编写解码器。目标平台是Android,所以我使用的是MediaCodec API(Android OS>=6.0)。 我在4个设备上测试了我的代码(4个设备上都是相同的): 它在小米红米5 Plus上运行得很好(实际上速度相当快)。 在Nexus 7和三星Galaxy Tab A上运行速度非常慢 它在Samsung Galaxy Tab S2上失败,在(和返回正确的值()
我试图创建一个函数,返回一个带有页面的对象列表(来自Spring数据)。 有10个元素,但totalElements=110,totalPages=2,当10个元素轻松进入一个包含100个元素的页面时 PS:我被迫使用的对象MongoTem板,其中没有查找功能,需要一个可分页。所以我被迫手动创建它。 我使用的代码是: 订单是我的结果列表(这是正确的),页面定义如下: 谢谢你所做的一切
问题内容: 我想从MySQL查询返回第二条,第三条或第四条记录(基于ID递增的查询) 问题是,我不知道ID,只是它是查询中的第三行。 问题答案: 它说从记录n开始返回一个记录。