Kurz je určený pre databázových vývojárov, ktorí sa chcú naučiť efektívne monitorovať a optimalizovať náročné a problematické databázové dotazy na Microsoft SQL Serveri alebo v Azure SQL Database. Zoznámite sa so všetkými zabudovanými spôsobmi [...]
  • GOC631
  • Dĺžka 5 dní
  • 50 ITK bodov
  • 7 termínov
  • SR (1 200 €)

    ČR (30 000 Kč)

  • Mierne pokročilý

Kurz je určený pre databázových vývojárov, ktorí sa chcú naučiť efektívne monitorovať a optimalizovať náročné a problematické databázové dotazy na Microsoft SQL Serveri alebo v Azure SQL Database. Zoznámite sa so všetkými zabudovanými spôsobmi monitorovania SQL Serveru a náročných databázových dotazov, naučíte sa identifikovať databázové dotazy vhodné pre optimalizáciu a na veľmi detailnej úrovni pochopíte, ako SQL Server ukladá vaše dáta a prečo vhodne zvolené indexy rádovo zvýšia efektivitu vašich dotazov. Zoznámite sa s ďalšími zdrojmi výkonnostných problémov vašich dotazov a naučíte sa ich riešiť.

»
  • Zoznámite sa s architektúrou SQL Serveru
  • Dozviete sa, ktoré časté chyby negatívne ovplyvňujú výkon SQL Serveru a vašich dotazov a ako sa im vyvarovať
  • Naučíte sa monitorovať SQL Server nástrojmi, ktoré sú priamo jeho súčasťou
  • Vyskúšate si identifikovať výkonnostné problémy na skutočnej aplikácii
  • Dozviete sa, ako SQL Server ukladá dáta a ako môžete zefektívniť prístup k dátam vhodným návrhom indexu
  • Zistíte, ako správne navrhovať indexy a kedy a prečo sa vaše indexy nepoužijú
  • Pochopíte, ako optimalizovať prístupy k viacerým tabuľkám s pomocou JOIN a ako optimalizovať agregačné otázky
  • Zoznámite sa s možnosťami columnstore indexov a naučíte sa ich používať v dátových skladoch i OLTP aplikáciách
  • Predstavíme si technológiu In-Memory OLTP a vysvetlíme si, kedy je výhodné ju využiť
  • Naučíte sa vyvarovať rôznym jazykovým konštrukciám v jazyku T-SQL, ktoré spôsobujú výkonnostné problémy
  • Zistíte, ako sa generujú exekučné plány a aké problémy sú s tým spojené
  • Dozviete sa, ako funguje transakčné spracovanie v SQL Serveru, aké sú vlastnosti transakcií, ako fungujú zámky a aký dopad na výkon majú izolačné úrovne

Kurz je cielený na databázových vývojárov, ktorí sa chcú naučiť efektívne monitorovať a optimalizovať náročné a problematické databázové dotazy na Microsoft SQL Server alebo v Azure SQL Database. Ďalej znalosti z kurzu využijú autori reportov, ktorí potrebujú zrýchliť načítanie dát pre svoje reporty.

1 Úvod do optimalizácie dotazov
  • Predstavenie procesu optimalizácie dotazov, stanovenie vhodných cieľov optimalizácie dotazov a upozornenie na časté chyby
  • Zoznámenie sa s architektúrou SQL Serveru
  • Predstavenie najčastejších chýb, ktoré negatívne ovplyvňujú výkon vašich databázových dotazov alebo celého SQL Serveru
2 Metódy monitorovania T-SQL dotazov a serveru
  • Zoznámenie sa s dostupnými zdrojmi informácií o stave a behu SQL Serveru
  • Sledovanie udalostí v SQL Server pomocou SQL Server Profiler, SQL Trace a hlavne Extended Events
  • Monitorovanie stavu SQL Server pomocou Dynamic Management Views and Functions (DMV, DMF)
  • Ukážka použitia Activity Monitor a reportov v SQL Server Management Studio
  • Predstavenie Performance Monitor a užitočných výkonnostných metrík, ktoré je vhodné monitorovať za behu SQL Serveru
  • Ukážka nasadenia Data Collector pre dlhodobý monitoring SQL Serveru
  • Predstavenie sledovania spúšťaných otázok pomocou technológie Query Store
  • Zoznámenie sa s technológiou Automatic Database Tunning
3 Analýza, návrh a stratégie použitia indexov
  • Vysvetlenie, ako sú uložené dáta na SQL Server, aký je formát dátovej stránky, riadku a aké typy dátových stránok existujú
  • Porovnanie dátových štruktúr halda (Heap) a clustered indexu a odporúčania pre vhodné použitie
  • Ukážka uloženia dát na halde, porovnanie výhod a nevýhod
  • Vysvetlenie štruktúry B + stromu v cluster indexe, odporúčania pre správnu voľbu clustered kľúča
  • Zoznámenie sa s non-clustered indexmi, vysvetlenie princípu fungovania a ukážka voľby vhodných kľúčov
  • Vysvetlenie, prečo sa niekedy navrhnuté non-clustered indexy nepoužijú a ako tu pomôže covering index
  • Ukážka filtrovaného indexu a indexovaných computed columns
  • Vysvetlenie výkonnostného dopadu databázových pohľadov a funkcií, použitie indexovaného pohľadu
  • Zoznámenie sa s údržbou indexov
4 Špecifická optimalizácia výkonu s použitím In-Memory OLTP a Columnstore indexov
  • Predstavenie technológie In-memory OLTP a ukážka jej vhodného použitia
  • Zoznámenie sa s columnstore indexmi, vysvetlenie princípov fungovania a ich vhodného použitia
  • Nasadenie clusterovaný columnstore indexov v dátových skladoch
  • Možnosti využitia non-clustered columnstore indexov v OLTP aplikáciách
5 Exekučné plány
  • Zoznámenie sa s procesom zostavenia exekučného plánu
  • Ukážka zachytenia a zobrazenia exekučného plánu
  • Vysvetlenie správneho čítania exekučného plánu a vysvetlenie jednotlivých operátorov
  • Predstavenie operátorov pre spojenie dát z viacerých tabuliek a vysvetlenie možností optimalizácie JOIN operátora
  • Predstavenie operátorov pre agregáciu dát a možných optimalizácií agregačných otázok vrátane použitia columnstore indexov
  • Zoznámenie sa s mechanizmom cachovania exekučných plánov a vysvetlenie problémov s tým spojených (parameter sniffing, časté rekompilácia plánov, ad-hoc otázky)
  • Zoznámenie sa s novými prístupmi optimalizátora vďaka použitiu Adaptive Query Processing (SQL Server 2017) a Intelligent Query Processing (SQL Server 2019)
6 Zámky, transakcie a izolačné úrovne
  • Vysvetlenie vlastností databázovej transakcie
  • Ukážka správneho použitia transakcií
  • Predstavenie mechanizmov pre riadenie súbežného prístupu
  • Zoznámenie sa s fungovaním zámkov v SQL Server a problémov z toho vyplývajúcich
  • Vysvetlenie vhodného nastavenia izolačnej úrovne a problémov súbežného spracovania, pred ktorými nás chráni
  • Použitie izolačnej úrovne SNAPSHOT s využitím verzovania riadkov
Aktuálna ponuka
Školiace miesto
Jazyk kurzu

Uvedené ceny sú bez DPH.

Školenie na mieru

Nenašli ste vhodný termín, alebo chcete školenie prispôsobiť špecifickým potrebám vášho tímu? Radi pre vás pripravíme školenie na mieru.