Коротко: zfs с gzip-9 живущая в файловом контейнере на ext4 в 2 раза опережает сам ext4 на чтение.
Все началось с того что обнаружил в текущем Debian Wheezy поставленном на древнем 10+летнем ноуте с Celeron-1.6 пакет: zfs-fuse и поставил его.
Когда пару лет назад я начал ковырять zfs - она работала исключительно на x64 компьютерах и мне пришлось лишь для неё ставить Debian x64 на компе и нетбуке.
Сейчас она реализована и на x32, но в этой реализации отсутствует Алгоритм сжатия lz4, потому я поставил gzip-9, создал на корне 10Gb Контейнер и забил его корнем+частью из /home.
Устроив чтение дерева в /dev/null подумал
что 25 минут это долго и начал читать с нативного раздела. На момент 25 минут было считано лишь 5Gb. Я разочаровался было в ext4 но обнаружил там xfs, запустил онлайн дефраг но это не исправило ситуацию. Однако разница в два раза меня ошеломила и я пошел на другой комп:
с процессором: Intel(R) Celeron(R) CPU E3400 @ 2.60GHz
К нему по USB3 подключен 3TB Seagate NAS3T, на нем ext4 раздел с корнем
свежепоставленного Debian Wheezy смонтированный в /mnt/root:
Total Used Free
47G 4,2G 40G
читаем этот корень:
#find root -type f -exec cat '{}' \; |pv|dd of=/dev/null
3,44GB 0:07:41 [7,63MB/s] [ <=> ]
7144764+124516 записей считано
7205901+1 записей написано
скопировано 3689421565 байт (3,7 GB), 461,169 c, 8,0 MB/c
Там же делаем 10Gb контейнер:
#dd if=/dev/zero of=zfs-10G.zfs bs=1048576 count=0 seek=10240
Затем делаем в нем zfs
#zpool create zfs-over-ext4 /mnt/root/zfs-10G.zfs
устанавливаем упаковку gzip-9
#zfs set compression=gzip-9 zfs-over-ext4
Копируем /mnt/root на zfs в контейнере на ext4.
#/usr/bin/time rsync -axvPH --exclude=/zfs-10G.zfs /mnt/root/ /zfs-over-ext4
sent 3698550260 bytes received 2594892 bytes 4281255.24 bytes/sec
total size is 3690113480 speedup is 1.00
38.01user 71.12system 14:23.83elapsed 12%CPU (0avgtext+0avgdata 52060maxresident)k
5681360inputs+7203210outputs (0major+41076minor)pagefaults 0swaps
Теперь читаем записанное:
#find /zfs-over-ext4 -type f -exec cat '{}' \; |pv|dd of=/dev/null
3,44GB 0:04:36 [12,7MB/s] [ <=> ]
7144723+124584 записей считано
7205901+1 записей написано
скопировано 3689421565 байт (3,7 GB), 276,59 c, 13,3 MB/c
Упс... тут тоже разница 4:36 минут против 7:41 на чистом ext4
я ффш0ке...
Понимаю что тут compressratio=2.49, но на древнем ноуте с тормозным целероном он 1.71. Тестирование конечно слабое, но радует что zfs есть теперь и для x32.
я ффш0ке...
И на довесок скопируем тот же корень в нативный 2.6T zfs с упаковкой lz4
#/usr/bin/time rsync -axvPH --exclude=/zfs-10G.zfs /mnt/root/ /opt
sent 3698550254 bytes received 2594886 bytes 5898239.27 bytes/sec
total size is 3690113480 speedup is 1.00
39.33user 78.36system 10:27.53elapsed 18%CPU (0avgtext+0avgdata 53960maxresident)k
7882326inputs+7203010outputs (6major+32134minor)pagefaults 0swaps
10 минут против 14 минут.
Теперь читаем:
find /opt -type f -exec cat '{}' \; |pv|dd of=/dev/null
3,44GB 0:06:21 [9,21MB/s] [ <=> ]
7144846+124348 записей считано
7205901+1 записей написано
скопировано 3689421565 байт (3,7 GB), 381,878 c, 9,7 MB/c
Где то посередине между gzip-9 в контейнере поверх ext4 и ext4
Вообще от zfs пока в основном положительные впечатления.
Если у кого есть отрицательные отзывы - интересно будет послушать.
Я наверное всех уже утомил, пойду спать.
←
1
2
→
Ответ на:
комментарий
от user_id_68054
Ответ на:
комментарий
от user_id_68054
Ответ на:
комментарий
от King_Carlo
Ответ на:
комментарий
от user_id_68054
Ответ на:
комментарий
от King_Carlo
Ответ на:
комментарий
от King_Carlo
Ответ на:
комментарий
от Deleted
Ответ на:
комментарий
от n0mad
Ответ на:
комментарий
от user_id_68054
Ответ на:
комментарий
от vxzvxz
Ответ на:
комментарий
от user_id_68054
Ответ на:
комментарий
от vxzvxz
Ответ на:
комментарий
от blind_oracle
Ответ на:
комментарий
от darkenshvein
Ответ на:
комментарий
от erzent
Ответ на:
комментарий
от erzent
Ответ на:
комментарий
от erzent
Ответ на:
комментарий
от n0mad
Ответ на:
комментарий
от King_Carlo
Ответ на:
комментарий
от erzent
Ответ на:
комментарий
от blind_oracle
Ответ на:
комментарий
от EvgGad_303
Ответ на:
комментарий
от blind_oracle
Ответ на:
комментарий
от mix_mix
Ответ на:
комментарий
от n0mad
Ответ на:
комментарий
от mix_mix
Ответ на:
комментарий
от Suntechnic
Ответ на:
комментарий
от n0mad
Ответ на:
комментарий
от user_id_68054
Ответ на:
комментарий
от user_id_68054
Ответ на:
комментарий
от emulek
Ответ на:
комментарий
от emulek
Ответ на:
комментарий
от emulek
Ответ на:
комментарий
от emulek
Ответ на:
комментарий
от user_id_68054
Ответ на:
комментарий
от emulek
Ответ на:
комментарий
от n0mad
Ответ на:
комментарий
от n0mad
Ответ на:
комментарий
от n0mad
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Как посчитать размер дерева подкаталогов? du -sh не катит, надо не занимаемое место посчитать а размер. (2013)
- Форум Решил попробовать btrfs (2012)
- Форум Сжатие nginx gzip (2016)
- Форум На устройстве кончилось место (2013)
- Форум ext2,ext4,fat32 на флешке и фрагментация (2011)
- Форум Не работает gzip-сжатие (2013)
- Форум CUPS + gzip (сжатый файл) (2004)
- Форум Тюнинг производительности ZFS (2015)
- Форум Бенчмарк методов сжатия ZFS (2009)
- Форум Производительность чтения файла (2018)