The high level API gives you access to the raw Kafka event which is 
MessageAndMetadata, which has two pieces: key and actual message.

Best Regards,

-Jonathan


On Aug 18, 2014, at 9:50 AM, Josh J <joshjd...@gmail.com> wrote:

>> One tactic that might be worth exploring is to rely on the message key to
> facilitate this.
> 
>> It would require engineering careful functions for the key which hashes
> to the partitions for your topic(s). It would also mean that your consumers
> for the topic would be evaluating the key and discarding messages that
> aren’t relevant.
> 
>> The only other option I can think of if you are using the high-level API
> would be finer-grained topics.
> 
> Yes, this works great ! My producer is bucketing the messages based on the
> key (the key is a timestamp and I simply mod the timestamp as a function of
> the number of buckets). I can then do the same function on the consumer
> when it reads the key. I'm essentially implementing consumer sliding
> window. Any suggestions or tips on where I would implement reading the
> message key?
> 
> Thanks,
> Josh
> 
> 
> On Mon, Aug 18, 2014 at 6:43 PM, Jonathan Weeks <jonathanbwe...@gmail.com>
> wrote:
> 
>> One tactic that might be worth exploring is to rely on the message key to
>> facilitate this.
>> 
>> It would require engineering careful functions for the key which hashes to
>> the partitions for your topic(s). It would also mean that your consumers
>> for the topic would be evaluating the key and discarding messages that
>> aren’t relevant.
>> 
>> The only other option I can think of if you are using the high-level API
>> would be finer-grained topics.
>> 
>> Best Regards,
>> 
>> -Jonathan
>> 
>> On Aug 18, 2014, at 9:14 AM, Josh J <joshjd...@gmail.com> wrote:
>> 
>>> Is it possible to modify and use the high level consumer so that I can
>>> ignore processing certain partitions?
>>> 
>>> 
>>> On Mon, Aug 18, 2014 at 5:07 PM, Sharninder <sharnin...@gmail.com>
>> wrote:
>>> 
>>>> On Mon, Aug 18, 2014 at 7:27 PM, Josh J <joshjd...@gmail.com> wrote:
>>>> 
>>>>>> You can see an example of using the SimpleConsumer here
>>>>> <
>>>>> 
>>>>> 
>>>> 
>> https://cwiki.apache.org/confluence/display/KAFKA/0.8.0+SimpleConsumer+Example
>>>>>> 
>>>>> 
>>>>> Any suggestions on where in the code to modify the high level producer
>> to
>>>>> support reading from specific partitions ?
>>>>> 
>>>>> 
>>>> High level producer? I'm assuming you meant to write the high level
>>>> consumer, in which case it isn't possible. The link above, which has an
>>>> example for reading messages off a specific partition, is for the Simple
>>>> consumer, which ironically, is more complex than the high level
>> consumer.
>>>> 
>>>> In short, if you have a usecase where you want to read from a specific
>>>> partition, you will need to implement a simple consumer.
>>>> 
>>>> --
>>>> Sharninder
>>>> 
>>>> Josh
>>>>> .
>>>>> 
>>>>> On Thu, Aug 14, 2014 at 4:27 PM, Neha Narkhede <
>> neha.narkh...@gmail.com>
>>>>> wrote:
>>>>> 
>>>>>> You can see an example of using the SimpleConsumer here
>>>>>> <
>>>>>> 
>>>>> 
>>>> 
>> https://cwiki.apache.org/confluence/display/KAFKA/0.8.0+SimpleConsumer+Example
>>>>>>> 
>>>>>> .
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> On Thu, Aug 14, 2014 at 3:23 AM, Sharninder <sharnin...@gmail.com>
>>>>> wrote:
>>>>>> 
>>>>>>> Implement the low level "Simple Consumer".
>>>>>>> 
>>>>>>> --
>>>>>>> Sharninder
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> On Thu, Aug 14, 2014 at 2:16 PM, Josh J <joshjd...@gmail.com> wrote:
>>>>>>> 
>>>>>>>> Hi,
>>>>>>>> 
>>>>>>>> Suppose I have N partitions. I would like to have X different
>>>>> consumer
>>>>>>>> threads ( X < N) read from a specified set of partitions. How can I
>>>>>>> achieve
>>>>>>>> this?
>>>>>>>> 
>>>>>>>> Thanks,
>>>>>>>> 
>>>>>>>> Josh
>>>>>>>> 
>>>>>>> 
>>>>>> 
>>>>> 
>>>> 
>> 
>> 

Reply via email to