Scala 卡夫卡正在阅读该主题的所有信息
我想在预定的时间间隔内阅读卡夫卡主题中的所有消息,以计算一些全局索引值。我正在做这样的事情:Scala 卡夫卡正在阅读该主题的所有信息,scala,apache-kafka,kafka-consumer-api,Scala,Apache Kafka,Kafka Consumer Api,我想在预定的时间间隔内阅读卡夫卡主题中的所有消息,以计算一些全局索引值。我正在做这样的事情: props.put("key.deserializer", "org.apache.kafka.common.serialization.StringDeserializer") props.put("value.deserializer", "org.apache.kafka.common.serialization.StringDeserializer") props.put("group.
props.put("key.deserializer", "org.apache.kafka.common.serialization.StringDeserializer")
props.put("value.deserializer", "org.apache.kafka.common.serialization.StringDeserializer")
props.put("group.id", "test")
props.put(ConsumerConfig.AUTO_OFFSET_RESET_CONFIG, "earliest")
props.put(ConsumerConfig.MAX_POLL_RECORDS_CONFIG,Int.MaxValue.toString)
val consumer = new KafkaConsumer[String, String](props)
consumer.subscribe(util.Collections.singletonList(TOPIC))
consumer.poll(10000)
consumer.seekToBeginning(consumer.assignment())
val records = consumer.poll(10000)
通过这种机制,我可以获得所有记录,但这是一种有效的方法吗?每个主题大约有20000000(2.1 GB)的记录。 你可能会考虑卡夫卡流库来做这个。它支持不同类型的窗口