Переход на шардированный ClickHouse

2500,00
Одиночный ClickHouse рано или поздно упирается в объём, скорость или отказоустойчивость.

Дальше - шарды и реплики, и вот там начинается самое интересное: SQL продолжает работать без единой правки, сервер ошибок не возвращает, а запросы могут выдавать неверные ответы:

  • count() задваивается, если в пути реплики потерялся {shard} - при этом uniqExact() и avg() остаются верными, и отчёт выглядит здоровым
  • LIMIT без ORDER BY возвращает строки одного шарда, второй в выборку не попадает
  • JOIN без GLOBAL теряет строки без оповещения клиента
  • INSERT через Distributed отвечает "ОК" раньше, чем данные дошли до шардов
  • неудачный ключ шардирования кладёт весь свежий трафик на один шард, а готовой операции для смены ключа в ClickHouse нет

За 42 шага ты разберёшь каждую из этих ситуаций на практике и научишься их замечать. Нужная теория разобрана прямо в стенде.

Кластер: 2 шарда по 2 реплики, отдельный ClickHouse Keeper из 3 узлов, версия 26.7. Данные ощутимые: 10 млн строк. Автотесты проверяют состояние объектов в базе.

Пригодится, если уже работаешь с ClickHouse или собираешься: шардирование и распределённые запросы стабильно встречаются на собеседованиях уровня middle и выше.

Содержание:
1. Введение
2. Подключение и разведка
3. Шардирование и репликация: разные оси
4. Реплицированная и распределённая таблицы
5. Реальные данные: загрузка 10М строк Citibike
6. Физическое хранение данных
7. Ключ шардирования и перекос
8. Чтение и диагностика на шардированном кластере
9. Перенос таблицы на шардированный кластер
10. Запись на шардированном кластере
11. Когда данные на нодах расходятся
12. Очистка и итоги

Доступ выдаётся на 30 дней. Материалы можно сохранить в PDF.
После оплаты получи доступ по ссылке: https://labs-pay.rzvde.pro/claim