Pro Btrfs je prezentována asynchronní implementace DISCARD

Pro souborový systém btrfs zastoupená asynchronní implementace operace DISCARD (označení uvolněných bloků, které již není třeba fyzicky ukládat), implementovaná inženýry Facebooku.

Podstata problému: v původní implementaci se DISCARD provádí synchronně s ostatními operacemi, což v některých případech vede k problémům s výkonem, protože jednotky musí čekat na dokončení příslušných příkazů, což vyžaduje další čas. To může být problém, pokud je implementace DISCARD jednotky pomalá.

S asynchronní implementací není potřeba čekat, až disk dokončí DISCARD při běžném provozu FS, což eliminuje problém přenesením této operace na pozadí. Prezentovaná implementace také provádí některé optimalizace. Například čeká nějakou dobu z obavy, že blok může být brzy použit takovým způsobem, že nemá smysl vůbec provádět proceduru DISCARD, a také se snaží sloučit regiony před skutečným provedením DISCARD, aby se snížil celkový počet operací.

Zdroj: opennet.ru

Přidat komentář