Разделы

Цифровизация Бизнес-приложения

«Яндекс» открыл код обственной СУБД для обработки триллионов событий

«Яндекс» открыл исходный код одного из своих крупных проектов - ClickHouse. Эта СУБД предназначена для обработки миллиардов и триллионов событий. Ее отличают легкая масштабируемость и возможность географической разрозненности серверов.

Открытие кода ClickHouse

Компания «Яндекс» опубликовала исходный код ClickHouse — распределенной системы управления базами данных (СУБД), разработанной для сервиса «Яндекс.Метрики», предназначенного, в свою очередь, для оценки посещаемости сайтов, анализа поведения посетителей и эффективности рекламы.

Сфера применения СУБД

СУБД ClickHouse создана для удовлетворения потребности хранить и быстро обрабатывать большие объемы информации, предназначенной для создания аналитических отчетов различного плана.

Cфера применения ClickHouse не ограничивается аналитикой сайтов и приложений. СУДБ может быть использована в телекоммуникациях, рекламе, аукционах и онлайн-торговле, для обработки данных мониторинга и телеметрии, а также для задач информационной безопасности.

Использование в «Яндексе»

В связи с тем, что система является полноценной СУБД и обладает весьма широкой функциональностью, уже в начале использования в 2012 г. была написана подробная документация.

«Яндекс» открыл исходный код одного из своих крупных проектов - СУБД ClickHouse

В дальнейшем «Яндекс» стал применять ClickHouse не только в «Метрике», но и в «Маркете», «Почте», «Директе», «Вебмастере» и Авто.ру, для бизнес-аналитики и в мониторинге инфраструктуры. В компании пояснили, что продукт быстро распространился на другие сервисы благодаря наличию инструкции, полной работоспособности «из коробки» и отсутствию в необходимости нанимать разработчиков. 

Возможности СУБД

Дискуссия в метавселенной: ИИ, обмен данными и иммерсивные сценарии
ИТ в банках

Серверы, подключенные к ClickHouse, могут находиться в разных местах. Архитектура системы такова, что для добавления новых серверов не нужно перестраивать кластер. Поэтому ClickHouse легко масштабируется до петабайт хранимых данных и позволяет хранить записи о триллионах событий — например, о действиях пользователей на сайте, о запросах к сервису или о показах рекламы. 

В «Яндексе» подчеркивают, что ClickHouse занимает собственную нишу на рынке. ClickHouse не требует предагрегации данных, поддерживает диалект языка SQL, позволяет загружать данные в реальном времени и самостоятельно занимается их хранением и индексацией. Предоставляя удобство реляционных СУБД, ClickHouse может использоваться в своей инфраструктуре и избавить от регулярных платежей за облачные сервсисы.

Отсутствие аналогов с открытым кодом

«Открытых СУБД с такими возможностями на рынке сейчас нет. Публикация исходного кода ClickHouse — это наш вклад в open source, один из самых значимых в истории компании, — прокомментировал руководитель группы разработки ClickHouse Алексей Миловидов. — У нас было несколько причин для этого, в том числе и чисто прагматических. Применение технологии в областях, которыми «Яндекс» не занимается, помогает шире взглянуть на ее возможности. У нас, например, уже есть положительный опыт использования ClickHouse в совместном проекте с ЦЕРН. К тому же расширение пользовательской базы позволяет узнавать о проблемах, о которых иначе было бы трудно догадаться, и улучшать продукт».

Проект «Яндекса» с ЦЕРН назывался LHCb. Он был посвящен изучению частиц, содержащих b-кварк. Данные эксперимента включали в себя несколько миллиардов событий, которые обычно анализируются последовательно, на что могут потребоваться часы. «Яндекс» предоставила партнеру сервис на базе ClickHouse, который позволил делать это за минуты. 

Александр Бабкин, Газпромбанк: Сейчас иностранные ИБ-решения в Газпромбанке замещены на 65%
безопасность

Поддержка «Яндексом» open source

Раньше «Яндекс» уже публиковал исходный код своих технологий. Помимо прочего, в открытом доступе находятся предназначенный для нагрузочного тестирования «Яндекс.Танк», технология разработки сайтов БЭМ (Блок, Элемент, Модификатор) и инструмент для извлечения структурированных данных из текста «Томита-парсер».

Сергей Попсулин