Autor Zpráva
Akacko
Profil
Zdravím,
s kamarádem uvažujeme co je rychlejší a méně zatěžuje databázi.

1) Při přidávání komentářů vytvořit k uživateli sloupeček a ukládat tam počet přidaných komentářů
2) Počet přidaných komentářů pokaždé zjišťovat dotazem (SELECT COUNT(*)...)

Dejme tomu že mluvíme o databázi kde je více jak 1000 uživatelů, každý může mít napsáných 200 komentářů. (jen příklad).

U obou vidíme výhody i nevýhody. Co je tedy lepší?

Díky za příspěvky a rady.
ninja
Profil
Obecne neni ai jendo lepsi. Zalezi jak casto se to cislo meni a jak casto je potreba nacist/aktualizovat.
Akacko
Profil
ninja
Dejme tomu že denně se to číslo změní 5x a načítat se stránka bude hodně často. Po každém kliku. (I když bude možná lepší data cachovat)
DoubleThink
Profil *
Sečtení záznamů pomocí COUNT(*) má minimální zátěž na server (zvláštěpak pokud jsou sloupce s podmínkami zaindexovány).
Z logiky návrhu databáze (omezení duplicity dat) bych volil rozhodně variantu 2.
Akacko
Profil
DoubleThink
Díky za reakci a vysvětlení.
ninja
Profil
Za těchto podmínek asi opravdu varianta 2. A rozhodně cacheovat, například 5 minut. Počet příspěvků není kritický údaj.
ninja
Profil
Za těchto podmínek asi opravdu varianta 2. A rozhodně cacheovat, například 5 minut. Počet příspěvků není kritický údaj.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: