commit | 34074b722b60a4c13041f9c9cb6db4e88e2cec6d | [log] [tgz] |
---|---|---|
author | Enrico Olivelli <eolivelli@gmail.com> | Sat Nov 21 18:45:47 2020 +0100 |
committer | GitHub <noreply@github.com> | Sat Nov 21 09:45:47 2020 -0800 |
tree | cc755f2b5a604de3cca36ec187a187789dc8648d | |
parent | 1d623b4c39a604a254dffcb8ef6bba8df4feb770 [diff] |
Opportunistic Striping ### Motivation If you have a very small cluster, 3 bookies, you must use **2-2-2** as replication parameters in order to guarantee durability and tolerate the failure of at least one bookie. With this situation you cannot leverage the striping feature of BookKeeper, when **ensembleSize > writeQuorumSize**. With striping you can distribute your data among all of the bookies, and use better the available disk space. You can also exploit the ability to write to/read from more disks (bookies) in parallel, achieving better overall performances. With this change we introduce a new client option "opportunistic striping", that basically tells to the BK client to use as much bookies as configured in the ensembleSize parameter in the best case scenario, and to use less and less bookies, up to the configured writeQuorumSize. ### Changes - New ClientConfiguration option "opportunisticStriping" - in case of opportunisticStriping the client is allowed to use less bookies than the requested ensemble size, up to writeQuorumSize - add test cases Reviewers: Nicolò Boschi <boschi1997@gmail.com>, Anup Ghatage <ghatage@apache.org> This closes #2493 from eolivelli/fix/bp-43-impl-auto-striping
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:
You can also read Turning Ledgers into Logs to learn how to turn ledgers into continuous log streams. If you are looking for a high level log stream API, you can checkout DistributedLog.
For filing bugs, suggesting improvements, or requesting new features, help us out by opening a Github issue or opening an Apache jira.
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.
We feel that a welcoming open community is important and welcome contributions.
See Developer Setup to get your local environment setup.
Take a look at our open issues: JIRA Issues Github Issues.
Review our coding style and follow our pull requests to learn about our conventions.
Make your changes according to our contribution guide.