Btrfs

Btrfs против OpenZFS

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

1. Механизм копирования при записи (COW)

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

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

2. Пул и RAID

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

OpenZFS предлагает стабильный, надежный и удобный механизм RAID. Вы можете зеркалировать между дисками, использовать RAIDZ1, который распределяет ваши данные по 3 или более дискам с одним блоком четности. Таким образом, он может выдерживать сбой до 1 диска на Vdev. Точно так же RAIDZ2 может использовать 4 или более дисков и выдерживать отказ до 2 дисков, и аналогично у нас есть RAIDZ3.

В Btrfs также реализованы эти функции, разница в том, что он называет их RAID, а не RAIDZ и т. Д. Некоторые более сложные конфигурации RAID-массивов, такие как RAID56, содержат ошибки и не подходят для использования на момент написания этой статьи.

3. Лицензирование

Одна из причин, по которой OpenZFS так поздно появилась в экосистеме GNU / Linux, заключается в несовместимости ее лицензии с GNU GPL. Не вдаваясь в подробности, Btrfs находится под GPL, что позволяет пользователям брать исходный код и изменять его, но модификации также должны публиковаться под GPL и оставаться с открытым исходным кодом.

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

4. Сообщества и компании, стоящие за ними

За OpenZFS стоит огромное сообщество. Сообщество FreeBSD, сообщество Illumos и многие другие проекты с открытым исходным кодом полагаются на OpenZFS и, таким образом, вносят свой вклад в файловую систему. С момента своего создания он вырос в несколько раз с точки зрения кодовой базы, пользовательской базы, функций и гибкости. Такие компании, как Delphix, iXsystems, Joyent и многие другие, полагаются на него и заставляют своих разработчиков работать над ним, потому что это ключевой компонент их бизнеса. Многие другие организации могут использовать OpenZFS без нашего ведома, благодаря лицензии CDDL им не нужно открыто заявлять, что они ее используют.

У Btrfs Red Hat была одним из главных управляющих своего сообщества. Тем не менее, некоторое время назад это сильно пострадало, когда Red Hat отказался от файловой системы, это означает, что вы не увидите ее в будущем RHEL, и компания не будет предоставлять коммерческую поддержку для нее сразу же. SUSE, однако, зашла так далеко, что сделала ее по умолчанию, и их сообщество по-прежнему активно поддерживает файловую систему с участием Facebook, Intel и других 800-фунтовых горилл Кремниевой долины.

5. Надежность

ZFS была разработан быть надежным с самого начала. У людей есть zpools начала 2000-х, которые все еще можно использовать и гарантированно не возвращать ошибочные данные молча. Да, было несколько сбоев с исчезновением файлов для OpenZFS в Linux, но, учитывая его долгую историю, послужной список был на удивление чистым.

Btrfs, с другой стороны, имел проблемы с самого начала. С ошибочными интерфейсами для прямой защиты от потери данных и повреждения файлов. Даже сейчас это посмешище в сообществе. Сделайте из этого что хочешь.

6. Поддерживаемые ОС

Btrfs возникла как файловая система для Linux, а ZFS была задумана внутри Sun для ОС Solaris. Однако OpenZFS уже давно портирован на FreeBSD, Apple OS X, производные от Solaris с открытым исходным кодом. Поддержка Linux появилась немного позже, чем можно было предположить, но она уже есть, и корпорации полагаются на нее. Проект по запуску его в Microsoft Windows также довольно сильно продвигается, хотя он еще не совсем там.

Заключение: заметка о монокультурах

Все эти разговоры могут убедить вас использовать OpenZFS для защиты ваших данных, и это неплохой образ действий. Он объективно лучше Btrfs по характеристикам, надежности, сообществу и многому другому. Однако в долгосрочной перспективе это может быть плохо для сообщества открытого исходного кода в целом.

В посте под названием, аналогичном этому, автор рассказывает об опасности монокультуры. Я рекомендую вам прочитать этот пост. Суть в том, что - Опции важны. Одна из самых сильных сторон программного обеспечения с открытым исходным кодом (и программного обеспечения в целом) заключается в том, что у нас есть несколько вариантов для внедрения. Есть Apache, а есть Nginx, есть BSD и Linux, есть OpenSSL и есть LibreSSL.

Если в любой из этих ключевых технологий будет обнаружен фатальный недостаток, мир не перестанет вращаться. Но с распространением OpenZFS технология хранения превратилась в нечто вроде монокультуры. Итак, я бы очень хотел, чтобы разработчики и системные программисты, которые это читают, приняли не OpenZFS, а такие проекты, как Btrfs и HAMMER.

Как изменить указатель мыши и размер курсора, цвет и схему в Windows 10
Указатель мыши и курсор в Windows 10 - очень важные аспекты операционной системы. То же самое можно сказать и о других операционных системах, так что,...
Бесплатные движки с открытым исходным кодом для разработки игр для Linux
В этой статье будет рассмотрен список бесплатных игровых движков с открытым исходным кодом, которые можно использовать для разработки 2D- и 3D-игр в L...
Shadow of the Tomb Raider для Linux Учебное пособие
Shadow of the Tomb Raider - двенадцатое дополнение к серии Tomb Raider - франшизе приключенческой игры, созданной Eidos Montreal. Игра была очень хоро...