Через stored procedure
в SQL Server 2008
, я пытаюсь показать количество транзакций за последние 7 дней, а затем сравнить их с 7-дневным периодом год назад. Кроме того, я хотел бы иметь возможность показать месяц с даты и месяц до даты год назад. Или в этом месяце и в прошлом месяце. И т. Д. По существу, time-series
данные.Лучший подход к данным временного ряда в SQL Server 2008
У меня есть таблица со всеми отдельными транзакциями. Два варианта я могу думать о том, являются:
Рассчитать каждый отдельный день или месяц и вернуть результирующий набор во время выполнения.
Рассчитайте каждый неповторимый день и положите результат в таблицу. Обновляйте это ежедневно. Создайте еще один стол в течение нескольких недель. Другой стол в течение нескольких месяцев. Каждый день добавьте запись или обновите существующую запись . Это, безусловно, сделает запрос быстрее, так как данные уже рассчитаны. Однако, если бы я должен был сделать обновления предыдущих дней (с учетом возвратов/аннулирует)
Примечание: Это внутреннее приложение, поэтому он не будет видеть тысячи запросов в минуту.
Каков наилучший способ вернуть этот тип данных?
Другая альтернатива, о которой я думал, использует HBase OpenTSDB
через вариант 2, но похоже, что это тот же процесс.
Сколько данных мы говорим? –
Общий размер стола в 10 миллионов. В день - 10 тысяч. – mikebmassey