Apache Друид: нумерация страниц и SQL Ранг () эквивалент - PullRequest
0 голосов
/ 14 апреля 2020

Начиная с Druid 0.17, нет поддержки разбиения на страницы запросов (раньше она была доступна через select запросов).

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

Это можно легко сделать в SQL с помощью функции RANK. Мне было интересно, есть ли что-нибудь подобное в друид.

В любом случае, существует ли какой-либо шаблон для получения разбитых на страницы запросов?

1 Ответ

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

Apache Друид 0.17.0-1 и 0.18.0 не имеют эквивалента для функции SQL RANK ().

Моя идея состояла в том, чтобы упорядочить запрос, пронумеровать строки и получить только первую.

В моем случае запрос группируется, и упорядочение должно выполняться в __time Друида. поле, так что есть решение. Действительно, в зависимости от потребностей, вы можете использовать функции агрегирования LATEST (expr) / EARLIEST (expr). Они работают как с целыми числами, так и со строками (с немного другой сигнатурой).

Ссылка: http://druid.apache.org/docs/latest/querying/sql.html#aggregation -функции

Для нумерации страниц она в настоящее время недоступна

...