Mark ☢️
Anonymous
если у тебя софт внутри виртуалки генерит один поток, хоть ты 100500 ОСД поставить, скорость будет единтичной
Anonymous
и упрется в скорость записи primary OSD+реплики
Mark ☢️
ну не совсем
Mark ☢️
потому что писнул 4 метра в ПАМЯТЬ первого осд. НЕДОЖДАЛСЯ СИНКА. пошел писать второй блок и тд
Anonymous
я из-за этого и говорю, что ceph и thread=1 и depth=1 это писец зло
Mark ☢️
а потом в конце когда будет мегасинк (если будет вобще) но должен. то будет ожидаться параллельно
edo1
А какие цифры получаются в реале на однопоточной нагрузке?
Mark ☢️
что есть реал ?
Anonymous
Mark ☢️
ну и даже так -- оно там прописывается на магнитные как-бы в фоне. а когда гость даст команду на синк -- хуяк -- а оно уже на блинах
Anonymous
с 2 репликами будет ~50
Mark ☢️
попробуй с одной репликой -- охереешь
Mark ☢️
я так понял это связано тупо с задержкой по сети
Mark ☢️
между осд которая
edo1
Это совсем без ssd? Сеть какая?
Anonymous
рандомно, порядка 150 IOPS'ов, как раз упирается в HDD
Anonymous
это с журналами на SSD
edo1
А чтение?
Mark ☢️
а журналы какого размера ?
Anonymous
да все тоже самое
Anonymous
10-20 Гб картина одинаковая
Anonymous
соственно это и послужило написанию blustore
edo1
Так чтение не должно деградировать от числа реплик
Anonymous
теже БД, на Ceph ну ни как нормально не работают из-за такой особенности
Anonymous
имеется ввиду последовательно
Anonymous
ты меня еще про кэш спрашивал...тут ваще на лекцию хватит )
edo1
Mark ☢️
фап-фап-фап. ага. а что на практике ?
Anonymous
Anonymous
Anonymous
Anonymous
Mark ☢️
это им не поможет если тест долгий
Anonymous
это и дает реалистичные тесты без учета кэшей
Mark ☢️
ну тогда да. прост кеши каг-бы пиздец помогают
Anonymous
Mark ☢️
тащемта если синки вызываются тогда когда хотел аффтар (на каждый врайт?) то хоть с кешем хоть без него.
edo1
Пж зовёт синк только на запись в лог
Mark ☢️
ну щас ага
Mark ☢️
а потом то он всеравно в основное место где таблицы синкает. только редко
Mark ☢️
Anonymous
вот тут поподробнее
тупо нет места для file cache :))). Да я на примере Oracle просто говорю
Anonymous
там еще и ASM, так что все мимо Posix IO
Mark ☢️
ну не пейджкеш тоесть. а свой собственный.
Mark ☢️
вот не похер
Mark ☢️
для цефа
Anonymous
если рассматривать чтение, то более менее продакшеновский софт читает отличной от depth=1, как правило 32, в связи с этим проблемы чтения не так сильно чувствительны.
Mark ☢️
пожалуй да
Anonymous
а вот с записью реально проблемы, т.к. основная масса СУБД (даже к некоторым NOSQL относится) пишут свои логи thread=1 и depth=1
Anonymous
и кэш тут не помогает, так как почти на каждый записанный блок СУБД делает fsync
Mark ☢️
поцггрес + асинк_коммит=Труе
Mark ☢️
но тут кагбы ничо не сделаешь...
Mark ☢️
и как это рещает проблему?
Anonymous
один поток превращается в 4 (если 4 диска)
Anonymous
страйп же
Mark ☢️
дак проблема в мегабайтах в секунду или в иопсах ?
Anonymous
и в том и другом
Anonymous
Anonymous
edo1 для тебя )
Anonymous
@edorus1
Mark ☢️
Mark ☢️
под лейблом ноне нарисован кеш=ансейф
Mark ☢️
кеш ноне вобще в цефе не реализуем. ибо это означает кароче о_директ и пропуск пейджкеша. какой нафиг пейджкеш в рбд
Anonymous
так, а с cache=writeback живая миграция в qemu считается unsafe?
Anonymous
если нужна сохранность данных и живая миграция - юзать write through?
Anonymous
ну да не понятно нарисовал, но суть будет такая же, т.к. да, none в librbd не реализован, вот и команда fsync завернется на KVM
Anonymous
из-за этого при некоторых особенностях cache none быстрее, чем cache writeback