问题标签 [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.

0 投票
0 回答
358 浏览

java - 将 Kinesis Client Library v2.x 与 DynamoDB Stream Kinesis Adapter 一起使用

我正在构建一个 Java 应用程序,以使用 KCL 库来使用来自 DynamoDB 流的事件。

AWS docs 上的示例使用此库:

这取决于:

但是,在 KCL repo 上,已经有 KCL 的 v2.2.0,具有不同的组 ID:

有没有办法将更新的 KCL 与 DynamoDB 流适配器一起使用?

0 投票
1 回答
125 浏览

amazon-web-services - 如何在我的 AWS 控制台中查看我的 KCL 分片 ID?

我是 AWS Kinesis 的新手。我正在尝试使用 KCL 版本 1(按照此处的亚马逊说明操作: https ://docs.aws.amazon.com/streams/latest/dev/kinesis-record-processor-implementation-app-java.html#kcl -java-interface-original )

我想初始化一个新的 KCL 实例,但我不知道我的分片 ID 是什么。我的控制台显示我有 1 个活动。

我试图在我的亚马逊控制台中找到它,但找不到。谢谢!

0 投票
1 回答
138 浏览

amazon-kcl - 如何在 Java 中暂停 KCL 客户端

我们有一个 Spring 应用程序,它使用 Java KCL 客户端来使用 Kinesis 流中的记录。有没有办法我们可以以某种方式“暂停”KCL 以停止处理记录,然后稍后安全地重新启动它?推荐的方法是什么?

0 投票
0 回答
158 浏览

user-interface - 如何在 javaFx 中实现将处理 Kinesis 记录和更新 GUI 的工作线程?

我正在开发一个微服务监控应用程序。我的应用程序应该在收到新的消费记录时相应地更新 GUI,这意味着:当我收到新记录时:

1)我检查它所代表的请求是否是合法流程的一部分,以及该流程是否已经在 GUI 中具有表示。通过表示,我的意思是一组代表完整流程的圆圈。例如,如果我得到一个交易(MS1 收到请求)合法流 num 1:即 MS1 到 MS2 到 MS3,那么我的 GUI 将添加一个带有 2 个灰色圆圈的表格列:MS1 到 MS2 和 MS2 到 MS3。接下来,当一条记录:从 MS1 收到的 MS2 被消耗时,我会将第一个圆圈涂成绿色,依此类推。

我的问题是:我不明白如何“利用”亚马逊的 KCL 代码(在此处提供)。意思是,我不知道如何使消费记录在我的 JavaFX GUI 中触发事件,该事件将相应地更新 GUI。

帮助将不胜感激!

包 com.kinesisdataconsumer;

0 投票
1 回答
594 浏览

node.js - 更改 aws kcl 的故障转移时间

如果应用程序存在连接问题,AWS 建议增加 KCL (kinesis) 的故障转移时间。 https://docs.aws.amazon.com/streams/latest/dev/troubleshooting-consumers.html

但我找不到如何更改故障转移时间。

我正在寻找(一个或全部):

  • AWS 控制台中的设置

  • node.js kcl 包的设置

  • Terraform 的设置

0 投票
0 回答
158 浏览

node.js - AWS KCL 和处理错误

案子。KCL 从 kinesis 读取一批 500 条记录。发生了一些不好的事情(例如意外错误)。KCL 将丢失所有包含数据的 500 条记录。因为即使发生错误,KCL 也会将这 500 条记录标记为已读并已处理。

如果我使用 AWS Lambdas 而不是 KCL,则所有记录将在错误触发后第二次从 kinesis 中读取。

如果我之前出错,KCL 是否可以像 Lambdas 一样重复从 Kinesis 读取相同的记录?

0 投票
1 回答
34 浏览

amazon-kinesis - 如何访问 Kinesis 流中的特定记录?

我有一个 Kinesis 流处于活动状态并正在运行,我使用 KCL 库为它编写了一个生产者和一个消费者。有没有可能使用序列号和分区键访问特定记录的方法?

0 投票
1 回答
80 浏览

java - 有没有办法从 kinesis 中消费样本记录?

我使用 KCL 编写了一个 Amazon Kinesis 消费者,它管理我的记录处理任务。它当前正在处理记录而不进行过滤。我正在寻找一种方法来处理样本记录,同时跳过其中一些。

例如,如果总共有 100 条记录,我想只处理其中的 1/10(10 条样本记录)。

谢谢!

0 投票
2 回答
997 浏览

amazon-web-services - Kinesis 使用者在使用 KCL 时需要哪些 IAM 权限?

我有一个使用 Kinesis Client Library (KCL) 编写的 Kinesis 消费者。此使用者在假定的 IAM 角色下运行。

我从文档中读到:

KCL 使用应用程序名称创建一个 DynamoDB 表,并使用该表来维护应用程序的状态信息(例如检查点和工作分片映射)。每个应用程序都有自己的 DynamoDB 表。有关更多信息,请参阅跟踪 Amazon Kinesis Data Streams 应用程序状态。

当然,我需要将dynamodb:CreateTable权限添加到我的 IAM 角色。但是,我在其他方面遇到了错误(例如dynamodb:DescribeTable)。

是否有我的 KCL 使用者需要访问的所有 DynamoDB 操作的列表?似乎缺少文档,我宁愿拥有一个权威列表,也不愿继续尝试运行我的应用程序。

0 投票
1 回答
411 浏览

python-3.x - 使用 Docker 容器实现 KCL

我有一个用例,其中存在一个我不知道有多少分片的现有 Kinesis 流。但是,我必须创建一个从分片中消耗的消耗应用程序,并且我还必须对应用程序进行 Dockerize 化。

我正在查看此 docker 图像链接以执行相同的操作:https ://github.com/alexdebrie/kclpy

我的问题是,因为我不知道有多少分片,所以我只启动了一个包含我的消费者代码的容器。所以实际上,如果我的 kinesis 有 5 个分片并且我只启动 1 个容器,KCL 将如何处理分配?

它会为每个分片创建进程或线程吗?无论哪种方式,docker 将如何处理多个进程/线程的创建?

有人可以给我一些提示,因为我很新,无法从文档中学到很多东西。

提前致谢