För att svara på rubrikfrågan. Ja det är överflödigt, men om du ska göra det beror på din situation.
Såvida du inte har kända prestandaproblem, beräkna antalet och summorna direkt i din applikation och lagra dem inte. Det vill säga, lagra inte beräknade värden om du inte har något annat val.
I de flesta situationer behöver du inte ta till detta och borde inte göra det.
Om du måste lagra beräknade värden gör du följande:
- Håll den inte uppdaterad genom att öka den. Beräkna om antalet/totalt från all data varje gång du uppdaterar den.
- Om du inte har många uppdateringar, lägg koden i en uppdateringsutlösare för att hålla räkningen/summorna uppdaterade.
- Problemet med redundans i databaser är att när siffrorna inte överensstämmer är du osäker på vilken som är auktoritativ. Lägg till i dokumentationen en anteckning om att källdata är den auktoritativa källan om de inte håller med och kan skrivas över.