Комментарии 5
Также отказались от Clickhouse из-за потери данных.
А расскажите чуть подробнее. Для каких целей у вас кликхаус и из-за чего потери.
Про потери данных не совсем верно. Вопрос был про производительность.
Мы Clickhouse не по назначению использовали. Пытались одной базой решить две проблемы:
1. Уметь считать статистику для отчетов (например, сколько каких переходов на сайт за день было)
2. Уметь вытаскивать данные по конкретному человеку (в момент, когда идентифицируем человека надо все данные по его переходам из сервиса на Clickhouse перенести в другой микросервис).
Для первого Clickhouse хорошо приспособлен, а для второго не очень (хотя на предварительных синтетических тестах выглядело, что все ок).
В принципе за счет батчинга и других ухищрений мы заставили Clickhouse вывозить и второй тип нагрузки, но так как нагрузка у нас очень быстро растет, приходилось постоянно возиться с тем, чтобы наше решение скейлить.
В итоге для доступа в разрезе по конкретному человеку заюзали Cassandra, а данные для отчетов храним в DataLake хранилище поверх S3 файлов.
Для несложных отчетов в принципе и Clickhouse подошел бы. А вот для ML нужно выгружать большой объем данных и тут Clickhouse тоже не очень подходит. DataLake закрывает как кейсы с аналитикой (в том числе сложной, которую нельзя SQL-запросом описать), так и кейсы ML.
Миллиард отправок в неделю и 730 тысяч запросов в минуту. Как справляемся с ежегодным удвоением и не унываем