Руководство по выбору базы данных OLAP: углубленное сравнение и анализ Doris и ClickHouse
Руководство по выбору базы данных OLAP: углубленное сравнение и анализ Doris и ClickHouse

код тридцать пять : Персональная домашняя страница В моем сердце стихи и картины, Я танцую с кодами на кончиках пальцев, Я вижу мир глазами и иду по тысячам гор. Мир стоит всего. !


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

1️⃣Происхождение и предыстория

Doris

  • Первоначально разработано отделом Baidu.,Он называется Байду Пало.
  • Он был открыт в 2017 году, внесен в сообщество Apache в 2018 году и переименован в Apache Doris.
  • Целью разработки является удовлетворение потребностей анализа в реальном времени в крупномасштабных сценариях.

ClickHouse

  • Компания Яндекс разработала и открыла исходный код.
  • Специально разработан для сценариев OLAP, особенно подходит для больших таблиц и запросов агрегированных данных.
  • Он широко используется в различных сценариях крупномасштабного анализа в Яндексе.
2️⃣Эксплуатация и обслуживание

Doris

  • Doris обеспечивает простоту эксплуатации и обслуживания. Например, он поддерживает автоматическое восстановление вышедших из строя узлов и гибкие возможности расширения и сжатия, сокращая частоту ручного вмешательства.
  • Предоставляет множество инструментов мониторинга и диагностики, которые помогают эксплуатационному и техническому персоналу быстро обнаруживать и решать проблемы.
  • Сообщество активно и оказывает хорошую поддержку, что позволяет своевременно решать проблемы, возникающие в процессе эксплуатации и обслуживания.

ClickHouse

  • ClickHouse относительно сложен с точки зрения эксплуатации и обслуживания. Например, для обслуживания шарда и реплики ClickHouse требует ручной настройки в файле конфигурации.
  • Хотя также предоставляются некоторые инструменты мониторинга и диагностики, они могут быть не такими простыми в использовании и многофункциональными, как Doris.
  • Сообщество одинаково активно, но поскольку некоторые функции уникальны, для эффективного решения проблемы может потребоваться более глубокое понимание и изучение.
3️⃣Расширяемость

Doris

  • Дорис поддерживает онлайн-расширение и сокращение,Легко справляется с изменениями объема и вычислительных потребностей.
  • Через функцию динамического разделения,Можно легко выполнить детальное управление данными.,Улучшите производительность запросов.
  • Поддерживает несколько методов импорта данных.,Включает пакетный импорт и импорт в реальном времени.,Он может гибко справляться с потребностями импорта данных в различных сценариях.

ClickHouse

  • ClickHouse также поддерживает онлайн-расширение и сжатие, но требует более сложной настройки и управления.
  • Горизонтальная масштабируемость и высокая доступность данных могут быть достигнуты за счет использования распределенных таблиц и возможностей репликации данных.
  • Предоставляет различные механизмы таблиц и варианты оптимизации.,Для удовлетворения потребностей запросов и обработки в различных сценариях. Но в некоторых сложных сценариях,Для достижения оптимальной производительности может потребоваться дополнительная настройка и оптимизация.
4️⃣Архитектура

Doris

  • Doris использует архитектуру MPP (массово-параллельная обработка) и столбчатый формат хранения.,Может эффективно обрабатывать крупномасштабные данные и аналитические запросы.
  • Поддерживает динамическое разделение данных и стратегии автоматического распределения данных для достижения балансировки нагрузки и эффективных запросов.
  • Благодаря упрощенным операторам создания таблиц и оптимизированной конструкции механизма выполнения он обеспечивает большую простоту использования и производительность.

ClickHouse

  • ClickHouse также использует архитектуру MPP и столбчатый формат хранения, уделяя особое внимание оптимизации сценариев OLAP.
  • Поддерживает несколько механизмов таблиц и функции репликации данных для удовлетворения различных потребностей в хранении и обработке данных. Эти конструкции делают ClickHouse очень гибким и масштабируемым по архитектуре.
  • Однако в некоторых аспектах, таких как операция соединения, он может быть не таким эффективным и гибким, как Doris, в то же время его поддержка SQL также ограничена (например, оконная функция все еще находится на стадии эксперимента). Эти характеристики заставляют учитывать компромиссы, основанные на конкретных бизнес-сценариях, при выборе библиотеки данных.
6️⃣Хранение и модель данных

Doris

  • Используйте столбчатое хранилище,Поддержка векторизованного механизма выполнения,Способен эффективно обрабатывать пакетные операции.
  • Поддерживает более гибкие модели таблиц, такие как хранилище с разреженной матрицей, определяемые пользователем измерения, столбцы индикаторов и т. д., для облегчения многомерного анализа.
  • dataХранение столбцов и сжатие столбцов,Уменьшает требования к пространству хранения и повышает эффективность запросов.

ClickHouse

  • Также используется столбчатое хранилище, которое особенно подходит для выполнения агрегатных запросов.
  • Предоставляет различные механизмы таблиц.,Такие как MergeTree, Log и т. д.,Для удовлетворения различных потребностей в хранении и обработке данных.
  • Поддерживает функции раздела данных и репликации данных.,Повышена надежность и производительность запросов к данным.
7️⃣Производительность запросов

Doris

  • Акцент на возможности анализа в реальном времени,Поддерживает запросы с высоким параллелизмом и низкой задержкой.
  • Благодаря таким стратегиям, как автоматическое разделение и распределение данных, достигается балансировка нагрузки и эффективный запрос.
  • Он хорошо работает в сложных запросах и связанных запросах и подходит для специальных запросов и сценариев BI-анализа.

ClickHouse

  • Отличная производительность при выполнении запросов к одной таблице.,Особенно при работе с большими широкими таблицами и запросами агрегирования данных.
  • Векторизованный механизм выполнения и эффективная технология сжатия данных еще больше повышают скорость запросов.
  • Однако он может быть не таким гибким и эффективным, как Doris, при обработке сложных и связанных запросов.
8️⃣Импорт и параллелизм

Doris

  • Поддерживает несколько методов импорта, таких как пакетный импорт и импорт в реальном времени.
  • За счет оптимизации механизмов хранения и запросов достигаются возможности записи и выполнения запросов с высоким уровнем параллелизма.
  • Он подходит для сценариев, требующих обработки и анализа больших объемов данных в режиме реального времени.

ClickHouse

  • Также поддерживаются такие функции, как пакетный импорт и импорт в реальном времени.
  • Отличная производительность при импорте одной таблицы, особенно при импорте с локального диска.
  • Однако он может быть не таким стабильным и эффективным, как Doris, с точки зрения импорта распределенных таблиц и высокопараллельных запросов.
9️⃣Удобство использования и экология.

Doris

  • Синтаксис SQL аналогичен синтаксису MySQL, что снижает затраты на обучение.
  • Он предоставляет обширную документацию, поддержку сообщества и инструменты разработчика, которые облегчают пользователям изучение и использование.
  • Он имеет хорошую совместимость с несколькими инструментами BI и платформами визуализации, его легко интегрировать и расширять.

ClickHouse

  • Синтаксис SQL относительно уникален и может потребовать определенных затрат на обучение.
  • Однако также предоставляется подробная документация и поддержка сообщества, чтобы помочь пользователям решать проблемы и делиться опытом.
  • С точки зрения экологии ClickHouse постоянно растет и постепенно улучшается его интеграция с различными инструментами и платформами.

Ниже приводится сравнение Doris и ClickHouse с точки зрения языков разработки:

1️⃣0️⃣Развитие языка

Doris

  • Язык развития Дорис в основном использует C++ в качестве механизма запросов и хранения.,Также с помощью javaразвиваем компонент FE.
  • Использование C++ позволяет Дорис справиться с этим «под капотом».、Управление памятью、Управление параллелизмом и другие аспекты для достижения более высокой эффективности и стабильности.
  • в то же время,Doris также предоставляет некоторые интерфейсы и функции SQL, совместимые с MySQL.,Делает приложение верхнего уровня более удобным.

ClickHouse

  • ClickHouse также использует C++ в качестве основного языка разработки.,Это одна из важных причин, почему он может обеспечить высокопроизводительную обработку и анализ.
  • Похож на Дорис,ClickHouseтакже используйтеC++Преимущества реализации высокой эффективности внизуданныехранилище、индекс、Запрос и другие функции.
  • также,ClickHouse также предоставляет уникальный синтаксис и функции SQL.,и клиентские библиотеки, поддерживающие несколько языков программирования,Такие как Python, Java и т. д.,Пользователям удобно применять инновации.

Что касается языков разработки, и Дорис, и ClickHouse выбрали C++ в качестве основного языка реализации, что обеспечивает их преимущества в производительности и стабильности. В то же время оба они также предоставляют SQL-совместимые интерфейсы и библиотеки функций, что делает разработку приложений более удобной.

1️⃣1️⃣Другие особенности и преимущества

Doris

  • Поддерживает расширенные функции, такие как динамическое разделение и автоматическое распределение данных.,Удобно для пользователей управлять и оптимизировать данные.
  • Предоставляет разнообразныеданныепараметры сжатия ииндекс Стратегия,Чтобы уменьшить требования к пространству хранения и повысить эффективность запросов.
  • Ориентируясь на режим реального времени и стабильность, он подходит для сценариев онлайн-анализа, которые предъявляют строгие требования ко времени отклика.

ClickHouse

  • Поддерживает базовые технологии оптимизации, такие как векторизованное выполнение и инструкции SIMD.,Значительно улучшена скорость обработки данных.
  • Он предоставляет богатую библиотеку функций и механизм расширения, позволяющий пользователям настраивать работу.
  • Отличная производительность при обработке больших объемов запросов и сложных запросов.,Подходит для анализа данных, анализа журналов и других сценариев.

Подводя итог, можно сказать, что Doris и ClickHouse — это высокопроизводительные системы баз данных, основанные на архитектуре MPP, каждая из которых имеет уникальные преимущества и применимые сценарии. Какую базу данных выбрать, зависит от таких факторов, как конкретные бизнес-потребности, объем данных, режим запросов и требования к работе в режиме реального времени, стабильности и простоте использования.

👫Резюме👫

Doris и ClickHouse — отличные инструменты обработки и анализа данных с отличной производительностью и функциональностью. При выборе вам необходимо провести тестирование производительности, сравнение функций, оценку удобства использования и проверку поддержки сообщества на основе реальных потребностей. В то же время вам также необходимо учитывать конкретные сценарии применения и характеристики данных, чтобы выбрать наиболее подходящее техническое решение.

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose