Tôi khuyên bạn nên tạo thiết kế linh hoạt nhất cho phép bạn tạo báo cáo mới khi các yêu cầu mở rộng trong tương lai. Bạn đề xuất rằng khách hàng muốn báo cáo về "số lần hiển thị mỗi ngày". Điều gì sẽ xảy ra nếu họ đến muộn hơn và nói "số lần hiển thị được hiển thị nhiều nhất vào thời điểm nào trong ngày"? Còn về "khi nào họ được nhấp vào nhiều nhất"?
Vì vậy, cách linh hoạt nhất để làm điều này là có 1 bản ghi cho mỗi lần hiển thị, trong đó mỗi bản ghi là justbanner_idtimestamp
Sau đó, bạn có thể tạo một quy trình được lưu trữ để tổng hợp dữ liệu lịch sử và do đó xóa lượng dữ liệu LỚN mà bạn đã tích lũy - do đó, tạo báo cáo về mức độ chi tiết mà bạn quan tâm. Tôi có thể tưởng tượng việc lưu trữ dữ liệu hàng giờ trong một tháng và dữ liệu hàng ngày trong một năm. Các procs được lưu trữ sẽ chỉ ghi vào một bảng lưu trữ:
- ID biểu ngữ
- Định danh khoảng thời gian (của tháng / năm đối với dữ liệu hàng tháng hoặc ngày / tháng / năm đối với dữ liệu hàng ngày, v.v.)
- Số lần hiển thị