-
Notifications
You must be signed in to change notification settings - Fork 465
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
db: add DeleteSized and corresponding compaction heuristics
Add a new write operation and corresponding internal key kind for delete operations that know the size of the value they're deleting. SSTable writers aggregate these estimates into table properties that are then used to improve compaction-picking heuristics. This is particularly useful in scenarios with heterogeneous value sizes that are easily misestimated by existing heuristics that rely on averages. When a DELSIZED tombstone deletes a key, it's mutated to reflect that the deletion has already occurred. If the size carried within the tombstone's value was accurate, the tombstone's value is removed. If the size was not accurate, the tombstone is mutated into an ordinary DEL tombstone which will be subject to typical average-based heuristics. Close #2340.
- Loading branch information
Showing
59 changed files
with
3,116 additions
and
527 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.