Existe-t-il des directives ou des règles empiriques permettant de déterminer quand stocker les valeurs agrégées et quand les calculer à la volée?
Par exemple, supposons que j'ai des widgets que les utilisateurs peuvent évaluer (voir le schéma ci-dessous). Chaque fois que j'affiche un widget, je peux calculer la note moyenne des utilisateurs à partir du Ratings
tableau. Sinon, je pourrais stocker la note moyenne sur la Widget
table. Cela m'éviterait de devoir calculer la note chaque fois que j'afficherai le widget, mais je devrais alors recalculer la note moyenne chaque fois qu'un utilisateur évaluait un widget.
Ratings Widgets
--------- -------
widget_id widget_id
user_id name
rating avg_rating <--- The column in question