kafka-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Churu Tang <ct...@rubiconproject.com>
Subject Re: Question concerning partitionNumber and Key
Date Thu, 06 Mar 2014 19:16:45 GMT
Now I understand. The key in the messages will no longer be used after the partition number
is specified in the produce request.


On Mar 6, 2014, at 10:41 AM, Joel Koshy <jjkoshy.w@gmail.com> wrote:

> It is done by the producer - it calls the partitioner before creating
> the producer-request.
> On Thu, Mar 06, 2014 at 10:17:22AM -0800, Churu Tang wrote:
>> Thanks for the reply! If the broker does not make the decision, then where and how
the key is used to calculate the partition number?
>> On Mar 5, 2014, at 5:42 PM, Joel Koshy <jjkoshy.w@gmail.com> wrote:
>>>> I have 2 questions about the partition number and key. 
>>>> 1. The produceRequest will  explicitly include a partitionNumber, and messageSet
which contains messages with key(can be NULL, used to calculate partitionNumber when specified).
I am assuming all the messages in the messageSet will be published to the partitionNumber
specified. So My question is, since the partitionNumber is explicitly specified in the produce
request, will the key still be used in calculating the partition number when the request is
handled at the server side? If so, how?
>>> The broker does not make this decision. i.e., it will attempt to
>>> append the message to the partition specified in the produce request.
>>>> 2. In the introduction, it mentioned we can customize the kafka.producer.Partitioner
to influence the routing decision. Would you please tell me where I can add my own Partitioner?
I use the kafka_2.8.0-0.8.0 binary, and the C++ client supporting kafka 0.8. 
>>> Which C++ library do you use? Non-java clients are maintained outside
>>> the main Kafka code base. You will have to contact that client's
>>> maintainer to get an answer to this question.
>>> Joel

View raw message