Панель Grafana с количеством лиц + история - PullRequest
0 голосов
/ 23 октября 2018

Я хотел бы создать панель Grafana с нашей базой данных пользователей (PostgreSQL).Эта сцена из Силиконовой долины HBO уже прекрасно описывает ее.

enter image description here

Но я не могу понять, как заставить работать «исторический счет».

Моя грубая идея такова:

SELECT
    created as time,
    count(*)
FROM
    user
WHERE 
    created BETWEEN "FIXED START DATE" AND created
ORDER BY 
    created
ASC

Но я сталкиваюсь с проблемами, из-за которых мне нужно добавить предложение GROUP BY из-за функции агрегирования.Который кажется законным.Но как я могу выполнить агрегацию с «историей» существующих сущностей ко времени положения графа?

Буду благодарен за советы каждого помощника!

1 Ответ

0 голосов
/ 29 октября 2018

Я нашел хорошее решение, которое очень хорошо работает с Grafana.

Правильный термин для поиска был (общее количество), и он использует оконную функцию .(см. здесь: Подсчет кумулятивного итога в Postgresql )

SELECT $__time(created), sum(count(*)) OVER (ORDER BY created) as "Benutzeranzahl"
FROM (
    SELECT DISTINCT ON (email) created, email
    FROM user  ORDER BY email, created
) AS subq
GROUP BY created;

Результат выглядит отлично!

Grafana Count cumulative total

...