Система кэширования на SSD-накопителях BCache претендует на включение в ядро Linux

Кент Оверстрит (Kent Overstreet) объявил в списке рассылки разработчиков ядра Linux о готовности реализации системы кэширования блочных устройств на SSD-накопителях BCache для интеграции в ядро Linux. Первые реализации Bcache были представлены ещё в 2010 году и развивались обособленно, теперь все требования по оформлению кода выполнены, а ранее мешавшие интеграции кода ограничения в уровне блочных устройств Linux обойдены, и проект в скором времени может быть принят в основное ядро. Проект отмечается как стабильный и достаточно давно используемый на нескольких крупных серверах в режиме промышленной эксплуатации.

Bcache позволяет организовать кэширование доступа к медленным жестким дискам на быстрых SSD-накопителях, при этом кэширование ведётся на уровне блочного устройства, что позволяет ускорить доступ к накопителю независимо от используемых на нём файловых систем. Поддерживается два режима кэширвоания: сквозное кэширование (writethrough), при котором записываемые данные сразу сохраняются на исходном накопителе и оседают в кэше только для ускорения операций чтения; режим отложенной записи (writeback) при котором данные записываются на исходный носитель не сразу, что позволяет обеспечить ускорение операций записи но может привести к потере блоков данных при сбое SSD-накопителя.

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

Большое внимание также уделяется надёжности хранения данных и обработке внештатных ситуаций, таких как внезапное выключение питания. BCache контролирует такие ситуации и после возобновления работы дописывает на диск данные, которые остались в кэше но не были записаны на диск в момент сбоя при активном режиме writeback. BCache возвращает статус успешной операции только после того как данные сохранены на постоянном носителе (на SSD при использовании режима writeback). Один SSD-накопитель может использоваться для кэширования нескольких различных блочных устройств. Блочное устройство может быть на лету прикреплено к кэшу и отключено от него, без размонтирования и временно остановки работы.

Источник:
http://www.opennet.ru/opennews/art.shtml?num=35849

<= Назад
Комментарии
]]> ipv6 ready Kiev LUGLinux4MeНостальгияЛичный сайт skeletora ]]>