Настройка агрегации исторических данных

Иногда хранение всего объема сырых событий и обновлений значений провоцирует возникновение слишком большого объема данных для постоянного хранения. В этом случае, можно использовать предварительную агрегацию исторических данных.

В SberMobile Server доступно два метода предварительной агрегации:

  • Кольцевая БД
  • Гранулы

Агрегация в кольцевой БД

В SberMobile Server встроена кольцевая БД, которая помогает хранить агрегированную статистику временных серий.

Агрегация в гранулах

Гранулы - это особые события, которые содержат различные агрегированные значения для различных периодов во временных сериях. Каждый раз когда сервер получает новое событие/значение, он находит подходящую гранулу и объединяет только что полученное значение с агрегированным значением, вычисляя и непрерывно храня новое агрегированное значение.

Сравнение методов агрегации исторических данных

Метрика

Статистика в кольцевой БД

Агрегированные значения в гранулах

Размер агрегированных данных

Постоянный, ниже

Изменяющийся, выше

Скорость обновления агрегированных данных

Выше

Ниже

Скорость извлечения агрегированных данных

Выше

Ниже

Тип и формат агрегированных значений

Только числовая

Любые

Функции агрегации

Пользовательская

Фиксированные (средние, минимальные, максимальные, итоговое, первое, последнее)

Периоды времени

Периоды фиксированной длительности

Периоды, соответствующие реальным календарным периодам (такие как дни и месяцы), time zones respected

Поддержка агрегации в оперативной памяти

Да

Нет

Встроенная поддержка исходных значений с динамической компенсацией

Да

Нет