sql >> Databáze >  >> RDS >> Sqlserver

Spuštění SQL Serveru 2014 na virtuálním počítači Azure

Microsoft stále více usnadňuje provozování SQL Serveru 2014 na virtuálním počítači Azure v jednom ze sedmnácti datových center Azure společnosti Microsoft. Můžete spustit předkonfigurovaný virtuální počítač s předkonfigurovanou instancí SQL Server 2014 z Azure Gallery na libovolné velikosti virtuálního počítače Azure podle vlastního výběru. Jednou z možností z galerie je „SQL Server 2014 Enterprise Optimized for Transaction Workloads“ běžící na Windows Server 2012 R2. Jedna pěkná věc na použití předkonfigurovaného obrázku galerie je, že nemusíte platit za žádné licence SQL Server 2014. Jednoduše zaplatíte hodinové náklady za edici SQL Server a velikost virtuálního počítače, kterou si vyberete.

Možnosti konfigurace serveru SQL Server 2014

Microsoft vysvětluje, že "Tento obrázek Enterprise Edition je optimalizován pro pracovní zátěže OLTP a je určen pro velikosti virtuálních počítačů včetně A4, A7, A8 a A9. Po nasazení je virtuální počítač dodáván s předkonfigurovanými prostory úložiště Windows." Microsoft také provádí některé konfigurační práce na úrovni instance na SQL Server 2014, i když nejdou dostatečně daleko s tím, co bych považoval za standardní osvědčené postupy.

Vytvářejí osm datových souborů tempdb, které mají všechny velikost 25 600 MB, s přírůstkem automatického růstu 1 024 MB, což je dobrá výchozí volba. Povolují také TF1117 a TF1118 jako příznaky trasování při spuštění, což jsou také dobré volby pro SQL Server. Microsoft konečně také umožňuje okamžitou inicializaci souborů a zamykání stránek v paměti v operačním systému, s čímž také souhlasím.

Upřednostnil bych, aby Microsoft také provedl nějaké změny v těchto možnostech konfigurace na úrovni instance:

  1. výchozí komprese zálohy
  2. práh nákladů pro paralelismus
  3. maximální stupeň paralelismu
  4. maximální paměť serveru (MB)
  5. optimalizovat pro ad hoc zátěž

Ve většině případů by komprese zálohy měla být ve výchozím nastavení povolena. Prahová hodnota nákladů pro paralelismus by měla být často zvýšena na vyšší hodnotu, než je výchozí hodnota 5, v závislosti na vaší pracovní zátěži. Maximální stupeň paralelismu by se měl obvykle změnit na jinou než výchozí hodnotu na základě počtu jader v uzlu NUMA. Toto nastavení také závisí na vaší pracovní zátěži. Maximální paměť serveru by měla být nastavena na jinou než výchozí hodnotu na základě množství paměti RAM ve virtuálním počítači a toho, co na virtuálním počítači používáte (kromě databázového stroje SQL Server). Nakonec si myslím, že optimalizace pro ad hoc zátěž by měla být povolena, v podstatě ve všech případech.

Na obranu společnosti Microsoft by bylo obtížné provést uspokojivou volbu konfigurace pro některé z těchto položek bez znalosti (předem) podrobností o velikosti vašeho virtuálního počítače a očekávané zátěži databázového serveru. To ponechává úkol na vás, stejně jako u místní instance SQL Server.

Dimenzování virtuálního počítače Azure

I když si můžete vybrat cokoli od počítače A0 Basic až po A9 Standard, společnost Microsoft doporučuje, abyste si pro produkční použití vybrali buď virtuální počítač velikosti A4 Standard, A7 Standard, A8 Standard nebo A9 Standard. Podrobnosti o cenách pro virtuální stroje SQL Server jsou uvedeny zde.

Při pohledu na srovnávací specifikace pro tato doporučení v tabulce 1 je těžké pochopit, proč byste si měli vybrat stroj A4 Standard, protože stojí stejnou částku za hodinu jako větší stroje A7 nebo A8 Standard. Při pohledu na online dokumentaci není zpočátku příliš jasné, jaký je skutečný rozdíl mezi strojem A7 a A8 Standard. Když se podíváme trochu hlouběji, počítač A8 Standard je považován za Compute Intensive instance, která má používat rychlejší 2,6 GHz procesor Intel Xeon E5-2670 spolu se dvěma síťovými adaptéry (jeden 10 Gbps a jeden 32 Gbps schopný RDMA).

Virtuální stroj A7 Standard používá poněkud pomalejší 2,2 GHz procesor Intel Xeon E5-2660, zatímco síťová konektivita se zdá být standardní 1Gbps Ethernet. I když to zní jako významný rozdíl ve výkonu procesoru a sítě, ve skutečnosti to není hlavní problém s virtuálními stroji řady A pro použití SQL Server.

Velikost virtuálního počítače Standardní sazba SQL SQL Enterprise Rate Core Count Množství RAM
Standardní formát A4 0,80 $/h 3,00 $/h 8 14 GB
Standard A7 0,80 $/h 3,00 $/h 8 56 GB
Standard A8 0,80 $/h 3,00 $/h 8 56 GB
Standard A9 1,60 $/h 6,00 $/h 16 112 GB

Tabulka 1:Informace o virtuálním počítači serveru SQL Server řady A

Hlavním problémem všech virtuálních strojů řady A je dost mizerný výkon I/O subsystému, přestože Microsoft předkonfiguroval diskový subsystém pomocí Windows Storage Spaces, aby dosáhl co nejlepšího výkonu vzhledem k inherentním omezením výkonu A- série virtuálních strojů a hostitelů. Obrázek 1 ukazuje výsledky CrystalDiskMark pro jednotku E:z počítače A4 Standard z východoamerického datového centra Azure, který je určen pro soubory protokolu transakcí.

Obrázek 1:Standardní výsledky CrystalDiskMark A4

Mnohem lepší alternativou pro SQL Server jsou virtuální stroje D-series. Tyto virtuální stroje stojí za hodinu stejně jako srovnatelně velké virtuální stroje řady A a mají místní úložiště SSD, které by se mělo používat pouze pro soubory tempdb a/nebo pro soubory rozšíření fondu vyrovnávací paměti (BPE), protože nejsou trvalé. Některé relevantní specifikace pro virtuální stroje D-series jsou uvedeny v tabulce 2.

Velikost virtuálního počítače Standardní sazba SQL SQL Enterprise Rate Core Count Množství RAM
Standard D4 0,80 $/h 3,00 $/h 8 28 GB
Standard D13 0,80 $/h 3,00 $/h 8 56 GB
Standard D14 1,60 $/h 6,00 $/h 16 112 GB

Tabulka 2:Informace o virtuálním počítači serveru SQL Server D-Series

Stroj D4 Standard stojí stejně jako stroj A4 Standard, ale má dvojnásobnou RAM a nějaké místní úložiště SSD. Stroj D13 Standard stojí stejně jako stroj A7 nebo A8 Standard, ale s výhodou místního úložiště SDD. Stroj D14 Standard stojí stejně jako stroj A9 Standard, ale má také výhodu místního úložiště SSD. Vzhledem k těmto informacím nedává smysl používat virtuální stroj řady A pro SQL Server.

Bohužel, trvalé jednotky pro data a soubory protokolu vašeho serveru SQL Server mají také dost podprůměrný I/O výkon v CrystalDiskMark, jak je znázorněno na obrázcích 2 a 3.

Obrázek 2:Standardní výsledky CrystalDiskMark D14 Obrázek 3:Standardní výsledky CrystalDiskMark D14

Místní výkon SSD souvisí s velikostí virtuálního počítače Azure, přičemž větší velikosti zlepšují místní výkon SSD. Výsledky výkonu CrystalDiskMark pro počítač D14 Standard ve východoamerickém datovém centru Azure jsou zobrazeny na obrázku 4.

Obrázek 4:Standardní výsledky CrystalDiskMark D14 pro místní úložiště SSD

Jednotka F:(pro datové soubory SQL Server) má o něco lepší výsledky než jednotka E:, ale obě jednotky mají velmi nízkou úroveň výkonu pro SQL Server.

Závěr

Zdá se docela jasné, že stroje D-series jsou pro použití SQL Server lepší než stroje A-series. Dává také smysl věnovat velkou pozornost velikosti a ceně virtuálního stroje, který se rozhodnete poskytnout pro SQL Server, protože můžete získat více paměti RAM za stejné hodinové náklady. Dvě nejlepší možnosti z hlediska výkonu jsou virtuální stroje D13 nebo D14 Standard.

Předkonfigurované instance SQL Server 2014 z Azure Gallery vám mohou ušetřit spoustu peněz na nákladech na licencování SQL Serveru a většinu potřebné konfigurační práce mají již hotovou v základní bitové kopii. Stále byste měli jít dovnitř a provést několik konečných změn konfigurace na základě vašich preferencí a pracovního vytížení. Nakonec byste si měli udělat čas na spuštění některých výkonnostních testů na vašem virtuálním počítači, abyste pochopili úroveň výkonu, kterou může poskytnout.


  1. Snížení nákladů na hostování databáze:DigitalOcean vs. AWS vs. Azure

  2. Dokončení SQL. Příběhy úspěchu a neúspěchu

  3. převést formát geometrie Postgres na WKT

  4. Jak vypočítat marži v MySQL