У нас есть база данных MySQL, в которой мы добавили значения временных рядов.Данные временных рядов в MySQL: выборка
-------------------------------------
|Col A | Col B | Timestamp |
-------------------------------------
|1.23 | 4.48 |2013-09-03 10:45:27 |
-------------------------------------
|1.23 | 4.48 |2013-09-03 10:46:27 |
-------------------------------------
|1.23 | 4.48 |2013-09-03 10:47:27 |
-------------------------------------
Данные неравномерно разнесены w.r.t время, некоторые моменты, отделены друг от друга через минуту & некоторое на несколько секунд.
Есть ли эффективный способ я могу запросить эту базу данных, чтобы вытащить данные за каждые n
-я минута/секунда/час? В идеале мне хотелось бы (линейное) интерполированное значение на n
-й минуте, но ближайшая точка к n
-й минуте или последняя точка непосредственно перед или в n
-м пунктах тоже сделают это.
Вариант использования Я хочу построить это в графике, но не хочу слишком много точек, чем необходимо. Поэтому для построения графика в течение года я предпочел бы запрашивать только пару очков в день. В то время, когда вы планируете в течение дня, я хотел бы наметить точку каждую минуту или около того.
Я могу сделать все это в PHP, но есть ли способ сделать это непосредственно в базе данных? Если нет, я рассматриваю использование базы данных временных рядов, но бюджетные ограничения ограничивают меня только свободными. Есть ли бесплатная база данных временных рядов, которая выдает выборку и предпочтительно интерполяцию?
возможно дубликат [ Sampling SQL timeseries] (http://stackoverflow.com/questions/7335627/sampling-sql-timeseries) – Domi