摘要:需求 在生产环境中,会遇到最近消费的几个小时数据异常,想重新按照时间消费。 例如,要求按照时间,消费前一天的数据。 关键字 OffsetAndTimestamp offsetAndTimestamp = topicPartitionOffsetAndTimestampMap.get(topicPar
阅读全文
摘要:关键字 kafkaConsumer.seek(topicPartition,100); // 指定offset 实现代码 package com.lzh.kafka; import org.apache.kafka.clients.consumer.ConsumerConfig; import or
阅读全文
摘要:手动提交offset 手动提交offset的方法有两种:分别是commitSync(同步提交)和commitAsync(异步提交)。 相同点:都会将本次提交的一批数据最高的偏移量提交 不同点: 同步提交:阻塞当前线程,一直到提交成功,并且会自动失败重试(由不可控因素导致,也会出现提交失败); 异步提
阅读全文
摘要:需求 创建一个消费者,消费Mytopic主题指定分区3中的数据。 实现代码 package com.lzh.kafka; import org.apache.kafka.clients.consumer.ConsumerConfig; import org.apache.kafka.clients.
阅读全文
摘要:buffer.memory 缓冲区大小,默认 32M properties.put(ProducerConfig.BUFFER_MEMORY_CONFIG,33554432); batch.size 批次大小,默认16k properties.put(ProducerConfig.BATCH_SIZ
阅读全文
摘要:需求 通过一个分区器实现,发送过来的数据中如果包含kafka,就发往0号分区,不包含kafka,就发往1号分区。 代码实现 分区器 package com.lzh.kafka; import org.apache.kafka.clients.producer.Partitioner; import
阅读全文
摘要:kafka 分区策略 1.指明partition的情况下,直接将指明的值作为partition值; 例如partition=0,所有数据写入分区02.没有指明partition值但有key的情况下,将key的hash值与topic的partition数进行取余得到partition值; 例如:key
阅读全文
摘要:基础环境 kafka集群 bigdata01、bigdata02、bigdata03、bigdata04、bigdata05 pom配置 <!-- kafka 客户端依赖--> <dependency> <groupId>org.apache.kafka</groupId> <artifactId>
阅读全文