Что такое StarRocks
Определение и назначение
StarRocks — это современная система хранения и обработки данных класса Data Lakehouse с архитектурой MPP (массивные параллельные вычисления) и колоночным хранением данных. StarRocks предназначена для быстрой выборки и обработки сложных аналитических SQL-запросов на больших объёмах данных: миллиарды строк, терабайты данных.
Основные характеристики StarRocks
- Тип системы: распределённая аналитическая СУБД
- Архитектура: MPP с колоночным хранением
- Особенности:
- Высокая скорость обработки запросов
- Поддержка сложных аналитических операций
- Работа с большими объёмами данных
- Аналитика реального времени
Основные сценарии применения
- BI-аналитика на свежих данных с подключением популярных инструментов (Power BI, Tableau, FineBI)
- Аналитика реального времени – задержка при обработке данных составляет 2–5 секунд
- Обработка данных в данных с открытым форматом и с разделяемым доступом между приложениями: Apache Iceberg, Parquet, ORC, Delta Lake
- Офлайн-отчётность и генерация витрин данных - формирования аналитических отчётов на основе предварительно подготовленных и обработанных данных, которые обновляются с определённой периодичностью (batch или пакетная обработка).
- Интерактивные сервисы с встроенной аналитикой
Архитектура системы
Система состоит из двух основных компонентов:
Фронтенд (FE):
- Приём и планирование SQL-запросов
- Управление метаданными
- Оптимизация запросов
- Поддержка высокой доступности
- Хранение данных в колоночном формате
- Выполнение вычислений
- Локальная репликация для отказоустойчивости
Технические особенности
- Колоночное хранение данных для ускорения агрегаций
- Векторизированный execution engine (ускорение в 3–5 раз)
- Оптимизатор на основе затрат (CBO)
- Поддержка извлечения данных в реальном времени (real-time ingestion)
- Поддержка федерализованного доступа к данным – обращение к данным других СУБД и источников данных без промежуточного хранения в собственном хранилище данных.
Преимущества StarRocks
- Высокая производительность для аналитических запросов
- Гибкость интеграции с различными источниками данных
- Поддержка современных форматов хранения (Apache Iceberg)
- Открытый исходный код под лицензией Apache 2.0
- Активное развитие с коммерческой поддержкой
StarRocks занимает уникальную нишу между классическими DWH-системами и stream-ориентированными движками, обеспечивая баланс между офлайн- аналитикой (пакетной аналитикой) и аналитикой реального времени.