Изменения

Перейти к: навигация, поиск

Highload-2022: Отчёт Виталия Филиппова

2502 байта добавлено, 09:33, 7 декабря 2022
Нет описания правки
'''Илья Орлов (STM Labs) — Укрощение мифического чудовища: реальный опыт промышленного использования ScyllaDB без прикрас'''
<pre>Они решили попробовать сциллу. Решили потому, что им нужно было что- повисло все фхуй- 50% таймаутов- автокомпакт 100% цпу выжрал- слишком много то быстрое, чтобы архивировать старые товары (30 млн записей с одним значением в индексе- ТУПИК (картинка: писецсутки)- переезд на ssd- таймаутов осталось . В мегабайтах в секунду не так уж и много, запись в среднем 10 КБ, так что это всего 3.4 МБ/с. У сциллы жебыли заявлены 12500 rps на ядро (400 МБ/с на 32- процессы архивации так ядерном сервере), либо 240 МБ/с на HDD, ну и вообще, мол, shared nothing и вся такая быстрая (туда же повисли, кстати, главный тарантул уполз — Костя Осипов)…- автобутстрап фалсе- отключили компакт. Архивацию сделали в 2 этапа — сначала перекладка, потом включаливалидация — проверка наличия записи в архиве и только потом пометка записей в исходной mongodb как подтверждённых и удаление.- чутьчуть лучше стало но компакт несколько днейПровели тестирование через cassandra- таймаут не значит stress-test, получили 45 МБ/с и 4634 записи в секунду (400 млн записей в сутки), решили, что не записалосьвсё отлично. В прод!:)- отказались от индексовВместо этого всё встало раком. они особо были Сначала получили с учётом валидации 231 запись в секунду (20 млн в сутки). Потом стало ещё хуже — 35 записей в секунду (3 млн в сутки) и отвал 50% операций записи по таймауту. А компакшен стал выжирать 100% CPU… ТУПИК (картинка: песец). Попробовали переехать на SSD — ни фига. Попробовали отключить автоматический компакшен — стало ещё хуже, ручной вообще не нужнымог завершиться, к счастьювключили обратно. так и Отказались от индексов — тоже не исправленопомогло.- А помогло переключение сжатия с zstd -> на lz4. Сразу ушли таймауты ушли. компакт ускорился. даже онлайн норм- Потом вообще убрали валидацию- ускорили и потом ещё поускоряли монгу. В итоге получили- 300 млн записей в сутки / таки скорость архивации 34 мбМБили 300 млн записей в сутки. Причём оказалось, что если операция записи таймаутнулась — это не значит, что данные не записались, и повторять попытку зачастую не надо, иначе наоборот плодятся лишние данные. Ещё оказалось, что есть какой- документация то autobootstrap, который может убить весь кластер и он по умолчанию вроде как false, но при переезде со старой версии — true. И у них была какая-то опасность по этому поводу. '''Итог:''' Сыровато. Документация не всегда в 100% верна- сцилла . Пригодна только словарикак большая хеш-таблица, индексы — г*но. индексы говно. zstd zstd — если включать, то только до первых таймаутов- компакт . Компакшен неуправляемый. инкремент лучше всего. только платный. Из доступных в опенсорсе нормальная стратегия — STCS жить можно. авто лучше не отключать(Size- tiered compaction strategy), а лучшая — инкрементальная, но она есть только в платной версии. В редких случаях даже просто добавление ноды может все проебать иначепомочь потерять данные.- '''Но новое пробовать можно и нужно новое! ебать!</pre>, иначе откуда возьмётся прогресс?''' :)
== ZFS в ZFS → WA и тормоза ==

Навигация