Zalecam stworzenie najbardziej elastycznego projektu, który umożliwiłby tworzenie nowych raportów w miarę rozszerzania się wymagań w przyszłości. Sugerujesz, że klient chce mieć raporty na temat „wyświetleń dziennie”. A jeśli przyjdą później i powiedzą „o której porze dnia wrażenia są najczęściej pokazywane”? Co powiesz na „kiedy są najczęściej klikane”?
Najbardziej elastycznym sposobem na to jest posiadanie 1 rekordu dla każdego wyświetlenia, gdzie każdy rekord to justbanner_idtimestamp
Później możesz utworzyć procedurę składowaną, która agreguje dane historyczne, a tym samym usuwa OGROMNE ilości danych, które zgromadziłeś - tworząc w ten sposób raporty na poziomie szczegółowości, na którym Ci zależy. Wyobrażam sobie przechowywanie danych godzinowych przez miesiąc, a danych dziennych przez rok. Przechowywane procs po prostu zapisuje do tabeli archiwum:
- Identyfikator banera
- Identyfikator przedziału czasu (miesiąca/roku dla danych miesięcznych lub dnia/miesiąca/roku dla danych dziennych itp.)
- Liczba wyświetleń