On Fri, Jul 27, 2012 at 01:47:14PM -0400, George Porter wrote:
> On Jul 27, 2012, at 10:31 AM, Robert Escriva <
esc...@cs.cornell.edu> wrote:
> >
> > Thanks for requesting this feature again. People have requested
> > pub/sub-like functionality in the past. It's a popular feature request
> > and we've put it on our TODO list.
>
> Ah, apologies for asking multiple times. I did a search through the
> Google Groups archive and didn't see anything about this topic, but
> hadn't checked the TODO.
No worries. The repeated requests help us understand what new features
would be most useful so we can direct our efforts to add them.
> > From what I've seen, the primary motivation for the pub/sub feature is
> > usually a high-performance work queue.
> >
> > If you had available a dedicated work-queue service which was more
> > efficient than a key-value store, would you still need pub/sub in the
> > key-value store?
>
> I would say yes. The model I'm considering is where a variety of
> systems are pushing/pulling data to/from the key-value store, but
> there is still a need for a "control plane." For example, imagine
> that nodes push status information like system utilization, systems
> metrics, etc. But every now and then they want to receive a control
> message from some central controller. In that case I could have each
> machine poll for new commands from a queue, but it would also be good
> to have each machine just subscribe to a queue and get notified when
> there is a new message for it.
>
> You're right that these could be two separate systems, but the control
> and key/value content isn't unrelated, and so having a single data
> store would be convenient.
>
> Thanks, George
>
> > -Robert
I see the utility in having the key-value store notify on update. I can
also imagine many different optimizations and conveniences that a
standalone service would provide above and beyond those that come from
pub/sub in a key-value store. It is always possible to refer to content
in the key-value store from a separate service.
In any case, we are considering both options and will keep you and the
community updated with our ideas.
Thanks,
Robert