2022-05-25 19:54:25
Поговорим сегодня про Базы Данных
В моей компании используют СУБД: MySQL и ClickHouse. Но в чем их
отличие и что лучше использовать для продуктовой аналитики? Обязательно расскажу на собственном примере работы в компании - не переключайтесь
Спойлер: в конце будет новость про новые знания по SQL для продвинутых
Самым простым языком: ClickHouse —
столбцовая СУБД. Отличие от
строковых (например, MySQL, PostgreSQL) в том, что столбцовые БД хранят значение
одного столбца вместе, а строковые хранят данные
одной строки вместе, как ни странно:)
Сразу стоит отметить некоторые
ограничения, которые есть в ClickHouse:
- Нет команды UPDATE: данные, записанные в ClickHouse, нельзя изменить. Или почти нельзя.
- Нет команды DELETE, есть только DROP. Можно удалить таблицу целиком, или ее патрицию. Конкретную строчку удалить нельзя.
- И нет транзакций.
НО БОЛЬШОЕ ПРЕИМУЩЕСТВО ClickHouse (столбцовая СУБД) перед MySQL (строковая) — это
скорость выгрузки данных для АНАЛИТИКИ Для сравнения: один и тот же запрос в моей рабочей задаче - в MySQL данные за 1 день выгружались 15 минут
- в ClickHouse те же данные за 1,5 месяца выгрузились за 5 минут.
Для использования данного преимущества нужно уметь написать ETL скрипт для переноса данных из MySQL в ClickHouse + как доп плюшка: можно агрегировать данные из MySQL в Клик.
Долгожданный спойлер: потихоньку у меня продвигается подготовка к преподаванию курса "SQL для продвинутых сотрудников Ростелекома" и на днях узнал, что материалы, которые я буду создавать для курса остаются у меня - с радостью буду делиться ими с вами
150 views16:54