有人尝试过在 Apache Flink 中使用 DynamoDB 流吗?
Flink 有一个 Kinesis 消费者。但我正在寻找如何直接使用 Dynamo 流。
DataStream<String> kinesis = env.addSource(new FlinkKinesisConsumer<>(
"kinesis_stream_name", new SimpleStringSchema(), consumerConfig));
我尝试了很多搜索,但没有找到任何东西。但是发现 Flink Jira 板有一个待处理的请求。所以我想这个选项还不可用?我还有什么选择?
允许 FlinkKinesisConsumer 适应 AWS DynamoDB Streams
更新答案 - 2019
FlinkKinesisConsumer连接器现在可以在此之后处理 DynamoDB 流吉拉门票已实施。
更新的答案
看来 Apache Flink 不使用 DynamoDB 流连接器adapter,因此它可以从 Kinesis 读取数据,但无法从 DynamoDB 读取数据。
我认为一种选择是实现一个应用程序,将数据从 DynamoDB 流写入 Kinesis,然后从 Apache Flink 中的 Kinesis 读取数据并进行处理。
另一种选择是为 Apache Flink 实现自定义 DynamoDB 连接器。您可以使用现有连接器作为起点。
您还可以查看Apache Spark Kinesis 连接器。但似乎它也有同样的问题。
原答案
DynamoDB 有一个 Kinesis 适配器,允许您使用 DynamoDB 更新流Kinesis 客户端库。使用 Kinesis 适配器是使用 DynamoDB 更新的推荐方式(根据 AWS)。这将为您提供与直接使用 DynamoDB 流(也称为 DynamoDB 低级 API)相同的数据。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)