Назад | Перейти на главную страницу

Легкая прозрачная файловая система сжатия?

У меня есть AMD64 KVM VPS в RamNode, у него 30 ГБ диска, 256 МБ ОЗУ и 1 «виртуальный процессор» (я понятия не имею о спецификациях центрального процессора). Он будет использоваться для хранения множества небольших, легко сжимаемых файлов, в основном <50 КБ, текст / HTML. Я хочу использовать файловую систему сжатия, чтобы сэкономить то немногое дискового пространства, которое у меня есть. Первым, что пришло в голову, была ZFS, но, судя по тому, что я читал, ZFS плохо работает с оперативной памятью меньше 1-2 ГБ, поэтому мне нужно что-то более легкое. Что касается BTRFS, из того, что я прочитал, он сильно загружает процессор и еще не стабилен (что касается оперативной памяти, я понятия не имею). Есть предложения по файловой системе? Производительность и пропускная способность не важны, а вот использование диска и ОЗУ. Что касается операционной системы, я думал о Linux Debian 8, но если подходящая FS не поддерживает Debian8 / Linux, я могу переключиться (* возможно, BSD?)

ZFS отлично справится с низким объемом оперативной памяти, если вы не используете функцию дедупликации. Вы также можете ограничить объем оперативной памяти, которую ZFS использует для кэширования (ARC). Встроенное сжатие lz4 может быть очень полезно для вашего объема данных.

Я использовал ZFS и BTRFS в Linux за последние два года. Мой опыт показывает, что BTRFS использует меньше оперативной памяти, чем ZFS, для сопоставимого использования диска. За исключением RAID5 / 6, BTRFS для меня очень стабильна на Ubuntu 14.04 с BTRFS 3.12.

Я использовал сжатие LZO в BTRFS, и оно было таким же быстрым при записи, как и без сжатия.

Что ж, решение, какую fs использовать, зависит от вашего шаблона доступа к файлам.

Я бы предложил squashfs со сжатием xz для файлов только для чтения, если целью является максимальная степень сжатия.
Это сэкономит место и свободные inodes в случае миллионов небольших файлов. Добавление новых без удаления / перемещения / перезаписи также является идеальным вариантом использования. Просто используйте aufs / overlayfs / unionfs для слияния каталогов r / o и r / w. Необходимо периодическое обновление файла squashfs путем объединения файлов из каталога r / w. Я читал, что какая-то компания использовала этот комплект. Не очень частая генерация контента также является хорошим вариантом использования.

Частые обновления небольшими порциями - используйте вышеупомянутые zfs / btrfs или fusecompress (используйте только 0.9.x). Эти три решения хорошо работают с rsync. fusecompress обеспечивает более сильное сжатие lzma.

archivemount не работает с rsync. Он спит на диске во время обновления :(