Re: Ordered Message Queue with Pool of Consumers

2015-06-01 Thread Jason Rosenberg
How would you apply total ordering if multiple messages are being consumed
in parallel?   If message-1 and message-2 are being consumed in parallel,
do you really mean you want to guarantee that message-1 is consumed before
the consumption of message-2 begins?

On Tue, May 26, 2015 at 1:34 PM, Kumar Jayanti 
wrote:

> Thanks for your response.
>
>  The requirement is to have total ordering across partitions.  I do have a
> Key and all my consumers would be in the same consumer group.  I am new to
> kafka and so  would like to reconfirm my understanding of  your last
> statement :
>
> "So assuming you have a key you can assign to organize them, you should be
> able to use many topic partitions and consumers."
>
>  Let me  explore a bit more on your suggestion and come back if i have
> further doubts.
>
> thanks.
>
>
>
>
>
>
>
> On Tue, May 26, 2015 at 10:42 PM, Ewen Cheslack-Postava  >
> wrote:
>
> > Messages are consumed in order from each topic partition. You can make
> sure
> > messages end up in the same topic partition by making them have the same
> > key, or by explicitly mapping them to partitions yourself when producing
> > them.
> >
> > To parallelize consumption, you use a consumer group. Each time you
> create
> > a consumer, you can specify the group it should be in and work is
> > automatically balanced across all the members of the group. This is done
> on
> > a per topic-partition basis, so when the consumer group membership is
> > stable, a single consumer will see all the messages from a given topic
> > partition in order.
> >
> > So assuming you have a key you can assign to organize them, you should be
> > able to use many topic partitions and consumers.
> >
> > On Tue, May 26, 2015 at 9:51 AM, Kumar Jayanti 
> > wrote:
> >
> > >  Our system has a specific message type that requires total ordering.
> > > Message-1 should be consumed (acted upon) before Message-2 is consumed.
> > > However since we have a cluster of  consumer nodes we would like to
> > > round-robin the processing of messages if possible to different nodes
> > while
> > > maintaining the ordering.  Is this possible ?
> > >
> > > From my reading it appears we have to pin it down to  a Topic with
> Single
> > > Partition with Single Consumer Process but i may be wrong ?.
> > >
> >
> >
> >
> > --
> > Thanks,
> > Ewen
> >
>


Re: Ordered Message Queue with Pool of Consumers

2015-05-26 Thread Kumar Jayanti
Thanks for your response.

 The requirement is to have total ordering across partitions.  I do have a
Key and all my consumers would be in the same consumer group.  I am new to
kafka and so  would like to reconfirm my understanding of  your last
statement :

"So assuming you have a key you can assign to organize them, you should be
able to use many topic partitions and consumers."

 Let me  explore a bit more on your suggestion and come back if i have
further doubts.

thanks.







On Tue, May 26, 2015 at 10:42 PM, Ewen Cheslack-Postava 
wrote:

> Messages are consumed in order from each topic partition. You can make sure
> messages end up in the same topic partition by making them have the same
> key, or by explicitly mapping them to partitions yourself when producing
> them.
>
> To parallelize consumption, you use a consumer group. Each time you create
> a consumer, you can specify the group it should be in and work is
> automatically balanced across all the members of the group. This is done on
> a per topic-partition basis, so when the consumer group membership is
> stable, a single consumer will see all the messages from a given topic
> partition in order.
>
> So assuming you have a key you can assign to organize them, you should be
> able to use many topic partitions and consumers.
>
> On Tue, May 26, 2015 at 9:51 AM, Kumar Jayanti 
> wrote:
>
> >  Our system has a specific message type that requires total ordering.
> > Message-1 should be consumed (acted upon) before Message-2 is consumed.
> > However since we have a cluster of  consumer nodes we would like to
> > round-robin the processing of messages if possible to different nodes
> while
> > maintaining the ordering.  Is this possible ?
> >
> > From my reading it appears we have to pin it down to  a Topic with Single
> > Partition with Single Consumer Process but i may be wrong ?.
> >
>
>
>
> --
> Thanks,
> Ewen
>


Re: Ordered Message Queue with Pool of Consumers

2015-05-26 Thread Ewen Cheslack-Postava
Messages are consumed in order from each topic partition. You can make sure
messages end up in the same topic partition by making them have the same
key, or by explicitly mapping them to partitions yourself when producing
them.

To parallelize consumption, you use a consumer group. Each time you create
a consumer, you can specify the group it should be in and work is
automatically balanced across all the members of the group. This is done on
a per topic-partition basis, so when the consumer group membership is
stable, a single consumer will see all the messages from a given topic
partition in order.

So assuming you have a key you can assign to organize them, you should be
able to use many topic partitions and consumers.

On Tue, May 26, 2015 at 9:51 AM, Kumar Jayanti 
wrote:

>  Our system has a specific message type that requires total ordering.
> Message-1 should be consumed (acted upon) before Message-2 is consumed.
> However since we have a cluster of  consumer nodes we would like to
> round-robin the processing of messages if possible to different nodes while
> maintaining the ordering.  Is this possible ?
>
> From my reading it appears we have to pin it down to  a Topic with Single
> Partition with Single Consumer Process but i may be wrong ?.
>



-- 
Thanks,
Ewen


Ordered Message Queue with Pool of Consumers

2015-05-26 Thread Kumar Jayanti
 Our system has a specific message type that requires total ordering.
Message-1 should be consumed (acted upon) before Message-2 is consumed.
However since we have a cluster of  consumer nodes we would like to
round-robin the processing of messages if possible to different nodes while
maintaining the ordering.  Is this possible ?

>From my reading it appears we have to pin it down to  a Topic with Single
Partition with Single Consumer Process but i may be wrong ?.