Graphite: использование holtWintersConfidenceBands на большом периоде (для точности), но получение точек данных за последние x минут

Есть ли способ выполнить holtWintersConfidenceBands на большом периоде, но получить только последние x минут данных? Например: я хочу выполнить функцию holtWintersConfidenceBands за последние 30 дней, но получить результат только за последние 30 минут.

Конечно, я могу выполнять фильтрацию на своем клиенте, но есть ли способ добиться этого через сам сервер Graphite?


person Tomer Peled    schedule 08.04.2013    source источник


Ответы (1)


Это зависит от частоты точек данных, которые вы сохраняете за 30-дневный интервал. Если вы храните точки данных за 1 час, вам придется проделать дополнительную работу, чтобы получить нужные данные.

Вы можете просто использовать Graphite API, вывести данные в формате JSON и проанализировать массив точек данных для получения нужных данных. По сути, при любом вызове Graphite API, который вы делаете на свой сервер Graphite, просто добавьте format=json в качестве параметра.

person Adam    schedule 29.05.2013
comment
Да, но моей целью было отфильтровать результаты на стороне Graphite, а не на моем клиенте. Опять же, я имею в виду только специальную функцию HoltWinters, которой нужна история для расчета... - person Tomer Peled; 30.05.2013
comment
Проблема в том, что вы ищете как минимум 30-минутную точность, тогда как большинство систем Graphite не настроены на сохранение этой точности в течение 30-дневного периода. Именно поэтому я предложил делать парсинг вне Graphite. Однако, если у вас есть точность, вы можете просто использовать maxDataPoints, чтобы ограничить результаты, которые вы хотите увидеть. - person Adam; 30.05.2013
comment
Я не знаком с maxDataPoints и не могу найти его в документации... - person Tomer Peled; 30.05.2013
comment
Это должно дать вам хорошее начало - graphite.readthedocs.org/en/latest/ - person Adam; 30.05.2013