Nick
ну зависит, если битрикс - там 3 гигабайта плохого кода и 50 гигабайт медиа на сайт - запросто
Nick
в итоге мне на самом деле больше подходит то, что походит на flashcache - один ссд + один крутящийся диск, но такого, к сожалению, нет в зфс
George
сильная разница?
если файл/большой кусок данный отдаётся клиенту за раз, то за счёт увеличения recordsize будет меньше seek time при чтении с диска, пока фрагментация пула небольшая и он может записывать файлы последовательно (если мы их последовательно пишем) - разница минимальна, но как только это условие не сработает то +10мс seek time на каждый кусок. Относительные цифры зависят от фрагментации, в общем.
George
l2arc + slog + special class и hdd для обычного vdev могут тут помочь
Nick
вот только special class работает не как slog
Nick
что приводит к требованию зеркала, а это дорого
Nick
если бы он постепенно уезжал на обычный диск - совсем другое дело было бы
George
вот только special class работает не как slog
slog по хорошему тоже зеркалировать надо, но да, его потеря оставит пул целым, хоть и без последних Х секунд синхронной записи в худшем случае
Олег
Не появилось в ZFS средство борьбы с 20% деградации скорости?
Олег
А подробнее?
При более 80% занятости пула падение перфоманце В моем случае FTP сервер и даже 5% от 300TB не является критичным, но скорость начинает падать в разы, особенно на менее 10% свободного
Александр
Как ее отрубить к ...
Ее нельзя отрубить. Когда у нас остается мало свободного места, приходится постоянно переписывать журнал.
Александр
Это не искусственное замедление, это так работает алгоритм.
Олег
Я понимаю это
Олег
просто думаю есть ли хак
Олег
То что архитектурно так давно знаю)
Александр
... а вот есть такая фича у lz4, этот алгоритм не жмет картинки. Как включить, чтоб жало?
Anonymous
Картинки итак упакованы, их сжатие очень неэффективно
Anonymous
Он их потому и не жмёт, что выгода от их сжатия стремится к нулю
Александр
Картинки итак упакованы, их сжатие очень неэффективно
... я пытаюсь объяснить @Oller22 что невозможно "выключить" замедление ZFS при 90% заполнении пула
Anonymous
просто думаю есть ли хак
Можно выставить квоту на объем вашего хранилища, вы теряете в доступном месте, но производительность не упадет, способов то особо нет
Александр
просто думаю есть ли хак
Есть ли хак, чтобы lz4 хорошо жал видео?
Олег
Есть ли хак, чтобы lz4 хорошо жал видео?
смена lz4 на другой алгоритм
Олег
)
Олег
Закрыли етму
Александр
смена lz4 на другой алгоритм
... ооок. Есть ли хак, чтобы сжимать видео алгоритмом без потерь данных хотя бы на 20%?
Anonymous
Сжатие видео сильно зависит от кодека, большинство итак сжимает поток и зачастую ситуация как с картинками
Олег
В свежих версиях openzfs были фиксы на эту тему, улучшающие ситуацию, емнип
Это уже интересно, от какой примерно не помните?
George
Нет, по ченджлогам стоит попрыгать
Nick
ну вообще очевидный вариант - вынести журнал на отдельный диск и снизить дефрагментацию
Георгий
ну вообще очевидный вариант - вынести журнал на отдельный диск и снизить дефрагментацию
Вот с этого момента поподробнее, на на работающем пуле можно?
Art
Вот с этого момента поподробнее, на на работающем пуле можно?
Гугли special vdev - это о нём речь. Не уверен на все сто, но думаю добавить его к существующему пулу проблем нет Но есть такой момент: special нужно зеркалить, ибо его смерть похоронит заодно и весь пул
Олег
Гугли special vdev - это о нём речь. Не уверен на все сто, но думаю добавить его к существующему пулу проблем нет Но есть такой момент: special нужно зеркалить, ибо его смерть похоронит заодно и весь пул
Special Allocation Class — это специальный Vdev, куда пишутся метаданные или блоки данных меньше 4 килобайт (запись данных конфигурируется). Получается, что под большие блоки данных можно использовать медленное, но дешевое HDD-хранилище, а рядом поставить SSD-диски, хранящие его по блоки метаданных и блоки данных небольших размеров.
Олег
не пойму как решит вопрос записи больших файлов
Олег
zil и arc понятно и сейчас вынесу-потестирую
Олег
Диск сюда нужен с юатерейкой явно
Олег
Но весьма интересно
Олег
спасибо за наводку
Олег
итого 5 дисков под кеши так понимаю нужно
Александр
Четное число
Олег
2 special, 2log, 1arc
Александр
2 special, 2log, 1arc
log - насколько я мог его разглядеть - ничего не ускоряет, по крайней мере, я не добился
Олег
хотя по идее терабайтник поделить на 3 раздела?
Олег
log - насколько я мог его разглядеть - ничего не ускоряет, по крайней мере, я не добился
кто-то еще тут может подтвердить эту гипотезу? Если что вопрос не к Александру
Станислав
хотя по идее терабайтник поделить на 3 раздела?
Суть отдельного лога не в том, чтобы его с чем-то разделять. Это отдельный vdev должен быть
George
log - насколько я мог его разглядеть - ничего не ускоряет, по крайней мере, я не добился
Slog уменьшит латенси синхронной записи в первую очередь, и снимет эту нагрузку с основных vdevs. Ещё немного уменьшит фрагментацию т.к. Zil перестанет на vdevs сбрасываться
George
2 special, 2log, 1arc
Некоторые можно на одно устройство погрузить, если у него будет запас по иопсам
George
Если синхронной записи нет то slog не нужен особо
Александр
Бд обычно
А вот интересно. можно ли как-то посмотреть, сколько там тех синхронных записей?
George
Олег
Wat? Какой фтп нынче)
Объясни клиентам полугосов))
George
Я даже не помню пытается ли фтп сервер среднестатистический синк делать при записи
George
Объясни клиентам полугосов))
Ну это частный кейс, а классический - всё же бд
Александр
Zpool iostat
syncq_wait?
Олег
Мне тут один тв канал выгрузкой дал ftp, который половину команд вообще не умеет))), так к слову больше
George
syncq_wait?
Несподручно посмотреть пока, в одном из режимов он прям выдаст sync_write чтоли
Александр
Несподручно посмотреть пока, в одном из режимов он прям выдаст sync_write чтоли
Если найдешь заклинание, не обломайся сюда кинуть
George
Ну и самый простой вариант понять поможет ли slog - на время выставить sync=disabled (с пониманием, что на это время при потере питания синхронная запись потеряется) и посмотреть есть ли разница
Станислав
Ну и самый простой вариант понять поможет ли slog - на время выставить sync=disabled (с пониманием, что на это время при потере питания синхронная запись потеряется) и посмотреть есть ли разница
Я на датасет с БД под Битрикс выключал, запускал встроенный тест битрикс - ноль на массу. Потом включил always - количество операций записи и изменения снизилось в 10 раз. Пул из двух nvme в зеркале
Станислав
Он вообще коммиты с данными в бд тестит? Вопрос к бенчу
Я всегда к этому тесту относился с скептицизмом)Думаю, что тестит коммиты, не даром там отдельно параметры записи, чтения, изменения. А вообще для того, чтобы узнать, есть ли узкое место в хранилище, неплохим инструментом кажется pt-diskstats.
Станислав
👆подкорректировал, а то написал так, что самому не всё понятно было
Илья
Господа, подскажите по теме тюнинга пула под MySQL. Можно ссылками на любом языке. Я что-то слышал про 8кБ блоки, но это не точно.
Станислав
https://wiki.freebsd.org/ZFSTuningGuide#MySQL
Такая себе инструкция. На гарантированную потерю данных, если нет защиты по питанию
Станислав
Господа, подскажите по теме тюнинга пула под MySQL. Можно ссылками на любом языке. Я что-то слышал про 8кБ блоки, но это не точно.
8кб для постгреса, для MySQL - 16кб. zfs set primarycache=metadata tank/db zfs set atime=off tank/db zfs set recordsize=16k Это базовые настройки, подходящие для всех primarycache=metadata указывает кешировать в ОП на чтение только метаданные, так как у MySQL свой кеш в ОП есть, настраиваемый. Остальные думаю понятны без объяснений