Продвижение Bcachefs в состав ядра Linux
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
Кент Оверстрит (Kent Overstreet), автор входящей в состав ядра Linux
системы кэширования блочных устройств на SSD-накопителях BCache, в своём выступлении на конференции LSFMM 2023 (Linux Storage, Filesystem, Memory Management & BPF Summit) обобщил результаты работы по продвижению файловой системы Bcachefs в основной состав ядра Linux и рассказал о планах по дальнейшему развитию данной ФС. В мае для рецензирования и включения в основной состав ядра Linux был предложен обновлённый набор патчей с реализацией ФС Bcachefs. ФС Bcachefs развивается уже около 10 лет. О готовности рецензирования реализации Bcachefs перед включением в состав ядра было объявлено ещё в конце 2020 года и в текущем варианте патчей учтены выявленные при прошлом рецензировании замечания и недоработки.
Целью разработки Bcachefs является достижение уровня XFS в производительности, надёжности и масштабируемости, предоставляя при этом дополнительные возможности, свойственные Btrfs и ZFS, такие как включение в раздел нескольких устройств, многослойные раскладки накопителей, репликация (RAID 1/10), кэширование, прозрачное сжатие данных (режимы LZ4, gzip и ZSTD), срезы состояния (снапшоты), верификация целостности по контрольным суммам, возможность хранения кодов коррекции ошибок Рида—Соломона (RAID 5/6), хранение информации в зашифрованном виде (используются ChaCha20 и Poly1305). По производительности Bcachefs опережает Btrfs и другие ФС на базе механизма Copy-on-Write, и демонстрирует скорость работы, близкую к Ext4 и XFS.
Из последних достижений в разработке Bcachefs отмечается стабилизация реализации снапшотов, доступных на запись. По сравнению с Btrfs снапшоты в Bcachefs теперь значительно лучше масштабируются и лишены проблем, свойственных Btrfs. На практике работа снапшотов опробована при организации резервного копирования MySQL. В Bcachefs также проведена большая работа по улучшению масштабируемости - файловая система хорошо зарекомендовала себя при тестировании в хранилищах, размером 100 ТБ, и в ближайшее время ожидается внедрение Bcachefs в хранилище размером 1 ПБ. Добавлен новый режим nocow для отключения механизма "copy-on-write" (nocow).
В течение лета планируют довести до стабильного состояния реализацию кодов коррекции ошибок и RAIDZ, а также решить проблемы с высоким потреблением памяти при восстановлении и проверки ФС утилитой fsck.
Из планов на будущее упоминается желание использовать при разработке Bcachefs язык Rust. По мнению автора Bcachefs он любит программировать, а не отлаживать код, и теперь безумно писать код на языке Си, когда появился лучший вариант. Rust уже задействован в Bcachefs в реализации некоторых утилит, запускаемых в пространстве пользователя. Более того, вынашивается идея постепенно полностью переписать Bcachefs на Rust, так как использование этого языка существенно экономит время на отладку.
Что касается продвижения Bcachefs в основной состав ядра Linux, то процесс принятия может затянуться из-за достаточной большого размера изменений (2500 патчей и около 90 тысяч строк кода), который трудно рецензировать. Для ускорения рецензирования некоторые разработчики предложили разбить серию пачей на более мелкие и логически разделённые части. В процессе обсуждения некоторые участники также обратили внимание на развитие проекта одним разработчиком и опасность того, что код может остаться без сопровождения, в случае если с его разработчиком что-то случиться (к проекту проявляют интерес два сотрудника Red Hat, но их работа пока ограничивается исправлением ошибок).
Bcachefs развивается с использованием технологий уже опробованных при разработке блочного устройства Bcache, предназначенного для кэширования доступа к медленным жёстким дискам на быстрых SSD-накопителях (входит в ядро, начиная с выпуска 3.10).
В Bcachefs используется механизм Copy-on-Write (COW), при котором изменения не приводят к перезаписи данных - новое состояние записывается в новое место, после чего меняется указатель актуального состояния.
Особенностью Bcachefs является поддержка многослойного подключения накопителей, при котором хранилище компонуется из нескольких слоёв - к нижнему слою подключаются наиболее быстрые накопители (SSD), которые используются для кэширования часто используемых данных, а верхний слой образуют более ёмкие и дешёвые диски, обеспечивающие хранение менее востребованных данных. Между слоями может применяться кэширование в режиме отложенной записи (writeback). Накопители можно динамически добавлять и отсоединять от раздела без остановки использования файловой системы (данные мигрируют автоматически).
===========
Источник:
OpenNet.RU
===========
Похожие новости
- Главная ссылка к новости (https://news.ycombinator.com/i...)
- OpenNews: Bcachefs доведена до состояния, пригодного для включения в состав ядра Linux
- OpenNews: Проблемы с BCache в ядре Linux 4.14 могут привести к повреждению данных
- OpenNews: Значительное обновление файловой системы Bcachefs
- OpenNews: Новая ФС Bcachefs, сочетающая функциональность btrfs/zfs с производительностью ext4/xfs
- OpenNews: Система кэширования на SSD-накопителях BCache претендует на включение в ядро Linux
Похожие новости:
- В драйвере Nouveau выявлена ошибка, приводящая к повреждению памяти в ядре Linux 6.3
- Открытый практический курс по Linux
- Девятое обновление стартовых наборов ALT p10
- Компания Cisco предложила файловую систему PuzzleFS для ядра Linux
- Обход ограничений SELinux, связанных с загрузкой модулей ядра
- Выпуск дистрибутива Oracle Linux 8.8 и 9.2
- В ядре Linux 6.3 всплыла проблема, приводящая к повреждению метаданных ФС XFS
- Релиз дистрибутива Rocky Linux 8.8, развиваемого основателем CentOS
- Доступен дистрибутив AlmaLinux 8.8, продолжающий развитие CentOS 8
- Выпуск Util-linux 2.39
Теги для поиска: #_bcachefs, #_bcache, #_kernel, #_linux
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 03-Дек 22:13
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
Кент Оверстрит (Kent Overstreet), автор входящей в состав ядра Linux системы кэширования блочных устройств на SSD-накопителях BCache, в своём выступлении на конференции LSFMM 2023 (Linux Storage, Filesystem, Memory Management & BPF Summit) обобщил результаты работы по продвижению файловой системы Bcachefs в основной состав ядра Linux и рассказал о планах по дальнейшему развитию данной ФС. В мае для рецензирования и включения в основной состав ядра Linux был предложен обновлённый набор патчей с реализацией ФС Bcachefs. ФС Bcachefs развивается уже около 10 лет. О готовности рецензирования реализации Bcachefs перед включением в состав ядра было объявлено ещё в конце 2020 года и в текущем варианте патчей учтены выявленные при прошлом рецензировании замечания и недоработки. Целью разработки Bcachefs является достижение уровня XFS в производительности, надёжности и масштабируемости, предоставляя при этом дополнительные возможности, свойственные Btrfs и ZFS, такие как включение в раздел нескольких устройств, многослойные раскладки накопителей, репликация (RAID 1/10), кэширование, прозрачное сжатие данных (режимы LZ4, gzip и ZSTD), срезы состояния (снапшоты), верификация целостности по контрольным суммам, возможность хранения кодов коррекции ошибок Рида—Соломона (RAID 5/6), хранение информации в зашифрованном виде (используются ChaCha20 и Poly1305). По производительности Bcachefs опережает Btrfs и другие ФС на базе механизма Copy-on-Write, и демонстрирует скорость работы, близкую к Ext4 и XFS. Из последних достижений в разработке Bcachefs отмечается стабилизация реализации снапшотов, доступных на запись. По сравнению с Btrfs снапшоты в Bcachefs теперь значительно лучше масштабируются и лишены проблем, свойственных Btrfs. На практике работа снапшотов опробована при организации резервного копирования MySQL. В Bcachefs также проведена большая работа по улучшению масштабируемости - файловая система хорошо зарекомендовала себя при тестировании в хранилищах, размером 100 ТБ, и в ближайшее время ожидается внедрение Bcachefs в хранилище размером 1 ПБ. Добавлен новый режим nocow для отключения механизма "copy-on-write" (nocow). В течение лета планируют довести до стабильного состояния реализацию кодов коррекции ошибок и RAIDZ, а также решить проблемы с высоким потреблением памяти при восстановлении и проверки ФС утилитой fsck. Из планов на будущее упоминается желание использовать при разработке Bcachefs язык Rust. По мнению автора Bcachefs он любит программировать, а не отлаживать код, и теперь безумно писать код на языке Си, когда появился лучший вариант. Rust уже задействован в Bcachefs в реализации некоторых утилит, запускаемых в пространстве пользователя. Более того, вынашивается идея постепенно полностью переписать Bcachefs на Rust, так как использование этого языка существенно экономит время на отладку. Что касается продвижения Bcachefs в основной состав ядра Linux, то процесс принятия может затянуться из-за достаточной большого размера изменений (2500 патчей и около 90 тысяч строк кода), который трудно рецензировать. Для ускорения рецензирования некоторые разработчики предложили разбить серию пачей на более мелкие и логически разделённые части. В процессе обсуждения некоторые участники также обратили внимание на развитие проекта одним разработчиком и опасность того, что код может остаться без сопровождения, в случае если с его разработчиком что-то случиться (к проекту проявляют интерес два сотрудника Red Hat, но их работа пока ограничивается исправлением ошибок). Bcachefs развивается с использованием технологий уже опробованных при разработке блочного устройства Bcache, предназначенного для кэширования доступа к медленным жёстким дискам на быстрых SSD-накопителях (входит в ядро, начиная с выпуска 3.10). В Bcachefs используется механизм Copy-on-Write (COW), при котором изменения не приводят к перезаписи данных - новое состояние записывается в новое место, после чего меняется указатель актуального состояния. Особенностью Bcachefs является поддержка многослойного подключения накопителей, при котором хранилище компонуется из нескольких слоёв - к нижнему слою подключаются наиболее быстрые накопители (SSD), которые используются для кэширования часто используемых данных, а верхний слой образуют более ёмкие и дешёвые диски, обеспечивающие хранение менее востребованных данных. Между слоями может применяться кэширование в режиме отложенной записи (writeback). Накопители можно динамически добавлять и отсоединять от раздела без остановки использования файловой системы (данные мигрируют автоматически). =========== Источник: OpenNet.RU =========== Похожие новости
|
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 03-Дек 22:13
Часовой пояс: UTC + 5