Re:The Kivaloo Data Store
by jasonwatkinspdx on Monday September 21, 2020 @05:34PM
(#24548737)
Is there a place I could learn more about how the background cleaning works?
[ Parent
| on HN ]
I don't think I wrote much documentation about this, sorry. Basically the idea is that there's a pointer which moves through the key-space looking at pages, and if it passes any pages which are "old" it marks them as dirty so that they're rewritten as part of the next batch. The rate at which the cleaning pointer moves through key-space depends on the accumulated "cleaning debt", which is based on the amount of garbage along with the current I/O rate; the aim is to hit a steady-state where the total amount of I/O is constant and the cleaning gets the "left over" I/O after requests are serviced.
Re:The Kivaloo Data Store
by jasonwatkinspdx on Tuesday September 22, 2020 @10:50PM
(#24562451)
Just wanted to follow up to say I really like how clean and well commented this code is.
Re:The Kivaloo Data Store
by jasonwatkinspdx on Monday September 21, 2020 @06:15PM
(#24549035)
Thanks! I'll check out the code in a bit, but that context will help.