Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Databázové systémy II Přednáška č. X Ing. Tomáš Váňa, Ing. Jiří Zechmeister Fakulta elektrotechniky a informatiky

Podobné prezentace


Prezentace na téma: "Databázové systémy II Přednáška č. X Ing. Tomáš Váňa, Ing. Jiří Zechmeister Fakulta elektrotechniky a informatiky"— Transkript prezentace:

1 Databázové systémy II Přednáška č. X Ing. Tomáš Váňa, Ing. Jiří Zechmeister Fakulta elektrotechniky a informatiky tomas.vana@upce.cz, jiri.zechmeister@upce.cz

2 Obsah Exekuční plán – Přístupové metody – Spojovací metody Statistiky Optimalizace IDAS2 - Přednáška X

3 Exekuční plán Každé provedení SQL dotazu v databázi je provedeno dle tzv. exekučního plánu. Exekuční plán říká, jakým způsobem byla data získána (nebo zapsána). – Plán určuje pořadí jednotlivých operací. – Plán specifikuje všechny databázové objekty (tabulky, pohledy, indexy, …), které se provádění dotazu účastní. – Plán specifikuje přístupové metody k jednotlivým objektům a určuje nákladnost jednotlivých operací. – Plán specifikuje metodu spojení dvou tabulek. – V planu se objeví i operace typu: filtrování, řazení a agregace. IDAS2 - Přednáška X

4 Exekuční plán Při pohledu na exekuční plán lze velmi snadno určit slabá místa dotazu. – Exekuční plán je neocenitelný zdroj informací pro ladění výkonu jednotlivých dotazů. – Umožňuje pochopit, proč optimalizátor vybral danou přístupovou metodu. IDAS2 - Přednáška X

5 Exekuční plán - zobrazení Příkaz EXPLAIN PLAN – Využitelný i s databázové konzole (SQL*Plus). – Nezobrazuje exekuční plán přímo, ale uloží jej do dočasné tabulky PLAN_TABLE. – Pro zobrazení planu použijeme následující příkaz SELECT využívající tabulkovou funkci DBMS_XPLAN.DISPLAY. IDAS2 - Přednáška X

6 Exekuční plán - zobrazení EXPLAIN PLAN IDAS2 - Přednáška X

7 Exekuční plán - čtení plánu Nejprve je nutné naučit se číst plán dle pořadí operací, jak proběhly. – Samotný plán je seřazen dle ID dané operace. Což ale ve většině případů neodráží skutečné pořadí jednotlivých operací. Plán tedy nelze číst od shora dolů. – Vodítkem pro identifikaci pořadí se pak stává odsazení jednotlivých operací. Ty operace, jenž jsou nejvíce odsazeny od kraje jsou operace, které budou provedeny nejdříve. – Pokud se na stejné úrovni odsazení nachází více operací, operace jsou provedeny od shora dolů. – Ve výše uvedeném příkladu se nejprve provedly operace 3 a 4. IDAS2 - Přednáška X

8 Exekuční plán - čtení plánu V podstatě lze na exekuční plán pohlížet jako na stromovou strukturu. Strom ukazuje, jak jednotlivé operace slouží jako zdroj dat pro další operace. Každý krok je reprezentován jako uzel a výstup každého uzlu je předán rodičovskému uzlu ke zpracování. IDAS2 - Přednáška X

9 Exekuční plán - čtení plánu Zobrazení predikátů – Některé ze zobrazených operací mají před ID operace hvězdičku (*). V sekci Predicate Information je pak konkrétní informace o predikátu uvedena pod ID dané operace. – Tyto operace jsou spojeny s predikáty ACCESS_PREDICATES - pro spojení. FILTER_PREDICATES - klauzule WHERE – Díky zobrazení predikátů můžeme ověřit, ve které fázi dochází k filtraci a zdali tedy do dalšího kroku vstupuje nejmenší možné množství dat. IDAS2 - Přednáška X

10 Exekuční plán - EXPLAIN PLAN Pozor: EXPLAIN PLAN vrací předpokládaný exekuční plán, který bude v případě daného SQL příkazu využit. – Sám dotaz ve skutečnosti není proveden. – Je to předpověď, jak se za daných podmínek dotaz provede. Pro zobrazení exekučního plánu, který byl skutečně použit při provádění dotazu slouží příkaz AUTOTRACE. – AUTOTRACE zároveň poskytuje detailní statistické informace z běhu příkazu SQL. IDAS2 - Přednáška X

11 Exekuční plán - AUTOTRACE IDAS2 - Přednáška X


Stáhnout ppt "Databázové systémy II Přednáška č. X Ing. Tomáš Váňa, Ing. Jiří Zechmeister Fakulta elektrotechniky a informatiky"

Podobné prezentace


Reklamy Google