Графики с усреднением

Started by killwort, September 23, 2013, 02:41:37 PM

Previous topic - Next topic

killwort

Было бы замечательно иметь возможность строить графики с возможностью усреднения (или выборки максимального, минимального) значений на выбранных интервалах. Например, есть DCI для сбора количества запросов/сек на веб сервер, с периодом обновления 5 секунд и data retention 30 суток. Построение графика за интервал больше одних суток очень медленное, а при запросе более 5 суток вообще завершается по таймауту, причём на таких графиках разрешение в 5 сек очевидно не нужно. Хотелось бы иметь возможность построить график за, например, неделю, с выборкой максимальных значений в каждом часу.

Я попробовал выполнять подобный запросы на БД netxms напрямую, они выполняются достаточно быстро даже на больших объёмах данных. Вот к примеру почасовая группировка:
select count(*) from idata_334;
1571331
1 row in set (7.79 sec)
select count(*) from idata_334 where item_id=171;
203246
1 row in set (1.49 sec)
select avg(idata_value),idata_timestamp/3600 from idata_334 where item_id=171 and idata_timestamp>1379568194-3600*24*5 group by idata_timestamp/3600 into outfile '/var/tmp/datax';
Query OK, 74934 rows affected (7.27 sec)

При построении аналогичного графика за неделю nxmsc после 20 секунд говорит timeout. Да и график за 2 дня настолько пилообразный, что увидеть из него что-либо трудно.