Datenbanken · Senior · Frage 13 von 75
Viele Anfragen aktualisieren dieselbe Zählerzeile (UPDATE stats SET views = views + 1 WHERE id = 1). Was ist das Problem und eine Lösung?
- 1PostgreSQL verliert einige der Erhöhungen
- 2Alle Updates reihen sich an einer Zeilensperre an, eine heiße Zeile
- 3Das Update läuft bei jedem zweiten Aufruf in einen Deadlock
Antwort zeigen
Richtige Antwort: Alle Updates reihen sich an einer Zeilensperre an, eine heiße Zeile
Erklärung
Jedes Update wartet auf den Commit des vorherigen. Geshardete Zähler (N Zeilen, beim Lesen summiert) oder Zählen in Redis mit periodischem Zurückschreiben beseitigen die Konkurrenz.