MS SQL výkonnosť cez meranie času
Optimálnym spôsobom ako mať pod kontrolou celkovú výkonnosť MS SQL servera, je merať čas podobnej operácie ako vykonáva aplikácia bežia nad MS SQL.To jest dotazovať sa SQL servera o určité informácie, alebo priamo v databáze aplikácie robiť unifikované operácie (uisťujeme, že sú naprosto bezpečné voči údajom v databáze a aplikácii)
K dispozícii sú dve "performance" šablóny k meraniu času nad MS SQL :
1. MS SQL Query Response time - zmeria čas sledu operácií :
pripojenie na databázu,
spýtanie sa SQL servera na systémový čas
odpojenie sa od SQL servera
Postup nastavenia (nižšie v článku)
2. MS SQL Query Response time with table - zmeria čas sledu operácií :
pripojenie na databázu,
vytvorenie tabuľky s 300 riadkami a 5 stĺpcami, ktorú naplní aktuálnym dátumom,
vymaže túto tabuľku
odpojí sa od databázy
Postup nastavenia (nižšie v článku)
1. Postup nastavenia k MS SQL Query Response time
Watch meria čas sledu operácií :
pripojenie na databázu,
spýtanie sa SQL servera na systémový čas
odpojenie sa od SQL servera
Výsledkom (value) je čas operácií v milisekundách, ktorý je prenášaný na zobrazenie a archiváciu histórie do CM portálu. Výborná hodnota je okolo 50ms, ale podľa HW a verzie SQL servera môže byť iný. Značné zaťaženie už môže znamenať aj odozva vyššia o +20%, keďže test pozostáva s relatívne rýchlo uskutočniteľných operácií. Sami si empiricky zistite, pri akej hodnote vám aplikácie bežia rýchlo a kedy už systém nestíha a podľa toho si dostavte limitnú hodnotu Watchu.
Voľba názvu SQL servera, resp. inštancie musíte zvoliť podľa typu inštalácie. Pre prvú SQL inštanciu s východzou konfiguráciou, do položky Server zapíšete jednu z alternatív :
1. sieťové meno servera
2. sieťové meno servera\ názov inštancie (názov inštancie, ak je iba jedna, je obvykle MSSQLSERVER alebo SQLSERVER alebo pre prípad SQLEXPRESS). Pre ďalšie inštancie zapisujete názov služby k inštancii SQL servera v tvare MSSQL$názov_inštancie.
2. Postup nastavenia k MS SQL Query Response time with table (operácie s tabuľkou)
zmeria čas sledu operácií :
pripojenie na databázu,
vytvorenie tabuľky s 300 riadkami a 5 stĺpcami, ktorú naplní aktuálnym dátumom,
vymaže túto tabuľku
odpojí sa od databázy
Výsledkom (value) je čas operácií v milisekundách, ktorý je prenášaný na zobrazenie a archiváciu histórie do CM portálu. Výborná hodnota je okolo 100ms, pri zaťažení SQL servera sa vám to môže vyšplhať nad 500ms, čo už signalizuje spomalenie reakcií aplikácie, ktoré je prevádzkovaná na danom serveri.
V tejto časti sú popísané len rozdiely voči vyššie uvedenému postupu. Základným rozdielom je, že práca sa s tabuľkou sa realizuje pomocou SQL procedúry, ktorú je nutné importovať do SQL servera. Procedúra je distribuovaná v inštalačke C-Monitora a je uložená na ceste drive:\CMonitor\Cnf\SWL_templates\SQL_VBS\sql_table_procedure_v1xx.sql.
Import procedúry do SQL servera
1. Otvorte SQL manažment konzolu
2. Nastavte sa v hirerchii SQL objektov na SQL server / databases / vaša_databáza / Programmability / Stored Procedures
3. Doubleclickom otvorte procedúru drive:\CMonitor\Cnf\SWL_templates\SQL_VBS\sql_table_procedure_v1xx.sql.
4. Stlačte Execute
5. Obnovte strom a overte, že pribudla v strome pod vašu databazu do Stored Procedures procedúra dbo.TestDBCMonitor1
4. Zavrite SQL manažment konzolu
Tip : Niekedy sa môže stať, že procedúru vám uloží pod System databases / Master. Vtedy otvorte
súbor procedúry z C-Monitora sql_table_procedure_v1xx.sql a v prvom riadku využite príkaz USE. Pôvodné znenie je :
-- USE name_of_tested database (insert only if needed and delete double dash at start of this row)
prepíšte ho na :
USE názov_vasej_databazy
Pokračovanie v nastavení Watchu rovnako ako v prvom prípade
Výber šablóny je rozdielny, ostatné kroky sú identické.
Pokračujte podľa postupu vyššie.