ZFS имеет смысл как локальное хранилище?


0

Я читал о ZFS и какое-то время думал о том, чтобы использовать его на своем компьютере, но потом, читая о требованиях к памяти, подумал дважды.

Имеет ли смысл использовать ZFS в качестве локального хранилища или это имеет больше смысла для серверов, используемых в качестве хранилища? (Даже для серверов с другим использованием это кажется излишним).


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

Что касается требований к памяти, они сильно различаются в зависимости от выбранных функций. Например. включение de-dup значительно увеличивает использование памяти. Если вам это не нужно, тогда вам нужно меньше памяти. Но как написано мы можем только догадываться.
Hennes

@Hennes, спасибо. Будет ли такой вопрос, как и при каких обстоятельствах ZFS подходит для локального хранилища?
nsn

Сначала подумайте о том, что вы пытаетесь сделать. Вы просто хотите хранить файлы? Вы хотите хранить файлы и поддерживать систему в случае сбоя диска (В этом случае RAID становится интересным, оба варианта ZFS). Вы хотите контрольные суммы на файлы? Вы хотите иметь возможность делать очень сложные вещи (ZFS ооочень больше, чем просто файловая система), или вы хотите сделать вещи простыми (в этом случае: ZFS может быть неразумным) ..... Затем отредактируйте сообщение ,
Hennes

@hennes Что я действительно хочу сейчас, так это изучить ZFS. Хороший способ - установить его, прежде чем использовать его где-нибудь еще. Когда я начал читать об этом, все больше и больше я думал, что это будет излишним с точки зрения памяти. У меня нет точного плана. В будущем меня больше всего интересуют RAID / дедупликация и производительность (что может показаться странным сочетанием)
nsn

Ответы:


-1

У ZFS нет особо высоких требований к памяти.

Как указано в комментариях, определенные особенности ZFS (в частности, дедупликация, но также L2ARC) требует определенного объема памяти, чтобы быть полезным.

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

ZFS с ARC первого уровня (Adaptive Replacement Cache) не намного больше потребляет память, чем любая другая файловая система и кэш. Из-за использования ARC вместо, например, Наименее недавно использованный алгоритм кэширования, в некоторых рабочих нагрузках он может более эффективно использовать доступную кэш-память.

Что такое ZFS делает требовать ECC RAM Это повсеместно распространено на серверах, но редко встречается в персональных системах (многие младшие процессоры Intel даже не поддерживают ECC RAM). Это требование вытекает из свойств самовосстановления ZFS, потому что Проблемы с ОЗУ потенциально могут уничтожить ваши данные при запуске ZFS. Нет кода для проверки этого в ZFS, возможно, отчасти потому, что кажется, нет 100% определенного способа узнать из программного обеспечения использует ли система ECC RAM.

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

  • Гарантированная сквозная целостность данных. Вы наверняка будете знать, что если определенное чтение завершится успешно, оно вернуло те же данные, которые были первоначально записаны в это место. Это означает, что не существует такого понятия, как тихое повреждение данных; вы либо вернете свои данные, либо получите ошибку ввода-вывода.
  • Чередование и резервирование с учетом файловой системы. Обычные RAID-контроллеры обрабатывают все устройство хранения данных как большую группу блоков, не имея представления о каких-либо структурах данных на диске. Поскольку ZFS объединяет управление томами и файловую систему, она может принимать более разумные решения перед лицом ошибок. Он также имеет режим «наиболее важный первый», который означает, что данные, критически важные для функционирования файловой системы, сначала восстанавливаются после сбоя, и менее важные данные ждут, независимо от того, где на диске находятся данные сохраняются.
  • Многоуровневое кеширование. Например, у вас может быть RAM ARC, дополненная быстрым SSD L2ARC, с большей частью хранения данных на ротационных жестких дисках. Для рабочих нагрузок, где рабочий набор данных может быть оценен с разумной степенью точности, это может обеспечить значительное улучшение производительности ввода-вывода при относительно низкой стоимости и, конечно, без необходимости использовать все твердотельные накопители.
  • Практически бесплатные файловые системы. В ZFS создание «файловой системы» мало отличается от создания каталога в большинстве современных файловых систем. Файловые системы могут иметь разные квоты, как максимальные, так и гарантированные. По этой причине в ZFS файловые системы часто рекомендуется использовать в качестве административных границ; например, на большом сервере домашний каталог каждого пользователя может быть собственной файловой системой. Это изолирует части дерева каталогов друг от друга без накладных расходов, создаваемых отдельными регулярными разделами и файловыми системами. Я использую файловые системы, например, для разделения почтовых архивов в год или фотографий в месяц.
  • Практически бесплатные снимки. Я не знаю, сколько раз тот факт, что я смог вернуться к тому, как файл выглядел несколько часов назад, спас меня от какой-то смущающей ошибки. Резервные копии предоставляют аналогичные возможности (и все еще необходимы, потому что никакое количество RAID не является резервной копией ), но снимки гораздо более доступны. В ZFS для самого снимка требуется всего несколько килобайт хранилища метаданных независимо от объема данных в соответствующей файловой системе, и это не приводит к значительным потерям производительности.

Ничто из этого не требуется для использования только потому, что вы используете ZFS. Но они есть, как правило, всего в одной команде, если вы хотите включить их.

Теперь, это "перебор"? Это действительно зависит от того, что вы пытаетесь сделать. Я запускаю ZFS (с ECC RAM) в моей домашней системе. По большей части, он тихо двигался, не создавая больше шума, чем любая другая файловая система (и, вероятно, меньше), но он фактически спас меня от повреждения данных хотя бы один раз (очистка обнаружила несколько секторов). которые показывали проблемы, и автоматически и бесшумно восстановил данные без вмешательства требуется от меня). Лично я считаю, что Я сохранил эти данные по причине, и эта причина, скорее всего, я хочу обратиться к данным позже. Рассмотрим теперь, что вселенная ненавидит ваши данные ,

Благодаря постоянно увеличивающимся размерам хранилищ и, по существу, постоянным ошибкам в битах (для каждого класса носителей), ошибки ввода-вывода не станут менее распространенными. Глядя на моего предпочтительного реселлера, и Seagate, и HGST предлагают жесткие диски емкостью 8 ТБ по ценам, которые высоки, но не экстремальны и, безусловно, доступны для отдельных лиц. Это около 6,4 × 10 ^ 13 бит. С частотой ошибок 10 ^ -14 бит, даже один полный прочитанный проход СМИ является статистически очень вероятно столкнуться с проблемой ввода / вывода, делающей нечитаемый весь сектор (4 КиБ). (К тому времени, когда мы получили 10 ТБ жестких дисков, статистически при одном чтении на полный диск будет встречаться хотя бы один нечитаемый сектор .) Были исследования, показывающие, что незамеченной Ошибки чтения случаются гораздо чаще, чем мы хотим признать, несмотря на усилия производителей жестких дисков по улучшению алгоритмов ECC на диске, хотя у меня нет доступной ссылки. Современные файловые системы, такие как NTFS, ext4, UFS +, HFS + и т. Д., Просто не готовы справиться с такой ситуацией.

Это нишевые файловые системы, такие как ZFS и Btrfs, которые стремятся заполнить.


1
ZFS абсолютно не требуется ECC RAM.
qasdfdsaq

@qasdfdsaq Ну да, и нет. Это не требует ECC RAM в том смысле, что RAM должна быть ECC для запуска кода ZFS. (Или, по крайней мере, я так не думаю. ZoL, конечно, не делает.) Это требует ОЗУ ECC в том смысле, что любые проблемы с памятью потенциально более разрушительный; рассмотрим кэш-память записи в оперативной памяти и что произойдет, если между вычислением контрольной суммы и записью на диск произойдет переворот в битах. Это сказало, обсуждение начинается здесь кажется уместным, и люди спорят как за, так и против позиции «Требуется ECC RAM».
a CVn

С этим я могу согласиться. ОЗУ ECC не требует использования ZFS или запуска кода. Требуется ли ECC для надежности - это спор, который, скорее всего, будет продолжаться до тех пор, пока обсуждаются вопросы vi и emacs. Для меня тот факт, что многие разработчики и ранние сторонники ZFS использовали его на своих ноутбуках, проясняет это. Часто повторяемый аргумент «потому что он использует контрольные суммы» был полностью опровергнут как Microsoft, так и Linux, представляя собственные файловые системы, которые также используют контрольные суммы без рекомендаций для ECC.
qasdfdsaq

@qasdfdsaq У Microsoft есть что-нибудь подобное? Я знаю, что это не связано с вопросом, но что это за файловая система?
a CVn

ReFS: en.wikipedia.org/wiki/ReFS Хотя впервые выпущен на Server 2012, он доступен на рабочем столе Windows 8.1 и выше.
qasdfdsaq
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.