Here we are with this summary about the presentation of Apache BookKeeper by Matthieu Morel and Ivan Kelly on June 19th .
In this presentation we saw the main reason to use BookKeeper : reliable distributed logging. As a subproject of ZooKeeper its purpose is to give reliability to distributed log systems ( specially for Databases ).
Its architecture is based in bookies ( servers ) , ledgers ( log streams ) and ledgers entries ( log unit ).
When its needed to store logs we need to have consistency and reliability avoiding problems when the node is down , or the network is down, and also to provide an "assurance" to all the readers and writers for their operations are successfully executed and replicated . BookKeeper achieves high availability and strong durability guarantees by replicating ledger entries across multiple bookies.
It uses ZooKeeper underneath for the consistence mechanisms between the ledgers, providing strategies to use other bookies when one is down.
Here you can have the video and the slides for the presentation.