Apache Pinot

Apache Pinot (Incubating) — распределенное хранилище данных OLAP в реальном времени

Категория: Метка:

Описание

Apache Pinot — это распределенное хранилище данных OLAP в реальном времени, которое используется для предоставления масштабируемой аналитики в реальном времени с низкой задержкой. Он может принимать данные из автономных источников данных (таких как Hadoop и простые файлы), а также из онлайн-источников (таких как Kafka). Pinot рассчитан на горизонтальное масштабирование.

Особенности Apache Pinot

  • Колонно-ориентированная база данных с различными схемами сжатия, такими как длина цикла, фиксированная длина битов
  • Сменные технологии индексации — отсортированный индекс, битовый индекс, инвертированный индекс, индекс звездного дерева
  • Возможность оптимизировать план запроса / выполнения на основе метаданных запроса и сегмента.
  • Прием пищи в режиме реального времени от Kafka и прием пищи от Hadoop
  • SQL-подобный язык, который поддерживает выбор, агрегацию, фильтрацию, группирование, упорядочение по, отдельные запросы к фактическим данным
  • Поддержка многозначных полей
  • Горизонтально масштабируемый и отказоустойчивый

 

Ограничения сервиса

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

 

Пино работает очень хорошо для запроса данных временных рядов с большим количеством измерений и метрик. Пример. Запрос (просмотры профиля, эффективность рекламной кампании и т. Д.) Аналитическим способом (кто просматривал этот профиль за последние недели, сколько объявлений было кликнуто за кампанию).

  • OLAP БД

    Ключевые особенности OLAP сценария работы

    • Подавляющее большинство запросов - на чтение;
    • Данные обновляются достаточно большими пачками (> 1000 строк), а не по одной строке, или не обновляются вообще;
    • Данные добавляются в БД, но не изменяются;
    • При чтении, вынимается достаточно большое количество строк из БД, но только небольшое подмножество столбцов;
    • Таблицы являются «широкими», то есть, содержат большое количество столбцов;
    • Запросы идут сравнительно редко (обычно не более сотни в секунду на сервер);
    • При выполнении простых запросов, допустимы задержки в районе 50 мс;
    • Значения в столбцах достаточно мелкие - числа и небольшие строки (пример - 60 байт на URL);
    • Требуется высокая пропускная способность при обработке одного запроса (до миллиардов строк в секунду на один сервер);
    • Транзакции отсутствуют;
    • Низкие требования к консистентности данных;
    • В запросе одна большая таблица, все таблицы кроме одной маленькие;
    • Результат выполнения запроса существенно меньше исходных данных - то есть, данные фильтруются или агрегируются; результат выполнения помещается в оперативку на одном сервере.
    ...

Аналоги и альтернативы для Apache Pinot

Apache Pinot - похожие продукты (инструменты, решения, сервисы)

Amazon Athena

Amazon Athena – это интерактивный сервис запросов, позволяющий просто анализировать данные в...

Apache Druid

Druid - это ориентированное на столбцы распределенное хранилище данных с открытым исходным...

MongoDB

MongoDB — документоориентированная система управления базами данных (СУБД) с открытым исходным кодом,...

ClickHouse

ClickHouse - столбцовая система управления базами данных (СУБД) для онлайн обработки аналитических...

Отзывы

Отзывов пока нет.

Будьте первым, кто оставил отзыв на “Apache Pinot”

Ваш адрес email не будет опубликован. Обязательные поля помечены *