问题标签 [amazon-kcl]
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.
amazon-kinesis - KCL 如何在内部产生新的 RecordProcessor
我有一个 Java 使用者(KCL 实现)来使用来自 1 个带有 2 个分片的 Kinesis 流的消息。
KCL 创建 2 个与每个分片相关的 RecordProcessor。
然后我让我的机器进入睡眠状态,所以 JVM 暂停了。唤醒时,KCL 库在原来的 2 个 RecordProcessor 之外创建 2 个额外的 RecordProcessor。因此,对于每个分片,有 2 个处理器会导致冲突。
预期的行为是在原始 RecordProcessor 仍然存在时不生成 2 个新 RecordProcessor。KCL 中处理生成新 RecordProcessor 的逻辑的代码在哪里?
amazon-dynamodb - 有没有办法从 Dynamo DB 流中读取固定数量的工人和租约而没有任何问题
我不断将数据发布到启用了流的 dynamoDB 中。我正在使用 KCL 的 DynamoDB apadter 阅读此流。
我正在使用 1 个 KCL 工人和 5 个租约。在创建时,我的 Dynamo 表有 1 个分区(1 个 RCU 和 999WCU)。当我继续将数据发布到 dynamo 时,分区数会增加,活动分片数也会增加。在活动分片数为 5 之前,读取都很好。一旦超过 5,KCL 就无法从其中一个分片中读取(tps 正在下降)。
是否有任何我可以设置的配置/参数允许我使用固定的租约数从增长的分片中读取?
amazon-ec2 - 在多个 EC2 实例上运行的同一个 Kinesis Consumer
我有多个 EC2 实例为同一个微服务运行,该微服务有一个 Kinesis 消费者正在运行(使用 KCL)。
我的问题是,当 Kinesis 流收到一个新事件时,由于所有消费者都在轮询,所有实例的消费者是否会消费同一个事件?
amazon-web-services - AWS KCL C# 不处理记录
所以我是 AWS Kinesis 的新手,我有一个基础生产者可以很好地使用我的默认配置文件,该配置文件在商店中有我的 IAM 用户详细信息。
我可以看到生产者将消息发送到单个流分片。这都很好。
我知道有一个 Kinesis Data Stream API 使用者也使用 AmazonKinesisClient。但我读到的首选方法是使用 KCL 库
https://github.com/awslabs/amazon-kinesis-client-net
所以我从上面的链接下载了示例消费者,并做了以下
- 确保我有用于 SampleConsumer 应用程序的 AWS_ACCESS_KEY_ID 和 AWS_SECRET_ACCESS_KEY 的环境变量
- 确保我安装了 Java
- 编辑 SampleConsumer 命令行参数以包含“--properties kcl.properties --execute”
- 确保 kcl.properties 文件具有正确的 streamName/executableName/regionName(我将其更改为与生产者/我的 AWS 账户的区域匹配,所以 eu-west-2)
然后,当我使用 SampleProducer 从上面运行 SampleConsumer 时,我看到的 SampleConsumer 只是一个空白控制台应用程序。
制作人100%没问题。
有人有想法么?
amazon-kinesis - KCL 应用程序在使用多个流时不会占用所有分片
我有一个使用 KCL 开发的消费者应用程序。应用程序为每个流创建一个Worker
,并且每个流都有多个分片。在不同的执行中,应用程序采用不同数量的分片,并且不会占用所有分片。我只运行一个应用程序实例,我希望消耗所有分片。哪里可能有问题,所以我可以寻找解决它?
谢谢
java - 是否可以无延迟地按需读取 Kinesis 流
我有以下用例
- 我有包含用户数据的运动流。
- 我想根据用户操作读取运动流。
- 根据用户输入过滤记录,保持过滤一段时间,比如说 5 分钟。
- 继续将这些过滤后的批次返回给用户 5 分钟。
- 超时后停止读取运动
问题:有没有使用 KCL 或任何其他库按需阅读 kinesis 的方法,而不会出现任何延迟。Ley 说我可以设置当前未读取的 KCL jvm 应用程序,只要它获得用户操作,就开始阅读。同样,在超时或进一步的用户操作后停止阅读。
我可以编写一个可以做到这一点的逻辑,但想知道 KCL 中是否内置了任何东西。
amazon-web-services - AWS Kinesis 流检查点
我有一个能够处理重复的 Kinesis 流记录的应用程序。我们正在考虑在处理故障方面可以采取的方法。并提出了以下方法:
如果在 期间捕获到异常processRecords
,则应用程序不会检查点。通过这样做,记录将与下一批一起再次发送,间接执行重试。
所以我的问题是 - 当涉及到 Kinesis 流的检查点时,应用程序是否应该总是定期检查点?操纵检查点机制是否被视为反模式?
谢谢
java - 在单个 Java 进程中处理多个 Kinesis 流
我想在同一个 Java 进程中使用 KCL 处理多个 Kinesis 流。
这个想法很简单:为每个流创建一个新的 KCL 实例,然后同时运行工作程序。
我的问题是在这种情况下是否所有 KCL 实例都使用相同的线程池,以及在处理流处理时这个想法是否是一种好的/常见的做法。
谢谢
amazon-web-services - aws KCL(Kinesis 客户端库)库在构建时抛出错误
我正在关注此链接以启动 Amazon KCL、Kinesis 客户端库,因为我需要使用 nodeJ。我在这里执行步骤: https://github.com/awslabs/amazon-kinesis-client 但是当我运行 mvn clean install -Dgpg.skip=true 时,我收到如下错误:
那里有什么问题?aws kcl 还在工作吗?
aws-lambda - aws Lambda 上的 EMR 与 KCL
我们计划使用来自 Kinesis 流的消息。我们需要一一处理事件数据(无窗口,无聚合),我们可以看到从 kinesis 流中读取数据的多个选项:
Kinesis 消费者库
Lambda 函数
EMR 上的 Spark/Flink 流式传输
有人可以分享一下何时应该优先选择一种选择吗?
提前致谢