似乎不是用于 spark plus kinesis 集成的 Kinesis 客户端库应用程序

Seems not a Kinesis client library application for spark plus kinesis integration

我正在查看代码 https://github.com/apache/spark/blob/master/extras/kinesis-asl/src/main/java/org/apache/spark/examples/streaming/JavaKinesisWordCountASL.java

它显示了 kinesis 如何将流数据发送到 SparkContext,然后 spark 可以进一步处理。

在给定的示例代码中,我试图理解这段代码是如何应用 KCL 的 如果我看到 http://docs.aws.amazon.com/kinesis/latest/dev/kinesis-record-processor-implementation-app-java.html 它说 在 Java:

中实施 Amazon Kinesis 应用程序时,您必须完成以下任务

任务

实现 IRecordProcessor 方法 为 IRecordProcessor 接口实现一个 Class 工厂 修改配置属性

但是spark示例代码 https://github.com/apache/spark/blob/master/extras/kinesis-asl/src/main/java/org/apache/spark/examples/streaming/JavaKinesisWordCountASL.java 没有对 IRecordProcessor 和 worker 等的引用

注意:https://spark.apache.org/docs/1.2.0/streaming-kinesis-integration.html 在部署部分下它说 通过创建多个 KinesisRecordProcessor 线程,单个 Kinesis 输入 DStream 可以从 Kinesis 流的多个分片中读取。 但是没有 KinesisRecordProcessor 的实现是它丢失了。或者我遗漏了一些显而易见的东西

有人可以向我解释一下这是 KCL 应用程序吗?

kinesis 流式处理实现负责处理这些交互并从应用程序中抽象出来。参见 https://github.com/apache/spark/tree/master/extras/kinesis-asl/src/main/scala/org/apache/spark/streaming/kinesis