Protože jste se zeptali, jak velké společnosti (obecně) k tomu přistupují:
Obvykle mají dba (správce databáze), který žije a dýchá databázi, kterou společnost používá.
To znamená, že mají lidi, kteří vědí vše od toho, jak optimálně navrhnout tabulky, profilovat a vyladit dotazy/indexy/OS/server, až po vědění, jaká revize firmwaru řadiče RAID může způsobit problémy databázi.
Moc nemluvíš o tom, jaký druh ladění jsi provedl, např.
- Používáte tabulky MyISAM nebo InnoDB? Jejich výkon (a v neposlední řadě jejich vlastnosti) se radikálně liší pro různé pracovní zátěže.
- Jsou tabulky správně indexovány podle spouštěných dotazů?
- spusťte EXPLAIN na všechny vaše dotazy – což vám pomůže identifikovat klíče, které lze přidat/odebrat, zda jsou vybrány správné klíče, porovnat dotazy (SQL vám ponechává mnoho možností, jak dosáhnout stejných věcí)
- Vyladili jste mezipaměť dotazů? U některých úloh může mezipaměť dotazů (výchozí nastavení zapnuto) způsobit značné zpomalení.
- Kolik paměti má váš box a je mysql vyladěno, aby toho využilo?
- Používáte souborový systém a nastavení raidu zaměřené na databázi?
- Někdy je potřeba trochu denormalizace.
- Různé databázové produkty budou mít různé charakteristiky, MySQL může být pro některé pracovníky neuvěřitelně rychlé a pro jiné pomalé.