Shromažďování standardních hodnot: Osvědčené postupy z hlediska výkonu pro SQL Server na virtuálním počítači Azure

Platí pro:SQL Server na virtuálním počítači Azure

Tento článek obsahuje informace o shromažďování standardních hodnot výkonu jako řady osvědčených postupů a pokynů pro optimalizaci výkonu SQL Serveru na virtuálních počítačích Azure.

Mezi optimalizací nákladů a optimalizací výkonu se obvykle liší. Tato řada osvědčených postupů výkonu se zaměřuje na dosažení nejlepšího výkonu PRO SQL Server na virtuálních počítačích Azure. Pokud je vaše úloha méně náročná, nemusíte vyžadovat každou doporučenou optimalizaci. Při vyhodnocování těchto doporučení zvažte požadavky na výkon, náklady a vzorce úloh.

Přehled

Pro preskriptivní přístup shromážděte čítače výkonu pomocí nástroje PerfMon/LogMan a zachyťte statistiky čekání SQL Serveru, abyste lépe porozuměli obecným tlakům a potenciálním kritickým bodům zdrojového prostředí.

Začněte shromažďováním procesoru, paměti, IOPS, propustnosti a latence zdrojové úlohy ve špičce podle kontrolního seznamu výkonu aplikace.

Shromážděte data během špičky, jako jsou úlohy během typického pracovního dne, ale také další procesy s vysokým zatížením, jako je zpracování na konci dne a víkendové úlohy ETL. Zvažte vertikální navýšení kapacity prostředků pro atypicky náročné úlohy, jako je zpracování na konci čtvrtletí, a pak proveďte škálování po dokončení úlohy.

Pomocí analýzy výkonu vyberte velikost virtuálního počítače, která se dá škálovat na požadavky na výkon vaší úlohy.

Úložiště

Výkon SQL Serveru závisí hodně na subsystému vstupně-výstupních operacích a výkonu úložiště se měří podle IOPS a propustnosti. Pokud databáze nevejde do fyzické paměti, SQL Server neustále vrací databázové stránky do fondu vyrovnávací paměti a z fondu vyrovnávací paměti. Datové soubory pro SQL Server by se měly považovat za odlišně. Přístup k souborům protokolu je sekvenční s výjimkou případů, kdy je potřeba vrátit transakce zpět, kde jsou datové soubory, včetně tempdb, náhodně přístupné. Pokud máte pomalý vstupně-výstupní subsystém, můžou uživatelé zaznamenat problémy s výkonem, jako jsou pomalé doby odezvy a úlohy, které se nedokončí kvůli vypršení časového limitu.

Virtuální počítače Azure Marketplace mají soubory protokolů na fyzickém disku, který je ve výchozím nastavení oddělený od datových souborů. Počet tempdb a velikost datových souborů splňují osvědčené postupy a cílí na dočasný D:\ disk.

Následující čítače PerfMon vám můžou pomoct ověřit propustnost vstupně-výstupních operací vyžadovanou sql Serverem:

  • \Logický disk\Čtení disku/s (čtení IOPS)
  • \Logický disk\Zápisy na disk/s (IOPS zápisu)
  • \Logický disk\Bajty čtení disku/s (požadavky na propustnost čtení dat, protokolů a tempdb souborů)
  • \Logický disk\Bajty zápisu na disk/s (požadavky na propustnost zápisu dat, protokolů a tempdb souborů)

Při použití požadavků na vstupně-výstupní operace za sekundu a propustnosti na úrovni špičky vyhodnoťte velikosti virtuálních počítačů, které odpovídají kapacitě z měření.

Pokud vaše úloha vyžaduje 20 tisíc vstupně-výstupních operací čtení a 10 tisíc vstupně-výstupních operací zápisu, můžete zvolit E16s_v3 (s až 32 tisíci uloženými v mezipaměti a 25600 necached IOPS) nebo M16_s (s až 20 tisíci uloženými v mezipaměti a 10K bez mezipaměti IOPS) s 2 disky P30 prokládáním pomocí Prostorů úložiště.

Ujistěte se, že rozumíte požadavkům na propustnost i IOPS úlohy, protože virtuální počítače mají různá omezení škálování pro vstupně-výstupní operace za sekundu a propustnost.

Paměť

Sledujte jak externí paměť používanou operačním systémem, tak i paměť používanou interně SQL Serverem. Identifikace tlaku pro kteroukoli komponentu pomůže velikost virtuálních počítačů a identifikaci příležitostí k ladění.

Následující čítače PerfMon vám můžou pomoct ověřit stav paměti virtuálního počítače s SQL Serverem:

Compute

Výpočetní prostředky v Azure se spravují jinak než místně. Místní servery se sestavují na několik let bez upgradu kvůli režii správy a nákladům na získání nového hardwaru. Virtualizace snižuje některé z těchto problémů, ale aplikace jsou optimalizované tak, aby využívaly největší výhodu základního hardwaru, což znamená, že jakákoli významná změna spotřeby prostředků vyžaduje vyrovnávání celého fyzického prostředí.

V Azure to není problém, kdy je snadné dosáhnout nového virtuálního počítače na jiné řadě hardwaru a dokonce i v jiné oblasti.

V Azure chcete využít co nejvíce prostředků virtuálních počítačů, proto by měly být virtuální počítače Azure nakonfigurované tak, aby zachovaly průměrný procesor co nejvyšší, aniž by to mělo vliv na úlohu.

Následující čítače PerfMon vám můžou pomoct ověřit stav výpočetních prostředků virtuálního počítače s SQL Serverem:

  • \Informace o procesoru(_Total)% čas procesoru
  • \Process(sqlservr)% čas procesoru

Poznámka:

V ideálním případě se snažte použít 80 % výpočetních prostředků s vrcholy nad 90 %, ale nedosahujte 100 % po dlouhou dobu. V podstatě chcete zřídit jenom výpočetní prostředky, které aplikace potřebuje, a pak naplánovat vertikální navýšení nebo snížení kapacity podle toho, jak to firma vyžaduje.

Další kroky

Další informace najdete v dalších článcích v této sérii osvědčených postupů:

Osvědčené postupy zabezpečení najdete v tématu Důležité informace o zabezpečení SQL Serveru na virtuálních počítačích Azure.

Projděte si další články o virtuálních počítačích s SQL Serverem v přehledu SQL Serveru na virtuálních počítačích Azure. Pokud máte dotazy k virtuálním počítačům s SQL Serverem, přečtěte si Nejčastější dotazy.