Consider separating a storage backend (e.g. take a look at bitcask)?Snapshot, 
data store, WAL are in backend now.Zab still maintains a local consistent log.
What's nice about this? Extending kv size beyond mem.The performance should be 
the same, which is the disk IO (batch) thruput -- the bottleneck.

- Hongchao Deng

> Date: Thu, 18 Sep 2014 22:48:36 -0700
> Subject: Re: intern project idea: decouple zab from zookeeper
> From: [email protected]
> To: [email protected]
> CC: [email protected]
> 
> Hi,
> 
> Yisheng extended his internship for another three month. Here is the
> current status of the project:
> 
> - Released 0.1.0. This is an alpha quality release, and it supports
> all the basic functionalities including snapshot, reconfiguration, and
> SSL. http://search.maven.org/#artifactdetails|com.github.zk1931|jzab|0.1.0|jar
> - Performance looks reasonable. It can do about 22k requests per
> second on a 3-node cluster even though our log implementation is
> fairly naive. https://github.com/zk1931/jzab/wiki
> 
> Yisheng started working on a Curator-like library on top of jzab that
> can support data structures like map and queue. Let me know if you
> have any other interesting project ideas.
> 
> Thanks!
> --Michi
> 
> On Wed, Jul 16, 2014 at 1:37 AM, Flavio Junqueira <[email protected]> 
> wrote:
> > Great job, Yisheng, Michi!
> >
> > -Flavio
> >
> >
> > On Wednesday, July 16, 2014 6:04 AM, Michi Mutsuzaki <[email protected]>
> > wrote:
> >
> >
> >
> > Hi,
> >
> > Yisheng has been working on this project for about 5 weeks for his
> > 12-week internship. Here is the current status:
> >
> > - First of all, let me thank Flavio and Hongchao for their help. I
> > don't think the project would be where it is right now without their
> > support.
> > - We have more or less functional implementation of zab in java. You
> > can checkout the code here: https://github.com/ZK-1931/javazab
> > - There is a simple reference server. It's an http based key-value
> > store that uses javazab for replicating state:
> > https://github.com/ZK-1931/zabkv
> > - The implementation is missing 2 major features, dynamic
> > reconfiguration and snapshotting. Yisheng is about to start working on
> > dynamic reconfiguration.
> >
> > It's fairly easy to run the reference server. It would be great if you
> > can play around with it and give us feedback.
> >
> > Thanks!
> > --Michi
> >
> > On Tue, Jun 3, 2014 at 11:46 PM, Michi Mutsuzaki <[email protected]>
> > wrote:
> >> The intern hasn't started yet, but here is the github repo in case
> >> anybody is interested.
> >>
> >> https://github.com/ZK-1931/javazab
> >>
> >> On Tue, Jun 3, 2014 at 3:20 PM, Michi Mutsuzaki <[email protected]>
> >> wrote:
> >>> Thanks Flavio and Raul. I feel much more confident with your support.
> >>> Also, it would be a good learning experience for the intern and me.
> >>> Let's do this from scratch. I'll set up a github repo.
> >>>
> >>> On Tue, Jun 3, 2014 at 12:51 PM, Raúl Gutiérrez Segalés
> >>> <[email protected]> wrote:
> >>>> On 3 June 2014 12:44, Flavio Junqueira <[email protected]>
> >>>> wrote:
> >>>>>
> >>>>> It would be great to do a clean implementation of Zab. We have added a
> >>>>> lot
> >>>>> crap for backward compatibility, and the reconfig stuff, although a
> >>>>> great
> >>>>> feature properly implemented, didn't improve the state of the code.
> >>>>> Also, an
> >>>>> implementation of the Zab protocol perhaps putting snapshots aside for
> >>>>> v0.1,
> >>>>> shouldn't take more than just a few weeks.
> >>>>>
> >>>>> If you do it openly say on github, then I volunteer to help.
> >>>>
> >>>>
> >>>> A clean-room implementation of ZAB could indeed be awesome for multiple
> >>>> purposes. Reasoning around the current implementation is some times
> >>>> challenging for us missing the historical context.
> >>>>
> >>>> Would be more than happy to help with reviews and such as well.
> >>>>
> >>>>
> >>>> -rgs
> >
                                          

Reply via email to