The goal is to update the UI as frequently as possible but performance is a concern and hits to the database should be minimised.
I used Indexed Views to keep up to date stats on items that were not for a specific time interval however this in not applicable as the date is non-deterministic.
Other options would be to:
Run a job every X minutes to gather the stats.
Add triggers to respond to insertions.
Run a stored procedure every time / at a defined frequency. (Most of the tables concerned are already indexed on the date concerned)
Are there any other options I haven't identified and is there a 'preferred' solution to this kind of problem? How do the Job/Trigger/SP options compare?