Doris и ClickHouse входят в число ведущих аналитических баз данных реального времени. Doris показывает преимущество на повседневных нагрузках современных команд по работе с данными.
Распределённые соединения нескольких таблиц без обходных решений с широкими таблицами.
Архитектура MPP с оптимизатором на основе стоимости автоматически выбирает соединения Broadcast, Shuffle или Colocate. Doris выполняет весь набор TPC-DS; в ClickHouse около 50% запросов завершаются с ошибкой.
Разделение хранения и вычислений с открытым кодом.
Эластичные вычисления масштабируются без перебалансировки. Экономичная архитектура доступна в открытой версии 3.0+, без привязки к коммерческому облаку.
UPSERT в реальном времени без потери скорости запросов.
Merge-on-Write сохраняет стабильность чтения при частых обновлениях. Полный ACID, совместимость с MySQL, тысячи одновременных запросов вместо менее 100.
Реальные миграции в крупных интернет-компаниях: одинаковые SQL-нагрузки и совершенно разные результаты.
Сравнение по всем значимым критериям.
- Распределённая архитектура MPP
- Совместимость с протоколом MySQL, стандартный SQL
- Автоматическая оптимизация CBO
- Архитектура Scatter-Gather
- SQL-подобный нестандартный синтаксис
- Требуется ручная настройка
- В 2–10 раз быстрее, распределённое выполнение между узлами
- CBO выбирает стратегию соединения
- Весь набор TPC-DS проходит
- Эффективная работа с памятью, без OOM
- Подзапросы и моделирование широких таблиц
- Без CBO, ручная настройка
- Около 50% запросов TPC-DS завершаются с ошибкой
- Частые OOM на больших запросах
- Движок Merge-on-Write
- Строгая согласованность, немедленная видимость
- Высокопроизводительный UPSERT без деградации
- ReplacingMergeTree, согласованность в конечном счёте
- FINAL замедляет запросы в 2–10 раз
- Частые обновления → дополнительные затраты на слияние
- Полноценные транзакции ACID
- Атомарная пакетная загрузка
- Нет поддержки транзакций
- Часть данных может стать видимой раньше остальных
- Тысячи одновременных запросов, преимущество в 10 раз и более
- Эффективное управление памятью
- Обычно менее 100 одновременных запросов
- Нагрузки с большим потреблением памяти дестабилизируют кластер
- Высокопроизводительный протокол Arrow Flight
- Hive / Hudi / Iceberg / Parquet
- Автомасштабирование и балансировка реплик
- Только JDBC
- Ограниченная интеграция с lakehouse
- Масштабирование требует ручной перебалансировки
- Открытая версия 3.0+
- Эластичные вычисления, без перебалансировки при масштабировании
- Снижение затрат до 70%
- Только коммерческая облачная редакция
- Тесная связанность, масштабирование требует перебалансировки
- Избыточные ресурсы для пиков нагрузки
- Apache Software Foundation, поддержка сообществом
- Контроль коммерческой компании
