Esistono linee guida o regole empiriche per determinare quando memorizzare valori aggregati e quando calcolarli al volo?
Ad esempio, supponiamo che io abbia dei widget che gli utenti possono valutare (vedi schema sotto). Ogni volta che visualizzo un widget potrei calcolare la valutazione media degli utenti dalla Ratings
tabella. In alternativa, potrei memorizzare la valutazione media sul Widget
tavolo. Questo mi eviterebbe di dover calcolare la valutazione ogni volta che visualizzo il widget, ma poi dovrei ricalcolare la valutazione media ogni volta che un utente ha valutato un widget.
Ratings Widgets
--------- -------
widget_id widget_id
user_id name
rating avg_rating <--- The column in question