Apache Druid
Druid — это ориентированное на столбцы распределенное хранилище данных с открытым исходным кодом, написанное на Java
Описание
Apache Druid – это колоночная открытая база данных, написанная на Java.
Druid спроектирован с целью быстрой обработки больших, редко изменяющихся массивов данных и немедленного предоставления доступа к ним. Он был разработан с целью обслуживания и поддержания 100% времени безотказной работы перед лицом развертывания кода, сбоев машин и других возможностей производственной системы. Это может быть полезно и для бэк-офисных случаев, но проектные решения были явно направлены на постоянную работу.
Друид подходит для продуктов, которые требуют приема данных в реальном времени из одного большого потока данных. Особенно, если вы ориентируетесь на работу без простоя и создаете свой продукт поверх ориентированного на время суммирования входящего потока данных. Говоря о скорости запроса, важно уточнить, что означает «быстрый»: с друидом он полностью находится в пределах возможности для достижения запросов, которые выполняются менее чем через секунду через триллионы строк данных.
Особенности Druid
- Колоночное хранение данных
- Мощная параллельная обработка данных
- Возможность работы в режиме реального времени или в фоновом режиме
- Облачная отказоустойчивая архитектура
- Быстрая фильтрация
- Точные и аппроксимированные вычисления
-
OLAP БД
Ключевые особенности OLAP сценария работы
- Подавляющее большинство запросов - на чтение;
- Данные обновляются достаточно большими пачками (> 1000 строк), а не по одной строке, или не обновляются вообще;
- Данные добавляются в БД, но не изменяются;
- При чтении, вынимается достаточно большое количество строк из БД, но только небольшое подмножество столбцов;
- Таблицы являются «широкими», то есть, содержат большое количество столбцов;
- Запросы идут сравнительно редко (обычно не более сотни в секунду на сервер);
- При выполнении простых запросов, допустимы задержки в районе 50 мс;
- Значения в столбцах достаточно мелкие - числа и небольшие строки (пример - 60 байт на URL);
- Требуется высокая пропускная способность при обработке одного запроса (до миллиардов строк в секунду на один сервер);
- Транзакции отсутствуют;
- Низкие требования к консистентности данных;
- В запросе одна большая таблица, все таблицы кроме одной маленькие;
- Результат выполнения запроса существенно меньше исходных данных - то есть, данные фильтруются или агрегируются; результат выполнения помещается в оперативку на одном сервере.
Аналоги и альтернативы для Apache Druid
Apache Druid - похожие продукты (инструменты, решения, сервисы)
Отзывы
Отзывов пока нет.