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

Azure Virtual Machines pro použití SQL Server

Jedním počátečním a snadným krokem k přesunu vašich místních úloh SQL Serveru do cloudu je použití virtuálních počítačů Azure ke spouštění úloh SQL Serveru ve scénáři infrastruktury jako služba (IaaS). To odstraňuje břemeno nákupu a údržby vašeho hardwaru, úložiště a síťové infrastruktury, přičemž vám stále poskytuje velmi dobře známou zkušenost s Windows a samotným SQL Serverem.

Stále budete muset udržovat svůj operační systém, SQL Server a databáze stejně jako v místním scénáři. Výměnou za to budou vaše databáze a aplikace fungovat stejně jako v místní instalaci, takže je to snadný způsob, jak začít používat Azure.

Jednou důležitou volbou, kterou budete muset ještě udělat, je, jaký typ a velikost virtuálního počítače Azure chcete použít pro svou stávající zátěž SQL Server. Na rozdíl od místního scénáře budete mít mnohem menší kontrolu nad skutečným výběrem procesoru v základním hostitelském počítači. S virtuálním počítačem Azure si vyberete konkrétní řadu počítačů (jako je řada Esv3) a velikost v konkrétní oblasti Azure a pak získáte jakýkoli procesor, který Microsoft pro tuto řadu a velikost v dané oblasti Azure používá.

Typy a řady virtuálních počítačů Azure

Microsoft má v současnosti osm hlavních typů virtuálních strojů navržených pro různé typy zátěže. Patří mezi ně základní úroveň, obecný účel, optimalizováno pro výpočet, optimalizováno pro paměť, optimalizováno úložiště, GPU, vysoce výkonný výpočet a důvěrná zabezpečená enkláva.

Pro vysoce výkonné úlohy OLTP SQL Server je obvykle nejlepší volbou typ virtuálních počítačů Azure s optimalizovanou pamětí. Podle společnosti Microsoft „Velikost virtuálních počítačů s optimalizovanou pamětí nabízí vysoký poměr paměti k CPU, což je skvělé pro relační databázové servery.“ Díky tomu získáte nižší počet jader a více paměti, což je obvykle to, co chcete pro SQL Server, abyste minimalizovali náklady na licence a stále měli dobrý výkon.

Můžete jít ještě dále po této cestě s omezenými velikostmi virtuálních počítačů s podporou vCPU, kde můžete omezit počet virtuálních počítačů vCPU (na jednu polovinu nebo jednu čtvrtinu původní velikosti virtuálního počítače), abyste snížili náklady na licencování SQL Server při zachování stejné paměti. , úložiště a šířku pásma I/O jako neomezený virtuální počítač. Tyto omezené virtuální počítače Azure mají v názvu příponu, která označuje počet aktivních virtuálních počítačů vCPU ve virtuálním počítači.

Například:běžný Standard_E64s_v3 by měl 64 jader vCPU, zatímco omezený Standard_E64-16s_v3 by měl pouze 16 jader vCPU s jinak stejnými specifikacemi. Přípona -16s označuje počet aktivních jader vCPU.

Série Esv3

Tato řada používá 2,1 GHz procesor Intel Xeon Platinum 8171M (Skylake-SP), což je speciální zakázková SKU procesoru, která není ve veřejné databázi Intel ARK. Zdá se, že má stejné specifikace jako procesor 26C/52T 2,1 GHz Intel Xeon Platinum 8170M (Skylake-SP). Přípona M v čísle modelu znamená, že podporuje 1,5 TB paměti RAM na patici namísto 768 GB RAM na patici. Řada Esv3 má hodnocení 160–190 Azure Compute Units (ACU).

Poznámka:V některých oblastech Microsoft používá starší procesor Intel Xeon E5-2673 v4 (Broadwell) na míru v řadě Esv3. Microsoft Mine Tokus má dobrý článek, kde provedla řadu zmenšených benchmarků TPC-E proti virtuálnímu počítači E64s_v3, který používal starší procesor Broadwell.

Řada Esv3 začíná Standard_E2s_v3 se 2 vCPU a 16 GB RAM a vrcholí na Standard_E64is_v3 s 64 vCPU a 432 GB RAM. Mezi těmito extrémy jsou také velké rozdíly ve skladovací kapacitě a propustnosti. BTW, „i“ v pojmenování Standard_E64is_v3 znamená, že instance je izolovaná od hardwaru vyhrazeného pro jednoho zákazníka. Většina běžných velikostí řady Esv3 je k dispozici také jako omezené virtuální počítače, což vám poskytuje velkou flexibilitu při dimenzování.

Pokud pozorně porovnáte obrázky 1 a 2, uvidíte mnohem příznivější sadu možností pro počty vCPU, množství RAM a maximální propustnost disku bez mezipaměti s omezenými možnostmi VM na obrázku 2.

Obrázek 1:Běžné specifikace řady Esv3 (kliknutím zvětšíte)

Zejména se mi líbí velikosti Standard_E16-4s_v3, Standard_E32-8s_v3, Standard_E48-12s_v3 a Standard_E64-16s_v3 pro SQL Server, protože mají extrémně příjemnou kombinaci relativně nízkého počtu jader, vysoké kapacity paměti a vysoké propustnosti disku ve srovnání s další dostupné možnosti v této sérii.

To vše jsou omezené nabídky, které využívají pouze jednu čtvrtinu dostupných jader vCPU běžné nabídky. Všechny ostatní možnosti na obrázku 2 využívají polovinu dostupných jader vCPU běžné nabídky se stejnými limity propustnosti paměti a disku, což by zdvojnásobilo vaše licenční náklady s nižší propustností RAM a disku, než byste jinak mohli získat s lepší volbou. .

Obrázek 2:Specifikace řady Esv3 (kliknutím zvětšíte)

Porovnejte například tři možné možnosti virtuálních počítačů zobrazené na obrázku 3. Chytrým výběrem z omezených možností při konkrétním počtu vCPU můžete získat mezi 2x a 4x propustnost paměti a disku za stejné licenční náklady na SQL Server.

Mějte na paměti, že výpočetní náklady, které zahrnují licencování OS, zůstávají stejné jako původní velikost vCPU, ze které byla omezená velikost odvozena.

Obrázek 3:Srovnávací specifikace vCPU Esv3-series 8 (kliknutím zvětšíte)

Série Esv4

Další volbou, která se dobře hodí pro pracovní zátěže OLTP i DW, je řada Esv4. Tyto virtuální počítače používají novější procesor 7nm 2,35 GHz AMD EPYC 7452 (Řím). Tento procesor má 32C/64T, základní takt 2,35 GHz, maximální takt až 3,35 GHz, 128 MB mezipaměti L3, 128 linek PCIe 4.0 a kapacitu paměti RAM 2 TB. Virtuální počítače Azure v této řadě začínají na Standard_E2as_v4 se 2 vCPU a 16 GB RAM a vrcholí na Standard_E96as_v4 s 96 vCPU a 672 GB RAM. Řada Esv4 má hodnocení 230–260 Azure Compute Units (ACU).

Procesor AMD EPYC 7452 je ve skutečnosti výrazně rychlejší pro výkon jednovláknového CPU než procesor Intel Xeon Platinum 8171M podle mých odhadovaných výpočtů skóre TPC-E. AMD EPYC 7452 má odhadované skóre TPC-E/jádro 67,64, zatímco Intel Xeon Platinum 8171M má odhadované skóre TPC-E/jádro 49,55. Domnívám se, že je to kvůli vyššímu IPC a vyššímu základnímu taktu procesoru AMD.

Obrázek 4 ukazuje příslušné specifikace pro většinu velikostí virtuálních počítačů řady Esv4. Z toho, co mohu říci, Microsoft zatím nenabízí omezené verze virtuálních počítačů řady Esv4. Doufejme, že to v budoucnu udělají.

Obrázek 4:Vybrané specifikace řady Esv4 (kliknutím zvětšíte)

Závěr

Když používáte virtuální počítače Azure pro úlohy SQL Server, měli byste strávit nějaký čas vyhodnocením různých řad a velikostí virtuálních počítačů Azure, které jsou dostupné ve vaší preferované oblasti. Microsoft používá různé zakázkové procesory v různých řadách virtuálních počítačů a někdy v rámci stejné řady virtuálních počítačů. Provedení tohoto druhu analýzy vašich dostupných možností pro řadu virtuálních počítačů a dimenzování by mělo být jedním z vašich počátečních úkolů. Pokud je to možné, zkuste využít omezené nabídky, které Microsoft nabízí, protože nabízejí vynikající hodnotu pro SQL Server.

Poté, co jste vybrali řadu a velikost virtuálního počítače, provedl bych několik rychlých testů CPU a úložiště, jako je CPU-Z, Geekbench 5 a CrystalDiskMark 7 jako počáteční kontrolu zdravého rozumu (ještě předtím, než nainstalujete SQL Server). To vám umožní porovnat vaše virtuální počítače Azure mezi sebou a se starším místním hardwarem a úložištěm. Tim Radney má skvělý článek o tomto procesu (pro ukládání).


  1. Správa vysoké dostupnosti v PostgreSQL – Část III:Patroni

  2. Jak rozdělím výstup z mysqldump na menší soubory?

  3. Nejúčinnější způsob, jak v SQL Server získat datum z data a času?

  4. Nelze vrátit výsledky z uložené procedury pomocí kurzoru Pythonu