kafka
tydhot
gogogo
展开
-
spark KafkaRDD的理解
Spark版本 2.4.0先从0-8版本的kafka说起。当jobGenerator根据时间准备生成相应的job的时候,会依次在graph中调用各个输入流的getOrCompute()方法来获取得到rdd,在这里DirectKafkaInputDStream的compute()方法将会被调用,在这里将会在driver端生成一个时间批次的rdd,也就是KafkaRDD。KafkaR...原创 2020-01-19 00:41:47 · 1670 阅读 · 0 评论 -
spark多个kafka source采用同一个group id导致的消费堆积延迟
Kafka版本0.10.0spark版本 2.1Spark streaming在同一个application中多个kafka source当使用一个group id的时候订阅不同topic会存在消息消费堆积,并且控制页面streaming时间会存在严重延时。在spark根据存在的输出流依次生成job的时候,将会依次串行调用各个kafka source的compute()方法...原创 2019-10-16 00:47:13 · 1598 阅读 · 8 评论 -
kafka java客户端消息的分区与缓存发送
当kafka发送消息的时候,在完成消息的序列化之后,如果没有指定消息的分区,将会通过Partitioner来选择该消息发往的分区,在默认情况下,将采用DefaultPartitioner来进行消息的分区选择。public int partition(String topic, Object key, byte[] keyBytes, Object value, byte[] valueByt...原创 2019-06-19 01:11:51 · 823 阅读 · 0 评论 -
kafka java消费者消息拉取
版本2.4.0Kafka的客户端消费者在启动的过程中会通过ensureActiveGroup()方法来确保自己是可用的消费者,在这个方法中,会向kafka的broker集群发送join请求,在join请求的response中可以得到该生产者所订阅的topic中被分配得到的分区信息。而接下来的消息拉取将会只请求此处分配得到的topic分区。此时,当前获得的topic分区的消费偏移量还是未知...原创 2019-07-03 01:25:39 · 4860 阅读 · 0 评论