Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 22 Next »

Intro

LogCabin is a distributed system that provides a small amount of highly replicated, consistent storage. It is a reliable place for other distributed systems to store their core metadata and is helpful in solving cluster management issues. LogCabin is still in early stages of development and is not yet recommended for actual use.

We've written a paper about the Raft consensus algorithm which LogCabin uses internally. A draft of this paper is available here (PDF).

Source code

LogCabin is still in early stages of development and is not yet recommended for actual use. The source code is here: https://github.com/logcabin/logcabin

Bug tracker

Please report bugs and feature requests to https://github.com/logcabin/logcabin/issues . You'll need a github account (free) to submit new issues.

Topics

Cleaning Tombstones

Comparing Replicas

Linearizability

Compaction

Other Raft Implementations

NamePrimary AuthorsLanguageLicenseStatusWeb siteRow last updated*
Raft.js?Mendel Rosenblum (Stanford)JavascriptN/A

Leader election implemented; no log replication yet.

N/A

2013-05-18

go-raftBen B. Johnson (Sky database)GoMIT

Leader election and log replication implemented but with some correctness issues.

Can reconfigure cluster only by adding one server at a time (no removal).

No log compaction.

https://github.com/benbjohnson/go-raft

2013-05-18

noeleo/raft

Noel Moldvai, Rohit Turumella, Josh Muhlfelder, James Butkovic (Berkeley)

BloomN/ALeader election implemented; no log replication yet.https://github.com/noeleo/raft2013-05-18
whitewater

Adam Midvidy, Anh Mai, Karoun Kasraie, Sanketh Katta (Berkeley)

BloomMIT

Leader election and log replication implemented but with some correctness issues.

Static membership.

No log compaction.

https://github.com/amidvidy/whitewater2013-05-18
kontikiNicolas TrangezHaskellLGPLLeader election implemented; log replication in progress.https://github.com/NicolasT/kontiki2013-05-18
FlottenHenrik Feldt (Jayway)F#MIT

Some leader election implemented; log replication unclear.

Static membership. No log compaction.

https://github.com/haf/Flotten2013-05-18
huckleberryJakob SieversErlangN/AN/A (can anyone read Erlang?)https://github.com/cannedprimates/huckleberry2013-05-18

* This information will become stale. Please prod Diego if you want it updated.

Related work

Chubby (Google)

The Chubby lock service for loosely-coupled distributed systems (OSDI '06)

Paxos Made Live - An Engineering Perspective (PODC '07)

ZooKeeper (Yahoo!, Apache)

ZooKeeper: Wait-free coordination for Internet-scale systems (USENIX '10)

Zab: High-performance broadcast for primary-backup systems (DSN '11)

http://zookeeper.apache.org/

Doozer (Heroku)

http://xph.us/2011/04/13/introducing-doozer.html

https://github.com/ha/doozerd

Paxos

Paxos Made Simple (PODC '01)

See also Paxos Made Live under the Chubby heading.

Paxos Replicated State Machines as the Basis of a High-Performance Data Storevideo (NSDI '11)

Viewstamped Replication

Paxos Made Practical (not published, '07). Note: despite the title, this is actually about Viewstamped Replication, not Paxos.

Viewstamped Replication: A New Primary Copy Method to Support Highly-Available Distributed Systems (PODC '88)

  • No labels