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

Mysql zählt Zeilen mithilfe von Filtern in stark frequentierten Datenbanken

Ich hätte wahrscheinlich eine vorberechnete Tabelle - wie Sie selbst vorschlagen. Wichtig ist, dass Sie einen intelligenten Mechanismus für 2 Dinge haben:

  1. Fragen Sie einfach ab, welche Einträge von welcher Änderung betroffen sind.
  2. Verwenden Sie ein eindeutiges Nachschlagefeld für eine gesamte Formularanforderung.

Die 8 Millionen Einträge wären nicht sehr aussagekräftig, wenn Sie solide Schlüssel hätten, da Sie nur eine direkte Suche benötigen würden.

Ich würde mir die Mühe machen, an allen Stellen, an denen es notwendig ist, spezifische Updates für diese Tabelle zu schreiben. Auch bei der hohen Anzahl an Änderungen ist dies noch effizient. Wenn Sie es richtig gemacht haben, wissen Sie, welche Zeilen Sie aktualisieren oder ungültig machen müssen, wenn Sie das Produkt einfügen/aktualisieren/löschen.

Nebenbemerkung :Basierend auf Ihrem Kommentar. Wenn Sie Code an acht Stellen hinzufügen müssen, um alle Stellen abzudecken, die gelöscht werden können - es könnte ein guter Zeitpunkt sein, Code umzugestalten und zu zentralisieren.