Кілька років тому у мене були такі ж вимоги, як і ви. Я вибрав рішення: використовувати ZFS через драйвер ZFS-FUSE на моєму сервері зберігання даних. Я думав, що мої особисті фотографії, відскановані документи та інші подібні файли - це речі, до яких я можу отримати доступ лише зрідка, тому це може пройти дуже довго, скажімо, рік і більше, перш ніж я помічу, що файл був пошкоджений через помилка накопичувача тощо.
На той час усі резервні копії, які я маю, можуть бути цією гнилою версією файлів.
ZFS має перевагу перед RAID-5 тим, що він може виявляти та виправляти помилки в даних, що зберігаються на окремих дисках, навіть якщо накопичувачі не повідомляють про помилку читання під час читання даних. За допомогою контрольних сум він виявить, що один з дисків повернув пошкоджену інформацію, і використає дані надмірності для відновлення цього диска.
Через те, як розроблено контрольну суму в ZFS, я відчув, що можу покластися на неї для зберігання нечасто використаних даних протягом тривалих періодів часу. Щотижня я запускаю скраб для zpool, який проходить і перечитує всі дані та перевіряє контрольні суми.
За останні кілька років ZFS-FUSE виступив для мене досить добре.
У далекому минулому для клієнта я впровадив систему баз даних, яка зберігала інформацію контрольної суми про всі файли, що зберігаються в певному каталозі. Потім у мене був ще один сценарій, який періодично запускався і перевіряв би файл на контрольній сумі, що зберігається в базі даних. З цим ми могли швидко виявити пошкоджений файл та відновити з резервних копій. Ми в основному впроваджували ті самі види перевірок, які ZFS здійснює всередині країни.