1
Vývoj / MySQL rychlost filtrování
« kdy: 21. 02. 2020, 14:39:53 »
Mám tabulku produktů, která obsahuje něco kolem 10 000 záznamů. Tabulka obsahuje údaje, které jsou vyžadovány pro každý produkt. Dalších cca 6 tabulek obsahuje informace o ceně, skladových zásobách, použitých materiálech, výrobcích aj.
Mám několik případů, kdy zákazník potřebuje filtrovat z informací obsažených ve všech 7 tabulkách. JOIN všech tabulek obsahuje 900 000 záznamů.
25 paralelně filtrujících klientů obdrží výsledky do 5 sec.. Indexy jsou nastavené podle nejhledanějších parametrů.
Pokud si zdrojovou filtrovací tabulku předpřipravím a vyhnu se "joinu", 25 klientů obdrží výsledky do 0,3 vteřin. Toto řešení vyžaduje zdrojovou filtrovací tabulku po určité době obnovovat s čímž můžu žít.
Je tohle řešení nevhodné?
Na co bych se měl případně zaměřit?
Pfff... Píšu to znovu, protože než jsem stihl příspěvek vytvořit tak jsem byl odhlášen
Mám několik případů, kdy zákazník potřebuje filtrovat z informací obsažených ve všech 7 tabulkách. JOIN všech tabulek obsahuje 900 000 záznamů.
25 paralelně filtrujících klientů obdrží výsledky do 5 sec.. Indexy jsou nastavené podle nejhledanějších parametrů.
Pokud si zdrojovou filtrovací tabulku předpřipravím a vyhnu se "joinu", 25 klientů obdrží výsledky do 0,3 vteřin. Toto řešení vyžaduje zdrojovou filtrovací tabulku po určité době obnovovat s čímž můžu žít.
Je tohle řešení nevhodné?
Na co bych se měl případně zaměřit?
Kód: [Vybrat]
id select_type table type possible_keys key
1 SIMPLE A index PRIMARY
1 SIMPLE B eq_ref PRIMARY PRIMARY
1 SIMPLE C eq_ref PRIMARY PRIMARY
1 SIMPLE D eq_ref PRIMARY PRIMARY
1 SIMPLE E eq_ref PRIMARY PRIMARY
1 SIMPLE F ref PRIMARY PRIMARY
1 SIMPLE G ref PRIMARY PRIMARY
Pfff... Píšu to znovu, protože než jsem stihl příspěvek vytvořit tak jsem byl odhlášen