Apache BookKeeper - a scalable, fault tolerant and low latency storage service optimized for append-only workloads

Clone this repo:
  1. 3a5cf9d Fix the stream client python package name (#4703) by Yong Zhang · 14 days ago master
  2. 1f9440b Release note for 4.17.3 (#4700) by Yong Zhang · 2 weeks ago
  3. 44607a0 [fix]Fix entry loss due to incorrect lock of LedgerHandle (#4701) by fengyubiao · 2 weeks ago
  4. 9ce7cc9 Upgrade netty to 4.1.130 Final (#4699) by Yong Zhang · 3 weeks ago
  5. b88fb5f Replace net.jpountz.lz4:lz4 with at.yawk.lz4:lz4-java (#4696) by Masahiro Sakamoto · 3 weeks ago

Maven Central

Apache BookKeeper

Apache BookKeeper is a scalable, fault-tolerant and low latency storage service optimized for append-only workloads.

It is suitable for being used in following scenarios:

  • WAL (Write-Ahead-Logging), e.g. HDFS NameNode, Pravega.
  • Message Store, e.g. Apache Pulsar.
  • Offset/Cursor Store, e.g. Apache Pulsar.
  • Object/Blob Store, e.g. storing state machine snapshots.

Get Started

  • Checkout the project website.
  • Concepts: Start with the basic concepts of Apache BookKeeper. This will help you to fully understand the other parts of the documentation.
  • Follow the Installation guide to set up BookKeeper.

Documentation

Please visit the Documentation from the project website for more information.

Get In Touch

Report a Bug

For filing bugs, suggesting improvements, or requesting new features, help us out by opening a GitHub issue.

Need Help?

Subscribe or mail the user@bookkeeper.apache.org list - Ask questions, find answers, and also help other users.

Subscribe or mail the dev@bookkeeper.apache.org list - Join development discussions, propose new ideas and connect with contributors.

Join us on Slack - This is the most immediate way to connect with Apache BookKeeper committers and contributors.

Contributing

We feel that a welcoming open community is important and welcome contributions.

Contributing Code

  1. See our installation guide to get your local environment setup.

  2. Take a look at our open issues: GitHub Issues.

  3. Review our coding style and follow our pull requests to learn more about our conventions.

  4. Make your changes according to our contributing guide