Друид - Потоковая загрузка данных - Непрерывные агрегации
Я смотрю на использование Друида для агрегации. Мой вариант использования заключается в том, что я хочу передавать данные в Druid (для того же дня, когда для plotGranularity задано значение DAY), а во время приема я хочу собирать данные.
Мой вопрос заключается в том, что когда мы отправляем первый поток данных, данные свертываются, а агрегаты рассчитываются и записываются в друид. Теперь, когда я посылаю другой поток данных в Друид (который относится к уже свернутым данным), как это делает друид?
Обновляет ли друид агрегированные данные или просто добавляет эти данные к существующим агрегированным данным?
2 ответа
Друид работает с двумя типами приема - Потоковое поглощение и Загрузка через пакетный файл. Для приема потокового видео это делается через сервер Tranquality или Firehose, подключенный к kafka (push vs pull). -
Для потоковой передачи данных агрегирование накоплений добавляется к предыдущим данным.
Для пакетного приема - Друид повторно принимает все данные за заданный период или сегмент.
Для вашего варианта использования (ежедневно): если у вас нет проблемы с дублирующимися данными (то есть поток данных может снова появиться), вы можете использовать потоковую загрузку, в противном случае предпочтительным является пакетная загрузка через заданный интервал времени, например. ежечасно.
Спасибо за комментарий. Я могу заставить друида работать с потоковым проглатыванием, а также с агрегацией.
Я обнаружил, что при повторной передаче данных агрегирование данных обновляется.
Спасибо