Kurz: MS SQL Server 2016 / 2014 - optimalizácia prevádzky

Popis kurzu

Kurz je zameraný na kľúčové faktory návrhu databáz, ktoré významne ovplyvňujú celkový výkon systému. Účastníci sa naučia optimalizovať uloženie dát, správne nastaviť indexy k tabuľkám, efektívne zostavovať príkazy na prácu s dátami v jazyku SQL, priebežne sledovať výkon systému a správne používať nástroje na meranie a ladenie časovej réžie systému.

Poznatky získane na tomto kurze možno vo veľkej miere aplikovať aj na iných databázových platformách – vrátane systému Oracle.



Obsah kurzu

1. DEŇ

  • Úvod do problematiky
    • identifikácia dotazov, ktoré najviac zaťažujú server, pravidlo 80/20
    • faktory ktoré je možné ovplyvniť pri návrhu databázy
    • faktory ktoré je možné ovplyvniť pri návrhu databázovej aplikácie
    • ako pomôcť databázovému serveru optimálne pochopiť SQL dotaz (aliasy pri dotazoch do viacerých tabuliek…)
    • identifikácia problémov pri vykonávaní SQL dotazov (CPU, pamäť, storage, I/O)
  • Optimalizácia návrhu databázy
    • pravidlá pre návrh databáz, podmienky relačnosti
    • normálne formy
    • typy databáz kedy sú výhodnejšie nenormalizované štruktúry
    • výkon verzus zabezpečenie integrity dát
  • Indexy
    • princíp indexov
    • výhody a nevýhody indexov
    • B*-Tree Indexy
    • ďalšie typy indexov, (funkčné, bitmapové), kedy je ktoré výhodné používať
    • indexy nad stĺpcami s nízkou variabilitou
    • identifikácia nepoužitých indexov
    • klastrové index
  • Použitie kurzorov
    • kedy je výhodné použiť pre výber údajov kurzory
    • zdieľané kurzory
  • Zber štatistík
    • štatistiky (Ako zistiť aké tabuľky sú nad objektmi, ako zhodnotiť, že sú už asi neaktuálne.)
    • štatistiky nad INDEXMI
    • štatistiky nad STLPCAMI. Základná práca s DBMS_STATS. Pojednávanie čo s particiovými objektami.
    • HINTY – najdôležitejšie hinty, dlhšie venovanie, spomenuté najčastejšie hinty, demo príklady

2. DEŇ

  • Optimalizácia utriedenia a spájania
    • optimalizácia utriedenia
    • top N
    • optimalizácia spájania údajov z viacerých tabuliek
    • NESTED LOOPS, SORT MERGE JOIN, HASH JOIN
  • Optimalizácia SQL príkazov
    • Rule Based Optimizer vs. Cost Based Optimizer
    • módy optimizéru CBO, rozdiel módov ALL_ROWS, FIRST_ROWS
    • prístupy k tabuľkovému bloku – ROWID, FULL
    • indexové – UNIQUE SCAN, RANGE SCAN, DESCENDING, INDEX FULL SCAN, FAST FULL SCAN, SKIP SCAN
    • hard parsing vs. soft parsing
    • analýza EXECUTION PLAN, PLAN TABLE
  • Optimalizácia objektov procedurálnej nadstavby (PL/SQL – Oracle, T-SQL –SQL Server2 )
    • optimalizácia základných programových konštrukcií
    • uložené procedúry, funkcie , spúšte
    • procedurálna nadstavba SQL verzus kód v programovacom ja­zyku
    • uložené procedúry, funkcie , spúšte v programovacom jazyku aplikácie
  • Pokročilejšie témy
    • Dynamic Performance Views
    • vykonávacie plány
    • SQL Trace and TKPROF
    • Optimizer Plan Stability
    • Stored Outlines
    • operačná verzus multidimenziálna štruktúra databázy vhodnosť pre konkrétne scenáre
    • materializované pohľady
    • dočasné tabuľky
    • alternatívne úložiska údajov (indexovo organizované tabuľky, úložiská pre XML) výhody a nevýhody z pohľadu výkonu pre konkrétne scenáre

Ďalšie informácie



Cieľová skupina

Kurz je určený pre pokročilých vývojárov databázovách aplikácií, ktorí sa chcú oboznámiť s možnosťami optimalizácie výkonu systému pri práci s rozsiahlymi dátami.



Certifikát

Potvrdenie o absolvovaní kurzu.



Kontaktná osoba

Ing. Dagmar Mylbachrová
+421 2/581 014 10
kurzy@ipex.sk


Organizátor