Что такое CLICKHOUSE и колоночные СУБД

  Рет қаралды 40,970

Listen IT

Listen IT

Жыл бұрын

В этой статье мы узнаем:
- Что такое Clickhouse
- Что такое колоночные СУБД
- Чем колоночные СУБД отличаются от обычных строковых
- Почему Clickhouse работает так быстро
- Преимущества использования Clickhouse
- Трудности при работе с Clickhouse
- Для каких проектов используется Clickhouse
- В каких сферах используется Clickhouse
- Где не нужен Clickhouse
- Советы по работе с Clickhouse
Поддержать канал разово - yoomoney.ru/to/410012243709514
Поддержать канал подпиской - boosty.to/listenit
Я.Дзен - zen.yandex.ru/listenit
Телеграм-канал - t.me/listenit_channel
События и статьи про анализ и проектирование ИТ-систем - t.me/itsysdes_events
По вопросам сотрудничества - t.me/ed_akimov
Ссылка на статью 1 - tproger.ru/articles/clickhous...
Ссылка на статью 2 - webdevblog.ru/osnovy-clickhou...
Ссылка на статью 3 - highload.today/kolonochnye-ba...
Что такое Big Data за 6 минут - • Что такое Big Data за ...
Что такое SQL и реляционные базы данных - • Что такое SQL и реляци...
Что такое NoSQL за 6 минут - • Что такое NoSQL за 6 м...
Синтаксис SQL запросов: Часть 1 - • Синтаксис SQL запросов...
Что такое SQL ИНДЕКСЫ за 10 минут - • Что такое SQL ИНДЕКСЫ ...
Что такое ELK за 10 минут - • Что такое ELK за 10 ми...
Что такое МИКРОФРОНТЕНД за 10 минут - • Что такое МИКРОФРОНТЕН...
Различия SOA и микросервисной архитектуры за 9 минут - • Различия SOA и микросе...
Компиляция и интерпретация за 10 минут - • Компиляция и интерпрет...
Что такое TypeScript за 9 минут - • Что такое TypeScript з...
Что такое Swagger и OpenAPI за 3 минуты - • Что такое Swagger и Op...
Введение в REST API за 7 минут - • Введение в REST API за...
Различия REST и SOAP за 4 минуты - • Различия REST и SOAP з...
Что такое HTTP и HTTPS за 9 минут - • Что такое HTTP и HTTPS...
Что такое TCP/IP - • Что такое TCP/IP: Объя...
Что такое прокси-сервер за 7 минут - • Что такое прокси-серве...
Что такое Kubernetes за 9 минут - • Что такое Kubernetes з...
Что такое Docker за 5 минут - • Что такое Docker за 5 ...
Что такое ETL и ELT за 10 минут - • Что такое ETL и ELT за...
Что такое CRUD за 6 минут - • Что такое CRUD за 6 минут
Что такое middleware за 7 минут - • Что такое middleware з...
Что такое идемпотентность - • Что такое идемпотентно...
Что такое ACID за 9 минут - • Что такое ACID за 9 минут
Что такое HATEOAS за 4 минуты - • Что такое HATEOAS за 4...
Что такое CI/CD - • Что такое CI/CD? Разби...
Что такое Code First подход за 4 минуты - • Что такое Code First п...
Что такое Contract First подход за 4 минуты - • Что такое Contract Fir...

Пікірлер: 54
@da_volkov
@da_volkov 2 ай бұрын
Случайно наткнулся на канал, и офигел от количества и качества материалов. У меня как раз задача - верхнеуровнево ознакомиться с разными технологиями, и у вас на канале почти все что мне нужно есть. Причем в доступной форме и с ссылками на референтные материалы. Спасибо за вашу работу!
@ListenIT_channel
@ListenIT_channel 2 ай бұрын
Круто, рад! Напишите, если какую-то тему ещё хочется послушать, чего нет на канале
@doomox6001
@doomox6001 Жыл бұрын
Хорошая разработка, заточенная под решение конкретных задач. В принципе так и должен создаваться софт. А когда пытаешься получить все и сразу, то обычно ничего не выходит. Считаю что разработчики яндекса молодцы.
@KozhinDev
@KozhinDev 2 ай бұрын
Только сейчас узнали, что нашу статью использовали для видео. Спасибо, что упомянули нас) Отличное видео, лайк!
@ListenIT_channel
@ListenIT_channel 2 ай бұрын
Спасибо вам за отличный сурс! ♥️
@lolpwn6528
@lolpwn6528 12 күн бұрын
Спасибо, отличный материал подписываюсь
@LeonidYakovlev85
@LeonidYakovlev85 6 ай бұрын
Большое спасибо за выпуск, было очень интересно, полезно и информативно 👍
@user-fu8dx3hd2p
@user-fu8dx3hd2p Жыл бұрын
Спасибо! Интересно, полезно и понятно)
@michellesfero4068
@michellesfero4068 Жыл бұрын
Круто, спасибо! Очень интересное видео
@user-th4tb3mf5s
@user-th4tb3mf5s 26 күн бұрын
Спасибо! Это лучший обзор что я видел про clickhouse!
@artyomkhrenn
@artyomkhrenn 11 ай бұрын
Спасибо, отличная подача видео, быстро познакомился с кликхаусом
@apristen
@apristen Жыл бұрын
спасибо! отлично рассказано!
@sovrinfo
@sovrinfo Жыл бұрын
Спасибо за видео. Коммент в поддержку!
@mikurrey416
@mikurrey416 Ай бұрын
Большое спасибо, очень ценно для вхождения в тему и очень легко для понимания
@user-uq4ix5ie3q
@user-uq4ix5ie3q Жыл бұрын
Благодарю! Я врубился в отличия!
@user-hf8os4yp4d
@user-hf8os4yp4d Жыл бұрын
Очень классное видео, спасибо! Очень не хватает уроков кликхауз для чайников, в Ютубе их почти нет)
@andreypopov5018
@andreypopov5018 10 ай бұрын
Найс! Сил вам и здоровья! Выжимка отличная
@Dimedrolity
@Dimedrolity Ай бұрын
Качественный материал, полезно для меня как для разработчика грейда Middle 👍
@non5309
@non5309 10 ай бұрын
Хорошие ролики, спасибо!
@vectrasale
@vectrasale Жыл бұрын
Отличное видео!
@Denisko123
@Denisko123 8 ай бұрын
Использую на работе. Действительно большие объемы обрабатывает просто с космической скоростью. Типа статы и фильтров на ней. А вот с единичными записями, обновлением и удалением (через мутации) тут все тяжко. Приходиться манипулировать
@user-nl3vg3gt2j
@user-nl3vg3gt2j Жыл бұрын
Сделай видео про руководство по стилю в SQL
@rootgorfal9811
@rootgorfal9811 Жыл бұрын
2:47 в запросе поиск по столбцу color в пояснении type
@letsdosmth7666
@letsdosmth7666 Жыл бұрын
сделайте пожалуйста ролик про WSDL !!!
@user-xv3gn9nr9k
@user-xv3gn9nr9k Жыл бұрын
Интересно
@nav6526
@nav6526 7 ай бұрын
В недостатки можно еще добавить проблемв с join-ами таблиц. Если данных много и они не помещаются в памяти то запрос упадет с ошибкой. Мы решили эту проблему с помощью разделения одрого запроса на N запросов, каждый из которых обрабатывает часть данных. Например есть таблица клиентов и таблица их заказов. В каждой из таблиц есть номер телефона клиента и нужно сделать join по номеру телефона. Если попытаться соединить сразу весь набор данных то запрос упадет из-за недостатка памяти. Но можно сначала сдрлать join для телефонов попадающих под условие something_hash(phone_number)%6 = 0, затем 1,...5. После чего объединить данные. А еще лучше явно указывать извлекаемые поля и не использовать звездочку в select. Оитимизатор запроса в clickhouse гораздо более простой чем в oracle, postgresql, поэтому разработчик сам должен состаалять эффективные запросы.
@ListenIT_channel
@ListenIT_channel 7 ай бұрын
Круто, спасибо, интересный опыт!
@kironpapon
@kironpapon Жыл бұрын
Привет Там кажется, на 2:30 ошибка, когда ты показываешь как происходит запрос к БД. Нужно колонкой ты указываешь строку, в которой значение color = 5235, но в запросе попросил color = 543 И на 3:30 ты говоришь "С цветом 542", а ищем мы цвет 543 Сорри, если душно.... Видос пушка, спасибо большое
@ListenIT_channel
@ListenIT_channel Жыл бұрын
Привет! Да не, не душно, там автор статьи, видимо, напутал, а я не сразу заметил ошибки. На суть сильно не влияет, поэтому решил оставить. Буду внимательнее, спасибо!
@kironpapon
@kironpapon Жыл бұрын
@@ListenIT_channel да, сто проц не влияет, все супер понятно и очень круто изложен материал, еще раз спасибо!
@skarfex
@skarfex 11 ай бұрын
Если уж душнить, то пополной) В пункте 2 мы ищем не колонку с названием type, а колонку color и значение 543
@linust5892
@linust5892 6 ай бұрын
Опа KozhinDev)) Красноярским привет
@timuratazhanov6553
@timuratazhanov6553 2 ай бұрын
Палатка первой помощи на первой секунде =)
@ListenIT_channel
@ListenIT_channel 2 ай бұрын
😏
@sighupcmd
@sighupcmd 10 ай бұрын
Буффер вставок придется самому имплементить? На стороне КХ нет такой фичи?
@seriych
@seriych 9 ай бұрын
Есть таблицы с движком buffer, есть асинхронные вставки. В каких-то случаях этого может хватить. Но в целом желательно вставлять пачками, то есть да, самому имплементить.
@vladislavstepanov7591
@vladislavstepanov7591 8 ай бұрын
Есть адаптеры из коробки на уровне Clickhouse которые позволяют подключить ее напрямую к RabbitMQ/Kafka, а CH сам оттуда будет забирать на вставку. Но не уверен насколько это работает, не пробовал
@reveuzze777
@reveuzze777 7 ай бұрын
listen TO IT💡
@Alexander-ws6wl
@Alexander-ws6wl 3 ай бұрын
А можно для непрофильных специалистов объяснить, как столбцовая СУБД выдаёт в результате строку, если все столбцы хранятся отдельно? Что связывает элементы разных столбцов?
@heheheyhey5234
@heheheyhey5234 2 ай бұрын
ключ есть у каждой ячейки .типа НомерСтроки
@lsandreyls
@lsandreyls 5 ай бұрын
Ну так себе статься, про класторизированные индексы понятно , но вот самое ведь интересно не как факт указать когда не нужно использовать не класторизированные индексы, а почему .
@trioX13
@trioX13 Жыл бұрын
Сделайте пожалуйста про касандру
@user-wb5dh1ps4x
@user-wb5dh1ps4x Ай бұрын
Строка, только повернутая на 90 градусов)
@yandoru
@yandoru 4 ай бұрын
542 vs 543 Fight!
@kuzmaprut
@kuzmaprut 2 ай бұрын
в clickhouse есть primary key
@IgorZimaev
@IgorZimaev 9 ай бұрын
«Пропустить колонки, которые не нужны для анализа - невозможно» Даже если повесить на колонку индекс? Как же он тогда ускоряет поиск?)
@vladislavstepanov7591
@vladislavstepanov7591 8 ай бұрын
В любом случае это будет не так быстро. Есть Index Scan Only, который будет читать данные только из индекса. Но как только ты добавишь в SELECT поле не из индекса или из другого индекса, операция сразу замедлится в несколько раз, потому что это будет уже Index Scan, а значит БД будет подглядывать в heap и забирать данные из оригинальной таблицы А в колоночной бд такого нет потому что она просто может посчитать byte offset для соседней колонки и сразу считать данные, без поиска
@nav6526
@nav6526 7 ай бұрын
В строковых бд обычный индекс позволяет получить место хранения строки, т.е. является указателем. Перейдя по указателю получанм достап к строке, но полученная строка состоит из N полей (или по другому - колонок), и чтобы получить доступ к какому-то полю нужно прочитать все поля перед ним. В кликхаусе эти поля таблицы хранятся в отдельных отсортированных структурах, поэтому поиск по колонке очень быстрый. В строковой бд если запрос должен выполняться по всей таблице или планировщик запроса считает что запрос не получит выгоды от индекса то будет фулскан всей таблицы и на больших данных это очень медленно.
@nauryzzz
@nauryzzz Жыл бұрын
Ну по сути, обычная таблица, где каждый столбец представляет собой некластеризованный индекс.
@andriibodashevskyi
@andriibodashevskyi Жыл бұрын
На минусах сразу понятно что это создавали россиянские «гении»
@ListenIT_channel
@ListenIT_channel Жыл бұрын
Колоночные базы как технологию придумали ещё в 1969, это не новинка. А что именно смутило в минусах?
@michellesfero4068
@michellesfero4068 Жыл бұрын
Вполне годная база, главное правильно использовать. А что вы придумали и реализовали?
@zorro3481
@zorro3481 10 ай бұрын
Хохол детектед
@dasydasy9268
@dasydasy9268 Жыл бұрын
Отличное видео!
Базы данных. ClickHouse. Колоночные СУБД
53:29
BRAWLER MUTATIONS WILL BREAK THE GAME! - Brawl Talk
09:34
Brawl Stars
Рет қаралды 25 МЛН
ВИРУСНЫЕ ВИДЕО / Виноградинка 😅
00:34
Светлый Voiceover
Рет қаралды 7 МЛН
Что такое JWT и как его создать
14:32
Listen IT
Рет қаралды 36 М.
ОКОННЫЕ ФУНКЦИИ SQL за 13 минут
13:46
Listen IT
Рет қаралды 36 М.
Что такое TCP/IP: Объясняем на пальцах
15:38
Что такое ACID за 9 минут
9:46
Listen IT
Рет қаралды 29 М.
BRAWLER MUTATIONS WILL BREAK THE GAME! - Brawl Talk
09:34
Brawl Stars
Рет қаралды 25 МЛН