hadoop-zookeeper-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Patrick Hunt <ph...@apache.org>
Subject Re: Using watcher for being notified of children addition/removal
Date Mon, 02 Aug 2010 17:12:49 GMT
You may want to consider adding a distributed queue to your use of ZK. 
As was mentioned previously, watches don't notify you of every change, 
just that a change was made. For example multiple changes may be 
"visible" when you get the notification.

A distributed queue would allow you to "log" every change, and have your 
"watcher" process easily process the result. The only issue I could see 
is one of atomicity, but depending on your use case(s) that may not be 
an issue, or perhaps one that can be worked around.


On 08/02/2010 09:18 AM, Ted Dunning wrote:
> Another option besides Steve's excellent one would be to keep something like
> 1000 nodes in your list per znode.  Many update patterns will give you the
> same number of updates, but the ZK transactions that result (getChildren,
> read znode) will likely be more efficient, especially the getChildren call.
> Remember, it is not a requirement that you have a one-to-one mapping between
> your in-memory objects and in-zookeeper znodes.  If that works, fine.  If
> not, feel free to be creative.
> On Mon, Aug 2, 2010 at 7:45 AM, Steve Gury
> <steve.gury@mimesis-republic.com>wrote:
>> Is there any recipe that would provide this feature (or a work around) ?

View raw message