Статистика и БД...
Dec. 8th, 2017 12:28 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Небольшая задачка: получать top10 клиентов и top10 доменов, жрущих место на почте. Графит как источних сих данных для графаны в целом справляется, но есть некоторые но:
- статистика складывается в influxdb, который не умеет сортировать по чему-либо кроме времени. Для получения топов приходится раз в 5 минут запускать по селекту на каждый вид статистики и пихать получившиеся значения в графит.
- графит хранит данные э... не совсем эффективно. То есть, если количество метрик увеличится ещё раза в три, то он перестанет справляться даже с записью.
Попробовал https://github.com/InfluxGraph/influxgraph в качестве источника данных. В теории всё нормально. На практике при количестве клиентов в статистике порядка полутора-двух тысяч (отдельно взятый сервер) создаётся запрос к influxdb объёмом килобайт в 30-40, чем сей influxgraph успешно давится, не доводя запрос до influxdb и выдавая 500-ю ошибку графане.
Пока смотрим в сторону яндексового кликхауса, но там есть нюансы типа того, что это не time series database и вообще нечто новое...
- статистика складывается в influxdb, который не умеет сортировать по чему-либо кроме времени. Для получения топов приходится раз в 5 минут запускать по селекту на каждый вид статистики и пихать получившиеся значения в графит.
- графит хранит данные э... не совсем эффективно. То есть, если количество метрик увеличится ещё раза в три, то он перестанет справляться даже с записью.
Попробовал https://github.com/InfluxGraph/influxgraph в качестве источника данных. В теории всё нормально. На практике при количестве клиентов в статистике порядка полутора-двух тысяч (отдельно взятый сервер) создаётся запрос к influxdb объёмом килобайт в 30-40, чем сей influxgraph успешно давится, не доводя запрос до influxdb и выдавая 500-ю ошибку графане.
Пока смотрим в сторону яндексового кликхауса, но там есть нюансы типа того, что это не time series database и вообще нечто новое...