我有一种情况,我想使用Spark DStreams重新处理从Kafka传入的特定批数据。
假设我要重新处理以下几批数据。
主题分区1- {1000,2000} Topic-Partition2- {500-600}
下面是我拥有的代码侦听器,可以在其中指定起始偏移量。
else
但是,无论如何,我也想知道它们的终止偏移量,就像在结构化流批处理模式下一样。
因此,从本质上讲,它应该处理这一小批量并停止工作流程。
注意:在此用例中,我不想使用结构化流。只想使用DStreams。
答案 0 :(得分:0)
找到了一种方法。
val offsetRanges = Array(
// topic, partition, inclusive starting offset, exclusive ending offset
OffsetRange("test", 0, 0, 100),
OffsetRange("test", 1, 0, 100)
)
val rdd = KafkaUtils.createRDD[String, String](sparkContext, kafkaParams, offsetRanges, PreferConsistent)