kafka-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Yonghui Zhao <zhaoyong...@gmail.com>
Subject Re: partition and consumer stream number
Date Wed, 19 Dec 2012 16:32:27 GMT
Thanks Jun, I didn't get you previous answer.
I think I didn't state my question clearly.

I know the number of the consumer in one consumer group should be less or equal than partition
But my question is about the relation between the stream number in one consumer and partition
number subscribed by this consumer.  

For example this piece of code create only one stream in the consumer, so all partitions data
will go into one stream?

    Map<String, Integer> topicCountMap = new HashMap<String, Integer>();
    topicCountMap.put(topic, new Integer(1));
    Map<String, List<KafkaStream<byte[], byte[]>>> consumerMap = consumer.createMessageStreams(topicCountMap);
    KafkaStream<byte[], byte[]> stream = consumerMap.get(topic).get(0);
    ConsumerIterator<byte[], byte[]> it = stream.iterator();

Sent from my iPad

在 2012-12-19,23:49,Jun Rao <junrao@gmail.com> 写道:

> Did you get my previous answer? I am including it below.
> Currently, partition is the smallest unit that we distribute data among consumers (in
the same consumer group). So, if the # of consumers is larger than the total number of partitions
in a Kafka cluster (across all brokers), some consumers will never get any data.
> Thanks,
> Jun
> On Wed, Dec 19, 2012 at 3:07 AM, 永辉 赵 <zhaoyonghui@gmail.com> wrote:
> Hi all,
> In consumer we use a topic count map to set how many stream we want to split
> the topic.
> What's the relation between kafka partition number and consumer stream
> number?
> Seems  stream number should be less or equal to partition number?
> Because if we set stream number bigger than partition number then some
> stream is empty or some partition is split.
> Thanks,
> Yonghui

  • Unnamed multipart/alternative (inline, 7-Bit, 0 bytes)
View raw message