Быстрый способ расчета средней продолжительности для целей аналитики

Я разрабатываю страницу аналитики для продукта и хочу показать среднее время, затрачиваемое на продукт. Я хочу показать среднее время за последний час, прошлый день, прошлую неделю, прошлый год и за все время. Есть ли лучший способ получить результат, чем просматривать все записи пользователей и вычислять среднее значение на лету?

Есть много подобных проблем при реализации аналитики, поскольку, предоставляя пользователю возможность указать произвольный диапазон времени, приложение больше не может просто хранить предварительно вычисленные значения в базе данных (например, хранить среднее значение за каждый день в прошлом) и использовать их. напрямую. Я, конечно, могу просто иметь страницу «Загрузка ... подождите», пока извлекаю данные и вычисляю, просто интересно, есть ли более быстрый способ их вычислить?

Спасибо!


person Erica Xu    schedule 25.06.2013    source источник
comment
Если ваша наименьшая продолжительность составляет час, вы можете предварительно вычислить средний день, неделю, год и все время, а затем просто вычислить час, рассчитав среднее значение на лету. Для заданного пользователем произвольного диапазона даты/времени вы должны вычислить среднее значение на лету и иметь загрузочную страницу.   -  person Gilbert Le Blanc    schedule 25.06.2013
comment
@GilbertLeBlanc Очень полезно, спасибо!!   -  person Erica Xu    schedule 25.06.2013


Ответы (1)


В году всего 8760 часов, просто сохраните среднее значение за каждый час или, если хотите, более мелкозернистое каждые полчаса или каждые 10 минут (52560 записей в год).

person Louis Ricci    schedule 25.06.2013