Proaktivno praćenje perfomansi DB servera

Praćenje performansi i problema SQL servera je jedan složen i kompleksan zadatak, i često smo primorani pratiti performanse i zadatke backupa koristeći više alata.

Jedan od boljih alata koji nam daje uvid u performanse SQL servera je SQL Managment Studio i njegova slabo poznata opcija Performance Dashboard.

Istu možete naći ovdje:

Međutim, SQL Manager je dosta težak alat koji se oslanja na Visual Studio i vrijeme pokretanja je slično kao i za VS. Uostalom, radi samo na Windows OS i samo za SQL server.

Od 2015. Microsoft se okreće Open Sourceu i drugim platformama kao Linux i MacOS. Jedan od najboljih proizvoda nove strategije je i Visual Studio Code, ponajbolji IDE za razvoj.

Zahvaljujući sjajnom uspjehu novih alata, Microsoft izdaje i Azure Data Studio. Premda ime tako sugerira, premda može, ovaj SQL IDE nije ograničen na Azure, on može raditi s bazama, bile u Azure, AWSu, lokalno, bile SQL Server ili Postgre/MySQL, itd. Možete ga pronaći ovdje.

Nakon instalacije i pokretanja, dočekati će vas prazna ploča, spremna prvo za definiranje vaših servera. Odimo na “dodaj konekciju” i ispunimo tražene podatke.

Kreiranje upita

Kreiranje upita nad bazom nije ništa drukčije nego bi očekivali od SQL IDE, pronađite vašu bazu i “New Query”.

Svi queryi i dashboardi će biti dostupni na githubu na kraju članka.

Ovo je primjer testiranja brzine diska kroz SQL.

Svaki naš query ćemo upotrijebiti za naše dashborde, zato moraju biti negdje spremljeni. File->Save as… i izaberite ime za vaš query i putanju koju ćemo upotrijebiti kasnije.

Kreiranje grafova

Dashboarde dijelimo na 2 tipa: server dashboard i database dashboard. Oba tipa rade query koji napišete da vrijedi na razini servera ili na razini baze.

Npr. brzina diska bi bila na razini servera a fragmentirani indexi bi bili na razini baze.

Vratimo se na naš query iz prethodnog primjera. Ukoliko pogledate s desne strane rezulata querya postoji mala ikonica za kreiranje grafa.

Sada nam se otvori prozor za određivanje izgleda dashboarda. Ovisno o vašim podacima koje je upit vratio, izaberite takav graf.

Kada se zadovoljni svojim grafom, idite na “Create Insight” kako bi dobili string koji ćemo upotrijebiti za dodavanje na Dashboard servera ili baze.

Ovako string grafa izgleda:

{“name”:”Moj naziv djela dashborda”,”gridItemConfig”: {“sizex”:2,”sizey”:1},”widget”:{“insights-widget”:{“type”: {“horizontalBar”:{“dataDirection”:”vertical”,”columnsAsLabels”: true,”labelFirstColumn”:false,”legendPosition”: “top”,”encoding”:”hex”,” imageFormat”:”jpeg”,”dataType”: “number”}},”queryFile”:”PathTo/SQLQuery_1.sql”}}}

Neka pojašnjenja: “Name” vam je jasno čemu služi, “SizeX” i “Size”Y je veličina koju će zauzimati Graf na dashboardu, možete koristiti i decimale, npr. 1.6, ostale vrijednosti su one koje ste izabrali pri kreiranju grafa. Najvažniji je dio imati punu putanju do vašeg query u dijelu queryfile.

Dodavanje grafa na Dashboard

Kako bi dodali graf na Dashboard, pritisnite kombinaciju tipku CTRL + , (CTRL i zarez) koji će otvoriti Postavke, u tražilicu upišite Dashboard i pronađite Server:Widgets.

Sada samo zalijepite svoj string grafa na mjesto widgeta. U ovome primjeru je više grafova, samo ih razdvojite zarezom:

Ukoliko želite praviti querye za bazu ponovite isto ali izaberite Database:Widgets, te zalijepite vaš graf string.

Easy as pie

Među svojim konekcijama, samo dvokliknite vaš server u voila – svi dashboardi se instantno učitavaju.

Želim isprobati to čudo…

Queryi i widgeti su dostupni na githubu.

 

 

Trebate pomoć oko svojeg projekta?

Tu smo za vas.