Fedor
И память сразу в ецц превращать?)
Roman
И память сразу в ецц превращать?)
Необходимость ecc не более, чем дурацкий миф - zfs ничем не отличается по сравнению с другими файловыми системами (например ext4 или ntfs) в плане отношений с памятью. Даже выигрывает, ибо cow и crc.
Evgenii
дополнительно скажу, что скоро этот миф потеряет всякую актуальность. DDR5 обязывает использовать ECC в потребительской памяти)
Evgenii
возрадуемся
Roman
Увы, это заблуждение.
Чем конкретно обусловлена необходимость ecc по сравнению с ext4? Не для спора, для понимания
Fedor
И уже потом только пишутся на диски
Fedor
Практика знакома с случаями повреждения чексуммы в памяти, вследствие чего все версии данной транзакции для блока оказались неверны
Roman
У ext4 не высчитываются от слова вообще, при этом ext4 считатается надежной фс
Fedor
Ну так и цели у зфс другие, чем у ехт или подобных
Roman
Практика показывает, что параллельная запись одних и тех же данных на на zfs и ext4 в течение 1 миллиона часов дала 0 и 19 ошибок соответственно. Постараюсь найти ссылку чуть позже.
Roman
Ну так и цели у зфс другие, чем у ехт или подобных
Можно пояснить различия в целях? Действительно интересно как пользователю zol в проде с пятилетним стажем
Evgenii
трэйд офф в пользу надежности
Fedor
забей, спор не стоит свеч ))) Фёдор всегда за идеологии )))
Не в идеологии дело, а в том, что терять данные всегда неприятно
Evgenii
да хоть вики почтитать, или оракл там все понятно
Evgenii
цена - озу, двойная запись, если не выносить лог на отдельное устройство, вычислительные расходы, которые уже не актуальны, т.к. в каждом почезасе чексуммы считаеют аппаратно
Roman
На самом деле все ведь банально: ecc снижает вероятность ошибок независимо от фс. Никаких особых условий именно для zfs нет
Evgenii
просто zfs об этом упоминает, т.к. надежность их главная цель
Evgenii
память - то то, что они не контроллируют
Roman
просто zfs об этом упоминает, т.к. надежность их главная цель
В точку, но абсолютное большинство почему-то восприняло это упоминание как нечто особенно критичное именно для zfs, без включения критического мышления :(. Очень люблю zfs, а этот миф очень мешает ее популяризации.
Evgenii
кому она нужна, тот сам к ней придет
Fedor
Который в корне отличается по поведению от коррапшна в других фс
Maverick
Ну у меня на ноуте всего 2gb... Попробовать zfs или не стоит. Кстати как там дела со сжатием?
Roman
кому она нужна, тот сам к ней придет
Чаще всего это мне нужно на проектах с postgres, вот приходится усираться и объяснять из раза в раз одно и то же)
Fedor
Хоть и заведётся, но будет грустно
Maverick
А на скольки ОЗУ стоит? Я для десктопа. Потому как btrfs вроде нормально работает
Roman
На сайте оракла того же пишут о необходимости рассмотрения памяти ецц, в противном случае будет сайлент коррапшн
Ну так в любом случае, в любом кейсе при любом ПО ecc снижает вероятность повреждения данных, находящихся в памяти. Это ведь и ежу понятно...
Mikhail
Ну у меня на ноуте всего 2gb... Попробовать zfs или не стоит. Кстати как там дела со сжатием?
Есть машинка (NAS) с 2gb - стоит ARC в 300Mb, и куча всяких приложений (dlna, airsonic...) полет нормальный
Roman
Но для зфс это более критично из за ее методов хранения данных.
Федор, очень хочется понять, о каких конкретно методах идет речь? Все применяемые методы (cow, crc) повышают, но никак не ухудшают надежность по сравнению с ext4. Незавсимо от наличия или отсутствия ecc. Поэтому очень прошу вдуматься и объяснить - о каких конкретно механизмах идет речь?
Evgenii
Федор, очень хочется понять, о каких конкретно методах идет речь? Все применяемые методы (cow, crc) повышают, но никак не ухудшают надежность по сравнению с ext4. Незавсимо от наличия или отсутствия ecc. Поэтому очень прошу вдуматься и объяснить - о каких конкретно механизмах идет речь?
грубо говоря фс ориентируется на CRC, ошибка CRC из за чтения из поврежденной памяти может привести к не правильному "восстановлению" данных (это очень грубо) и я могу ошибаться, думаю Федор компетентнее
Roman
Напишу, но для этого надо за компьютером находиться.
Хорошо, спасибо. Вопрос действительно болезненный и очень досадный в моей практике, поэтому готов обсуждать его до полной ясности)
Roman
Отвлекся). Важно еще отметить, что помимо crc в памяти могут повреждаться сами данные, и отследить это никак невозможно без ecc на любой фс. Это гораздо более вероятное событие, чем ошибка при расчете crc. При этом очевидно, что это никак не является спецификой zfs. В данном случае в очередной раз приходим к банальной сентенции, что в любой ситуации, незавсисимо от типа фс "ecc снижает вероятность ошибок".
Roman
Поэтому верным я считаю утверждение, что переход с ext4 на zfs в любом случае повысит надежность хранения данных. Считаю верным, что с ecc надежность хранения и обработки данных улучшится безотносительно используемой фс. И не считаю верным утверждение, что переход с любой фс без ecc на zfs без ecc приведет к ухудшению надежности хранимых данных.
Fedor
Поэтому верным я считаю утверждение, что переход с ext4 на zfs в любом случае повысит надежность хранения данных. Считаю верным, что с ecc надежность хранения и обработки данных улучшится безотносительно используемой фс. И не считаю верным утверждение, что переход с любой фс без ecc на zfs без ecc приведет к ухудшению надежности хранимых данных.
там оно работает примерно вот так. Данные бьются на блоки, согласно указанному рекордсайзу(натив фс) или блоксайзу(звол). Например - 128к, 32к.. Каждый записываемый блок снабжается вычисленной для него контрольной суммой, которая помогает не восстановить данные, а подтвердить, что считанные данные - именно то, что было записано. Для чего нужен механизм CRC - при скрытом повреждении данных, например, в результате утечки заряда в ссд или перемагничивания бита на хдд, можно определить, что получаемый блок данных был повреждён (не сойдётся контрольная сумма). Почему присутствует риск для корректной работы этого механизма при работе без ЕСС: Контрольные суммы расчитываются в памяти ДО записи на диски, что основной, что дубликат, что миррор в пределах вдева. В памяти без ECC ПОСЛЕ просчёта и ДО записи на диск не происходит проверки корректности данных, следовательно, утечки заряда или искажения битов в оперативки остаются незамеченными, приводя к тому, что высчитанная CRC не соответствует самим данным в этом блоке. Потом этот блок с повреждёнными данными/CRC пишется на диски. При чтении с диска этого повреждённого блока данных ZFS увидит, что чексумма не сходится, пойдёт по всем остальным дублицирующим локациям с этими данными, не найдёт в них корректных чексумм (ведь они были повреждены до записи на диски) и сгенерирует ошибку чтения для всего блока.
Fedor
Соответственно, данные будут повреждены и недоступны.
Fedor
В случае с EXT4 будут считаны повреждённые данные, в случае с ZFS никакие данные считать не получится.
Fedor
именно по этому блоку
Fedor
Вернее, считать то вроде можно, но только уведя ФС в соответствующий режим, если не изменяет память
Fedor
проще не допускать такого просто
Roman
Так ведь Федор, голубчик... С влиянием этого и подобных рисков никто и не спорит, но скажите - переход с ext4 на zfs, по Вашему мнению, ухудшает или повышает надежность обработки и хранения данных? Вопрос ведь только в этом...
Fedor
Так ведь Федор, голубчик... С влиянием этого и подобных рисков никто и не спорит, но скажите - переход с ext4 на zfs, по Вашему мнению, ухудшает или повышает надежность обработки и хранения данных? Вопрос ведь только в этом...
повышает надёжность отдачи достоверных данных. как в любой битовой операции - либо данные есть и они достоверны, либо данные недостоверные и недоступны
Roman
Вернее, считать то вроде можно, но только уведя ФС в соответствующий режим, если не изменяет память
Абсолютно верно, можно вообще выключить проверку в аварийных ситуациях...
Fedor
Так ведь Федор, голубчик... С влиянием этого и подобных рисков никто и не спорит, но скажите - переход с ext4 на zfs, по Вашему мнению, ухудшает или повышает надежность обработки и хранения данных? Вопрос ведь только в этом...
сама фс нацелена на максимальное сохранение данных. её даже просто так не стереть. при соблюдении рекомендаций к достоверности прибавляется надёжность
Roman
И вот здесь вопрос - ухудшит ли надежность хранения и обработки данных переход с ext4 на zfs, если нет ecc?
Fedor
ухудшит
Fedor
потому что будут доступны только достоверные данные.
Fedor
при сбоях в оперативке - это меньше, чем полный набор данных. какие-то блоки будут потеряны.
Roman
О как... Вопросов больше не имею, спасибо.
Fedor
с физикой не поспорить, увы. если надо какие-то плюшки, типа ссд кеша, вроде бы @maverickdeb говорил, что у лвм появился ссд кеш :)
Fedor
зфс это охренеть как надёжно, но вместе с этим охренеть как дорого.
Mikhail
О как... Вопросов больше не имею, спасибо.
и так заканчиваются все попытки яснить правду в этом чате )))
Fedor
и так заканчиваются все попытки яснить правду в этом чате )))
если имеется что-то дополнительно - не помешает :)
Mikhail
ладно, кто знает как построить treemap или sunburst по занимаемому место в dataset
Fedor
В системах, где гарантированная надёжность данных - основное требование, на авось полагаться нельзя
Mikhail
другими словами визуализировать Disk Usage для ZFS?
Fedor
сам исследую сейчас этот вопрос
Fedor
как доисследую - закину
Fedor
если получится найти - было бы замечательно, сделаю гит тоже
Fedor
другими словами визуализировать Disk Usage для ZFS?
если юсадж обычный, по занимаемым данным для каждого датасета - можно распарсить zfs list
Fedor
а исследую я юсадж IO
Fedor
если вот такую
Fedor
Fedor
то можно распарсить вывод du