Osvědčené postupy PRO SQL Server pro optimalizaci výkonu ve službě Azure Stack Hub

Tento článek obsahuje osvědčené postupy PRO SQL Server pro optimalizaci SQL Server a zlepšení výkonu ve virtuálních počítačích Microsoft Azure Stack Hub. Při spuštění SQL Server na virtuálních počítačích Azure Stack Hub použijte stejné možnosti ladění výkonu databáze, které platí pro SQL Server v místním serverovém prostředí. Výkon relační databáze v cloudu Azure Stack Hub závisí na mnoha faktorech, včetně velikosti rodiny virtuálních počítačů a konfigurace datových disků.

Při vytváření SQL Server imagí zvažte zřízení virtuálních počítačů na portálu Azure Stack Hub. Stáhněte si rozšíření SQL IaaS z webu Správa Marketplace na portálu pro správu služby Azure Stack Hub a stáhněte si image virtuálních počítačů podle svého výběru SQL Server. Patří mezi ně SQL Server 2016 SP1, SQL Server 2016 SP2 a SQL Server 2017.

Poznámka

I když článek popisuje, jak zřídit virtuální počítač SQL Server pomocí globální Azure Portal, pokyny platí také pro Službu Stack Hub s následujícími rozdíly: DISK SSD není k dispozici pro disk operačního systému a v konfiguraci úložiště existují menší rozdíly.

V imagích virtuálních počítačů můžete pro SQL Server použít pouze vlastní licenci (BYOL). Pro Windows Server je výchozím licenčním modelem průběžné platby (PAYG). Podrobné informace o licenčním modelu Windows Serveru na virtuálním počítači najdete v článku Nejčastější dotazy k Windows Serveru ve službě Azure Stack Hub na Marketplace.

Tento článek se zaměřuje na zajištění nejlepšího výkonu pro SQL Server na virtuálních počítačích Azure Stack Hub. 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 své požadavky na výkon a vzory úloh.

Poznámka

Pokyny k výkonu pro SQL Server na virtuálních počítačích Azure najdete v tomto článku.

Kontrolní seznam osvědčených postupů pro SQL Server

Následující kontrolní seznam se zaměřuje na optimální výkon SQL Server na virtuálních počítačích Azure Stack Hub:

Plošný Optimalizace
Velikost virtuálního počítače DS3 nebo vyšší pro edici SQL Server Enterprise.

DS2 nebo vyšší pro edici SQL Server Standard a edici Web.
Storage Použijte řadu virtuálních počítačů, které podporují Službu Premium Storage.
Disky Použijte minimálně dva datové disky (jeden pro soubory protokolů a jeden pro datový soubor a databázi TempDB) a zvolte velikost disku podle potřeb vaší kapacity. Během instalace SQL Server nastavte výchozí umístění datových souborů na tyto disky.

Nepoužívejte operační systém nebo dočasné disky pro ukládání databází nebo protokolování.
Prokládáním několika datových disků Azure získáte zvýšenou propustnost vstupně-výstupních operací pomocí Prostorů úložiště.

Formát s dokumentovanými velikostmi přidělení
I/O Povolení okamžité inicializace souborů pro datové soubory

Omezte automatické zvětšování databází s přiměřeně malými pevnými přírůstky (64 MB–256 MB).

Zakažte automatické zhoršování databáze.

Nastavte výchozí zálohování a umístění souborů databáze na datových discích, ne na disku operačního systému.

Povolte uzamčené stránky.

Nainstalujte SQL Server aktualizací Service Pack a kumulativních aktualizací.
Specifické funkce Zálohujte přímo do úložiště objektů blob (pokud používáte SQL Server verzi).

Další informace o tom, jak a proč tyto optimalizace provádět, najdete v podrobnostech a doprovodných materiálech uvedených v následujících částech.

Pokyny k velikosti virtuálního počítače

Pro aplikace citlivé na výkon se doporučují následující velikosti virtuálních počítačů :

  • SQL Server Enterprise edice: DS3 nebo vyšší

  • SQL Server Standard edice a Webová edice: DS2 nebo vyšší

Se službou Azure Stack Hub není mezi řadami virtuálních počítačů ds a DS_v2 žádný rozdíl ve výkonu.

Pokyny k ukládání

Virtuální počítače řady DS (společně s virtuálními počítači řady DSv2) ve službě Azure Stack Hub poskytují maximální propustnost disku a datového disku s operačním systémem (IOPS). Virtuální počítač z řady DS nebo DSv2 poskytuje až 1 000 IOPS pro disk s operačním systémem a až 2 300 IOPS na datový disk bez ohledu na typ nebo velikost zvoleného disku.

Propustnost datového disku se určuje jedinečně na základě řady virtuálních počítačů. Propustnost datového disku pro řadu virtuálních počítačů najdete v tomto článku .

Poznámka

Pro produkční úlohy vyberte virtuální počítač řady DS nebo DSv2-series, abyste zajistili maximální možný počet IOPS na disku operačního systému a datových discích.

Při vytváření účtu úložiště ve službě Azure Stack Hub nemá možnost geografické replikace žádný vliv, protože tato funkce není ve službě Azure Stack Hub dostupná.

Pokyny k diskům

Virtuální počítač se službou Azure Stack Hub má tři hlavní typy disků:

  • Disk s operačním systémem: Když vytvoříte virtuální počítač Azure Stack Hub, platforma k němu připojí alespoň jeden disk (označený jako jednotka C ) pro váš disk s operačním systémem. Tento disk je virtuální pevný disk uložený jako objekt blob stránky v úložišti.

  • Dočasný disk: Virtuální počítače Azure Stack Hub obsahují další disk označovaný jako dočasný disk (označený jako jednotka D ). Jedná se o disk v uzlu, který lze použít pro pomocné místo.

  • Datové disky: K virtuálnímu počítači můžete připojit další disky jako datové disky a tyto disky jsou uložené v úložišti jako objekty blob stránky.

Následující části popisují doporučení pro použití těchto různých disků.

Disk operačním systému

Disk s operačním systémem je virtuální pevný disk, který můžete spustit a připojit jako spuštěnou verzi operačního systému a je označený jako jednotka C .

Dočasný disk

Jednotka dočasného úložiště označená jako jednotka D není trvalá. Neukládejte na jednotku D žádná data, která nechcete ztratit. To zahrnuje soubory uživatelské databáze a soubory protokolu uživatelských transakcí.

Databázi TempDB doporučujeme ukládat na datový disk, protože každý datový disk poskytuje maximálně 2 300 IOPS na datový disk.

Datové disky

  • Pro data a soubory protokolů používejte datové disky. Pokud nepoužíváte prokládání disků, použijte dva datové disky z virtuálního počítače, který podporuje službu Premium Storage, kde jeden disk obsahuje soubory protokolů a druhý obsahuje soubory dat a tempdb. Každý datový disk poskytuje několik IOPS v závislosti na řadě virtuálních počítačů, jak je popsáno v tématu Velikosti virtuálních počítačů podporované ve službě Azure Stack Hub. Pokud používáte techniku prokládání disků, například Prostory úložiště, umístěte všechna data a soubory protokolů na stejnou jednotku (včetně databáze TempDB). Tato konfigurace poskytuje maximální počet vstupně-výstupních operací za sekundu dostupných pro SQL Server bez ohledu na to, který soubor je v konkrétní době potřebuje.

Poznámka

Když na portálu zřídíte SQL Server virtuální počítač, máte možnost upravit konfiguraci úložiště. V závislosti na konfiguraci azure Stack Hub nakonfiguruje jeden nebo více disků. Několik disků se kombinuje do jednoho fondu úložiště. Data i soubory protokolů se v této konfiguraci nacházejí společně.

  • Prokládání disků: Pro zvýšení propustnosti můžete přidat další datové disky a použít prokládání disků. Pokud chcete zjistit počet datových disků, který potřebujete, analyzujte počet IOPS požadovaných pro soubory protokolů a datové soubory a soubory TempDB. Všimněte si, že limity IOPS jsou na datový disk založené na řadě virtuálních počítačů, a ne na velikosti virtuálního počítače. Omezení šířky pásma sítě jsou ale založená na velikosti virtuálního počítače. Další podrobnosti najdete v tabulkách velikostí virtuálních počítačů ve službě Azure Stack Hub . Postupujte takto:

    • Pro Windows Server 2012 nebo novější použijte Prostory úložiště s následujícími pokyny:

      1. Nastavte prokládání (velikost pruhu) na 64 kB (65 536 bajtů) pro úlohy zpracování online transakcí (OLTP) a 256 kB (262 144 bajtů) pro úlohy datového skladu, abyste se vyhnuli dopadu na výkon v důsledku chybného zarovnání oddílů. Toto nastavení musí být nastavené pomocí PowerShellu.

      2. Nastavte počet sloupců = počet fyzických disků. Při konfiguraci více než osmi disků (ne Správce serveru uživatelského rozhraní) použijte PowerShell.

        Například následující PowerShell vytvoří nový fond úložiště s velikostí prokládání nastavenou na 64 kB a počtem sloupců na 2:

        $PoolCount = Get-PhysicalDisk -CanPool $True
        $PhysicalDisks = Get-PhysicalDisk | Where-Object {$_.FriendlyName -like "*2" -or $_.FriendlyName -like "*3"}
        
        New-StoragePool -FriendlyName "DataFiles" -StorageSubsystemFriendlyName "Storage Spaces*" -PhysicalDisks $PhysicalDisks | New-VirtualDisk -FriendlyName "DataFiles" -Interleave 65536 -NumberOfColumns 2 -ResiliencySettingName simple -UseMaximumSize |Initialize-Disk -PartitionStyle GPT -PassThru |New-Partition -AssignDriveLetter -UseMaximumSize |Format-Volume -FileSystem NTFS -NewFileSystemLabel "DataDisks" -AllocationUnitSize 65536 -Confirm:$false
        
  • Určete počet disků přidružených k vašemu fondu úložiště na základě očekávání zatížení. Mějte na paměti, že různé velikosti virtuálních počítačů umožňují různé počty připojených datových disků. Další informace najdete v tématu Podporované velikosti virtuálních počítačů ve službě Azure Stack Hub.

  • Pokud chcete získat maximální možný počet IOPS datových disků, doporučujeme přidat maximální počet datových disků podporovaný velikostí virtuálního počítače a použít prokládání disků.

  • Velikost alokační jednotky NTFS: Při formátování datového disku doporučujeme použít velikost alokační jednotky 64 kB pro data a soubory protokolů i databázi TempDB.

  • Postupy správy disků: Při odebírání datového disku během změny zastavte službu SQL Server. Neměňte také nastavení mezipaměti na discích, protože to neposkytuje žádná vylepšení výkonu.

Upozornění

Selhání zastavení služby SQL během těchto operací může způsobit poškození databáze.

Doprovodné materiály ke vstupně-výstupním operacím

  • Zvažte povolení okamžité inicializace souborů, abyste zkrátili dobu potřebnou k počátečnímu přidělení souboru. Pokud chcete využít výhod okamžité inicializace souborů, udělíte účtu služby SQL Server (MSSQLSERVER) SE_MANAGE_VOLUME_NAME a přidáte ho do zásady zabezpečení Provádět úlohy údržby svazku. Pokud používáte image platformy SQL Server pro Azure, výchozí účet služby (NT Service\MSSQLSERVER) se do zásad zabezpečení Provádět úlohy údržby svazků nepřidá. Jinými slovy, v imagi SQL Server platformy Azure není povolená okamžitá inicializace souborů. Po přidání účtu služby SQL Server do zásady zabezpečení Provést úlohy údržby svazku restartujte službu SQL Server. Při používání této funkce můžou být důležité informace o zabezpečení. Další informace najdete v tématu Inicializace souboru databáze.

  • Automatické zvětšování je nepředvídané řešení pro neočekávaný růst. Nespravujte data a nespravujte růst protokolů na každodenní bázi pomocí automatického zvětšování. Pokud se používá automatické zvětšování, před zvětšením souboru použijte přepínač Velikost .

  • Ujistěte se, že je automatické ztuhnutí zakázané, abyste se vyhnuli zbytečným režijním nákladům, které by mohly negativně ovlivnit výkon.

  • Nastavte výchozí umístění záloh a souborů databáze. Použijte doporučení v tomto článku a proveďte změny v okně Vlastnosti serveru. Pokyny najdete v tématu Zobrazení nebo změna výchozích umístění pro soubory dat a protokolů (SQL Server Management Studio). Následující snímek obrazovky ukazuje, kde provést tyto změny:

    Zobrazení nebo změna výchozích umístění

  • Povolením uzamčených stránek omezíte vstupně-výstupní operace a aktivity stránkování. Další informace najdete v tématu Povolení možnosti Uzamknout stránky v paměti (Windows).

  • Při přenosu do nebo z Azure Stack Hubu, včetně záloh, zvažte komprimaci datových souborů.

Pokyny pro konkrétní funkce

Některá nasazení můžou dosáhnout dalších výhod z hlediska výkonu pomocí pokročilejších technik konfigurace. Následující seznam obsahuje některé SQL Server funkce, které vám můžou pomoct dosáhnout lepšího výkonu:

  • Zálohujte do úložiště Azure. Při zálohování SQL Server spuštěných na virtuálních počítačích Azure Stack Hub můžete použít SQL Server zálohování na adresu URL. Tato funkce je dostupná od SQL Server 2012 SP1 CU2 a doporučuje se k zálohování na připojené datové disky.

    Při zálohování nebo obnovení pomocí úložiště Azure postupujte podle doporučení uvedených v tématu osvědčené postupy pro zálohování na adresu URL SQL Server a řešení potíží a obnovení ze záloh uložených v Microsoft Azure. Tyto zálohy můžete také automatizovat pomocí automatizovaného zálohování pro SQL Server na virtuálních počítačích Azure.

  • Zálohujte do úložiště služby Azure Stack Hub. Do úložiště Služby Azure Stack Hub můžete zálohovat podobným způsobem jako při zálohování do služby Azure Storage. Když vytváříte zálohu v SQL Server Management Studio (SSMS), musíte zadat informace o konfiguraci ručně. SSMS nemůžete použít k vytvoření kontejneru úložiště nebo sdíleného přístupového podpisu. SSMS se připojuje pouze k předplatným Azure, nikoli k předplatným služby Azure Stack Hub. Místo toho musíte vytvořit účet úložiště, kontejner a sdílený přístupový podpis na portálu Azure Stack Hub nebo pomocí PowerShellu.

    zálohování SQL Server

    Poznámka

    Sdílený přístupový podpis je token SAS z portálu Azure Stack Hub bez počátečního znaku "?" v řetězci. Pokud použijete funkci copy z portálu, budete muset odstranit úvodní text ?, aby token fungoval v rámci SQL Server.

    Jakmile budete mít v SQL Server nastavený a nakonfigurovaný cíl zálohování, můžete zálohovat do úložiště objektů blob služby Azure Stack Hub.

Další kroky

Používání služeb nebo vytváření aplikací pro Azure Stack Hub