Apache Друид: считать выбросы - PullRequest
0 голосов
/ 09 апреля 2020

Я подготовил установку Apache Друид, которая берет данные из топи Кафки c. Он работает очень плавно и эффективно.

В настоящее время я пытаюсь реализовать некоторые запросы, и я застрял в количестве строк (сгруппированных по некоторым полям), для которых значение столбца является выбросом. В обычном мире SQL я по существу вычислю первый и третий квартили (q1 и q3), а затем использую что-то вроде (меня интересуют только "правильные" выбросы):

SUM(IF(column_value > q3 + 1.5*(q3-q1), 1, 0))

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

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

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

Есть ли у вас какие-либо предложения о том, как решить эту проблему?

1 Ответ

0 голосов
/ 26 апреля 2020

Начиная с версии 0.18.0, Apache Друид поддерживает соединения. Это решает проблему.

...