sql >> Databáze >  >> RDS >> Mysql

Optimalizace jednoduchého dotazu na dvou velkých tabulkách

Pokud vím, nejlepším způsobem, jak udělat dotaz, jako je tento „blesk rychlý“, je vytvořit souhrnnou tabulku, která sleduje zobrazení stránek přátel na stránku na tvůrce.

Pravděpodobně byste jej chtěli udržovat aktuální pomocí spouštěčů. Pak je vaše agregace již hotová za vás a je to jednoduchý dotaz na získání nejprohlíženějších stránek. Můžete se ujistit, že máte v souhrnné tabulce správné indexy, takže databáze ani nemusí řadit, aby byla co nejzobrazenější.

Souhrnné tabulky jsou klíčem k udržení dobrého výkonu pro dotazy agregačního typu v prostředích převážně pro čtení. Vy děláte práci předem, když dojde k aktualizacím (zřídka) a pak dotazy (časté) nemusí dělat žádnou práci.

Pokud vaše statistiky nemusí být dokonalé a vaše zápisy jsou ve skutečnosti poměrně časté (což je pravděpodobně případ něčeho, jako je zobrazení stránek), můžete dávkovat zobrazení v paměti a zpracovávat je na pozadí, aby přátelé Při prohlížení stránek není nutné udržovat souhrnnou tabulku aktuální. Toto řešení také snižuje spory o databázi (méně procesů aktualizuje souhrnnou tabulku).



  1. Dynamická HTML tabulka v PHP Mail

  2. Spojení dat z 5 tabulek bez duplicitních hodnot a získání výsledku s vlastním stavem v Oracle 10g

  3. Co znamená řazení?

  4. Nalezení N-tého minima hodnoty Varchar v Oracle