stringtranslate.com

Файловая система с лог-структурой

Файловая система с лог-структурой — это файловая система , в которой данные и метаданные последовательно записываются в кольцевой буфер , называемый журналом . Впервые этот дизайн был предложен в 1988 году Джоном К. Оустерхаутом и Фредом Дуглисом и впервые реализован в 1992 году Оустерхаутом и Менделем Розенблюмом для Unix-подобной распределенной операционной системы Sprite . [1]

Обоснование

Традиционные файловые системы, как правило, размещают файлы с большой осторожностью с точки зрения пространственной локальности и вносят изменения в их структуры данных на месте, чтобы обеспечить хорошую работу на оптических и магнитных дисках, которые, как правило, выполняют поиск относительно медленно.

Проектирование файловых систем с лог-структурой основано на гипотезе, что это больше не будет эффективно, поскольку постоянно растущие объемы памяти на современных компьютерах приведут к тому, что ввод-вывод станет интенсивно записывать, поскольку чтения будут почти всегда удовлетворяться из кэша памяти. Таким образом, файловая система с лог-структурой рассматривает свое хранилище как циклический журнал и последовательно записывает в заголовок журнала.

Это имеет несколько важных побочных эффектов:

Однако файловые системы с лог-структурой должны освобождать свободное пространство из хвоста журнала, чтобы предотвратить заполнение файловой системы, когда заголовок журнала заворачивается, чтобы встретиться с ним. Хвост может освободить пространство и двигаться вперед, пропуская данные, для которых более новые версии существуют дальше вперед в журнале. Если более новых версий нет, то данные перемещаются и добавляются в голову.

Чтобы уменьшить накладные расходы, возникающие при сборке мусора , большинство реализаций избегают чисто циклических журналов и делят свое хранилище на сегменты. Заголовок журнала просто продвигается в несмежные сегменты, которые уже свободны. Если требуется место, сначала освобождаются наименее заполненные сегменты. Это снижает нагрузку ввода-вывода (и уменьшает усиление записи ) сборщика мусора, но становится все менее эффективным по мере того, как файловая система заполняется и приближается к емкости.

Недостатки

Обоснование дизайна для файловых систем с лог-структурой предполагает, что большинство чтений будут оптимизированы за счет постоянно увеличивающихся кэшей памяти. Это предположение не всегда выполняется:

Смотрите также

Ссылки

  1. ^ Джон К. Оустерхаут, Мендель Розенблюм. (1991), Проектирование и реализация файловой системы с журнальной структурой (PDF) , Калифорнийский университет в Беркли
  2. ^ Команды инженеров оборудования Magic Pocket. «Расширение инноваций Magic Pocket с первым развертыванием накопителя SMR петабайтного масштаба». dropbox.tech .
  3. ^ Рид, Колин; Бернстайн, Фил (1 января 2010 г.). «Реализация интерфейса только для добавления для полупроводникового хранилища» (PDF) . IEEE Data Eng. Bull . 33 : 14-20.
  4. ^ Сваминатан Сундарараман, Цзинпей Ян (2014), Не кладите свой журнал на мой журнал (PDF) , SanDisk Corporation

Дальнейшее чтение