Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Ist das Speichern von Zählungen von Datenbankdatensätzen redundant?

Um die Titelfrage zu beantworten. Ja, es ist überflüssig, aber ob Sie es tun sollten, hängt von Ihrer Situation ab.

Wenn Sie keine bekannten Leistungsprobleme haben, berechnen Sie die Zählungen und Summen spontan in Ihrer Anwendung und speichern Sie sie nicht. Speichern Sie berechnete Werte also nur, wenn Sie keine andere Wahl haben.

In den meisten Situationen müssen und sollten Sie nicht darauf zurückgreifen.

Wenn Sie berechnete Werte speichern müssen, gehen Sie wie folgt vor:

  • Halten Sie es nicht auf dem neuesten Stand, indem Sie es erhöhen. Berechnen Sie die Anzahl/Gesamtsumme aus allen Daten jedes Mal neu, wenn Sie sie aktualisieren.
  • Wenn Sie nicht viele Updates haben, fügen Sie den Code in einen Update-Trigger ein, um die Anzahl/Gesamtsummen auf dem neuesten Stand zu halten.
  • Das Problem mit der Redundanz in Datenbanken besteht darin, dass Sie sich nicht sicher sind, welche Zahl maßgeblich ist, wenn die Zahlen nicht übereinstimmen. Fügen Sie der Dokumentation einen Hinweis hinzu, dass die Quelldaten die maßgebliche Quelle sind, wenn sie nicht übereinstimmen und überschrieben werden können.