Výkon aplikací a systému hraje obrovskou roli v tom, jak uživatel vnímá hodnotu vašeho produktu a kompetence vaší společnosti. Pokud stejné stránce neustále vyprší časový limit nebo trvá věčnost, než se dostanete ke kritické zprávě, bude výkon vašeho databázového systému pro vaši organizaci znamenat problém s důvěryhodností.
Vysoká dostupnost a spolehlivý výkon jsou klíčem k udržení spokojenosti zákazníků a interních uživatelů systému a mohou dokonce ovlivnit váš konečný výsledek. S ohledem na tyto cíle je implementace komplexní strategie sledování výkonu SQL Server nutností.
Výhody sledování výkonu serveru SQL Server
Nejčastěji nabízenou výhodou sledování výkonu je snadné odstraňování problémů a řešení problémů. Dobře nakonfigurovaný nástroj pro monitorování SQL Serveru je nejúčinnějším prostředkem k rychlému nalezení a vyřešení problémů se serverem a databází dříve, než ovlivní koncové uživatele nebo se stanou velkými a nákladnými problémy.
Kromě zachování stavu systému může implementace sledování výkonu SQL Server pomoci snížit náklady na infrastrukturu. Jedním z příkladů jsou zbytečné náklady na skladování. Při optimalizaci výkonu SQL Serveru je neustále monitorován růst velikosti souboru. Nadměrný nárůst velikosti souboru spustí výstrahu, takže problém lze vyřešit dříve, než se vyčerpá místo na disku a na problém se přidají další zdroje.
A pokud se rozhodnete pro cloudové řešení monitorování, můžete návratnost investic ještě zvýšit tím, že se rozloučíte s náklady na bydlení a údržbu fyzických serverů.
Sledováním těchto metrik zlepšíte výkon serveru SQL
Víme, že monitorování výkonu SQL Serveru je skvělá strategie pro řešení problémů a úsporu peněz, ale pokud nebudete sledovat správné metriky, nebudete mít plný užitek z nástroje pro monitorování SQL Serveru. Chcete-li získat optimální výkon ze serveru SQL Server, zde je pět oblastí, které budete chtít sledovat, a nejdůležitější metriky ke sledování z každé z nich.
1. Mezipaměť
Mezipaměť vyrovnávací paměti ukládá kopie nedávno použitých databázových stránek. SQL Server se nejprve podívá do mezipaměti, ale pokud tam nenajde, co hledá, jde na disk. Čtení z disku je pomalé, což může negativně ovlivnit výkon.
Poměr přístupů do mezipaměti
Poměr přístupů do mezipaměti ukazuje, jak často SQL Server přistupuje ke stránkám z mezipaměti. Vyšší hodnoty znamenají, že ke stránkám se přistupovalo z paměti a ne z disku. Pokud neustále vidíte nízký poměr přístupů do mezipaměti, zkontrolujte, zda v systémové paměti není úzké místo.
Předpokládaná životnost stránky
Sledování očekávané životnosti stránky ukazuje, jak dlouho stránka zůstane v paměti místo toho, aby se přesunula na disk. Čím delší je očekávaná životnost stránky, tím lepší je poměr zásahů do mezipaměti.
Kontrolní bod stránek/s
SQL Server nastaví kontrolní body k uvolnění místa ve vyrovnávací paměti pravidelným vyprázdněním upravených stránek z vyrovnávací paměti na disk. Počet vyprázdněných stránek závisí na nastavení konfigurace a využití serveru, takže je důležité nastavit základní úroveň pro srovnání. Pokud zaznamenáte nárůst počtu vyprázdněných stránek, můžete mít problém s I/O.
2. Indexy
Databázové indexy pomáhají urychlit operace v tabulkách s velkým množstvím záznamů. Přestože jsou indexy užitečným nástrojem pro vylepšení některých databázových funkcí, existují s indexy inherentní problémy, které mohou snížit výkon, pokud nejsou rychle zachyceny.
Fragmentace
Při přidávání a odstraňování záznamů dochází k fragmentaci indexu. Postupem času tyto změny způsobují problémy s výkonem tím, že na příliš mnoha stránkách ponechávají příliš mnoho prázdného místa a přidávají nové stránky mimo pořadí. To může zpomalit skenování a zabírat nadměrnou paměť.
Monitorování fragmentace indexu vám dá vědět, kdy je potřeba spustit Rebuild nebo Reorganize na indexu, abyste fragmentaci opravili a zlepšili výkon.
Faktor vyplnění a rozdělení stránky
Nastavení faktoru vyplnění dává vašim indexům vědět, jak plná by měla být každá stránka. Pokud je stránka příliš plná, dojde k rozdělení stránky; pokud stránka není dostatečně plná, plýtváte zdroji.
Sledování rozdělení stránek může pomoci určit, kdy je potřeba upravit faktor plnění. Chcete-li dosáhnout nejlepšího výkonu, nenastavujte hodnotu faktoru plnění pro celý systém. Vyhodnoťte jednotlivé indexy a pro každý nastavte faktor plnění na vhodnou úroveň.
3. T-SQL
Pro optimalizaci výkonu SQL Server dávkuje příkazy SQL, poté je kompiluje do plánů provádění a ukládá je do mezipaměti pro opětovné použití. Pokud SQL Server nemůže znovu použít plán provádění, plán se znovu zkompiluje, což spotřebovává velké množství CPU a snižuje výkon. Proto je nejlepší udržovat počet rekompilací příkazů SQL co nejnižší.
Sledování rychlosti kompilace a rekompilace SQL ukáže, zda je nutné překonfigurovat některé oblasti, jako jsou uložené procedury a parametry dotazu.
4. Blokování
Blokování serveru SQL je způsobeno tím, že více klientů a procesů požaduje přístup ke stejným prostředkům současně. Pokud se zdroj již používá, přístup je uzamčen a zdroj není k dispozici pro další požadavky. Tím se proces pozastaví, dokud nebude zdroj uvolněn a znovu dostupný.
Zámek čeká
Požadavky obvykle nemusejí čekat na uzamčení, takže tato metrika by měla zůstat kolem nuly. Zvýšení čekání na uzamčení naznačuje problém s dobou načítání, takže budete muset vysledovat hlavní příčinu problému.
Blokované procesy
Sledování zablokovaných procesů je dobrý způsob, jak se vyhnout mnoha e-mailům, které vás informují o zablokovaném procesu. Použijte SQL Server Profiler k zachycení dat o zablokovaných procesech a pravidelné kontrole sestavy.
5. Využití zdrojů
Sledování metrik využití zdrojů je efektivní způsob, jak nejen určit problémy s výkonem, ale také pomoci s plánováním kapacity.
Počet řádků
Sledování počtu řádků poskytuje přímý a snadno sledovatelný přehled o objemu dat spojených s určitou tabulkou v průběhu času. Neočekávané zvýšení nebo snížení počtu řádků by mělo vyvolat vyšetřování příčiny.
I/O databázového souboru
Měřením I/O metrik oproti databázovým souborům můžete sledovat, kolik dat je zapsáno a čteno jakýmkoli daným datovým souborem. Pokud zaznamenáte potenciální problém, tato metrika může pomoci zúžit hlavní příčinu. Sledování I/O databázových souborů také pomáhá při plánování infrastruktury, protože vám může pomoci předvídat budoucí datovou propustnost a odpovídajícím způsobem upravit zdroje.
Velikost zálohy protokolu transakcí
Když dojde k selhání serveru z důvodu přetížení, SQL Server použije k obnovení záznamy protokolu databáze uložené ve virtuálních souborech protokolu (VLF). Je důležité sledovat, kolik VLF je v protokolu transakcí, protože příliš mnoho může zpomalit procesy obnovy při obnově po výpadku.
Monitorování výkonu SQL Serveru je klíčovou součástí strategie řízení kvality organizace. Sledováním několika klíčových výkonnostních metrik získáte pověst, že svým uživatelům poskytujete systém, kterému mohou důvěřovat a na který se mohou spolehnout. pokud tak neučiníte, může se váš systém stát jen další chybnou aplikací, které se uživatelé děsí.