apache / bookkeeper

Apache BookKeeper - a scalable, fault tolerant and low latency storage service optimized for append-only workloads
https://bookkeeper.apache.org/
Apache License 2.0
1.9k stars 903 forks source link

IO Hints #277

Closed jvrao closed 6 months ago

jvrao commented 7 years ago

Is this a question, feature request, or bug report?

FEATURE REQUEST

  1. Please describe the feature you are requesting.

Its well known practice to send hints down to inform application intent to the io stack. T10 has came up with many of these features, and fadvise() and madvise() were introduced to the linux kernel. While there is a huge debate in the Linux community on the pervasiveness and the proper semantics of these hints, it is undeniable fact that the IO stack can do wonders if it has better context and information about the application intent.

  1. Indicate the importance of this issue to you (blocker, must-have, should-have, nice-to-have). Are you currently using any workarounds to address this issue?

Must have for Salesforce; may be nice to have for the community

  1. Provide any additional detail on your proposed use case for this feature.

Current bookkeper storage model is monolithic. It threats all ledgers in the same way. If we have a way for the application to express its interest on:

Knowing this information allows stack to make many adjustments to serve the application well. None of this should affect the correctness or guarantees offered, but rather viewed as performance and cost optimizations. Well one exception to the guarantee is consistency boundary (entry vs ledger)

  1. If there are some sub-tasks using -[] for each subtask and create a corresponding issue to map to the sub task:
shoothzj commented 6 months ago

closed for stale. If you still have interests and how we can implment this. Feel free to add information and reopen this issue.