Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Czy przechowywanie liczników rekordów bazy danych jest zbędne?

Aby odpowiedzieć na tytułowe pytanie. Tak, jest to zbędne, ale to, czy powinieneś to zrobić, zależy od Twojej sytuacji.

O ile nie znasz problemów z wydajnością, oblicz liczby i sumy na bieżąco w swojej aplikacji i nie przechowuj ich. Oznacza to, że nie przechowuj obliczonych wartości, chyba że nie masz innego wyjścia.

W większości sytuacji nie będziesz musiał do tego uciekać i nie powinieneś.

Jeśli musisz przechowywać obliczone wartości, wykonaj następujące czynności:

  • Nie aktualizuj go, zwiększając go. Przelicz liczbę/suma ze wszystkich danych za każdym razem, gdy je aktualizujesz.
  • Jeśli nie masz wielu aktualizacji, umieść kod w wyzwalaczu aktualizacji, aby liczba/podsumowania były aktualne.
  • Problem z nadmiarowością w bazach danych polega na tym, że gdy liczby się nie zgadzają, nie masz pewności, która z nich jest autorytatywna. Dodaj do dokumentacji notatkę, że dane źródłowe są autorytatywnym źródłem, jeśli się nie zgadzają i mogą zostać nadpisane.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Laravel:PDOException:nie można znaleźć sterownika

  2. Wyzwalacze MySQL nie mogą aktualizować wierszy w tej samej tabeli, do której przypisany jest wyzwalacz. Sugerowane obejście?

  3. Błąd PDO — wyjątek PDO” z komunikatem „SQLSTATE[HY000]:błąd ogólny”

  4. Wstawianie zmiennych MySQL za pomocą Pythona, nie działa

  5. Jak przekonwertować znacznik czasu na datę i godzinę w MySQL?