Для Btrfs представлена ​​асинхронна реалізація DISCARD

Для файлової системи btrfs представлена асинхронна реалізація операції DISCARD (примітка звільнених блоків, які вже можна не зберігати фізично), реалізована інженерами компанії Facebook.

Суть проблеми: у початковій реалізації DISCARD виконується синхронно з іншими операціями, що у ряді випадків призводить до проблем продуктивності, оскільки доводиться очікувати на завершення відповідних команд накопичувачами, що вимагає додатковий час. Це може стати проблемою, якщо реалізація DISCARD накопичувачем працює повільно.

При асинхронній реалізації очікувати на завершення DISCARD накопичувачем при звичайній роботі ФС не потрібно, що знімає проблему, переводячи цю операцію в фоновий розряд. Подана реалізація також виконує деякі оптимізації. Наприклад, вона чекає деякий час з міркувань, що блок можливо буде незабаром використаний так, що взагалі не буде сенсу у виконанні процедури DISCARD, а також намагається об'єднувати регіони до фактичного виконання DISCARD з метою зменшення загальної кількості операцій.

Джерело: opennet.ru

Додати коментар або відгук