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

Praktický výběr procesoru pro úlohy SQL Server 2014/2016 OLTP

Pravděpodobně to není CPU, které hledáte.

Představte si, že jste právě získali souhlas správy pro nový místní databázový server, který bude provozovat kritickou zátěž OLTP s SQL Server 2014 Enterprise Edition běžícím na Windows Server 2012 R2 Standard Edition. Tento nový server nahradí starší server Dell PowerEdge R910 se systémem SQL Server 2008 R2 Enterprise Edition na Windows Server 2008 R2 Enterprise Edition. Tento stávající server má čtyři 45nm procesory Intel Xeon X7560 Nehalem-EX (což vám dává celkem 32 “fyzických jader v systému) a má 512 GB RAM, což byla prémiová sestava, když byl zakoupen v roce 2010.

V tomto příkladu máte pro upgrade platformy k dispozici poněkud omezený rozpočet na hardwarové a softwarové licence. Chcete přejít na SQL Server 2014 Enterprise Edition na novém serveru s mnohem lepším jednovláknovým výkonem CPU (protože máte zátěž OLTP) a vyšší celkovou kapacitou CPU a přitom minimalizovat náklady na hardware a licence na SQL Server.

Vzhledem k těmto informacím, jak byste postupovali při rozhodování, který model serveru zvolit a jaký konkrétní procesor zvolit? Pustil byste někoho do I.T. oddělení činit tato rozhodnutí, nebo byste se zapojili do procesu hodnocení a rozhodování? Spíše než nechat rozhodnout "Shon the server guy", chci vám ukázat snadnou a praktickou metodu, jak to zjistit, pomocí skóre benchmarku TPC-E, jednoduché aritmetiky a zdravého rozumu.

Prvním krokem je zkontrolovat výsledky benchmarku TPC-E online a vyhledat nejbližší ekvivalentní systém k vašemu stávajícímu systému. Pokud budete mít štěstí, najdete oficiální srovnávací test, který přesně odpovídá vašemu systému. V našem případě jsem našel příspěvek z 10. dubna 2010, který náhodou přesně odpovídá našemu staršímu systému. Tento systém Dell PowerEdge R910 měl skutečné skóre propustnosti TPC-E 1 933,96 se čtyřmi osmijádrovými procesory Intel Xeon X7560. Skutečné skóre propustnosti TPC-E je dobrým měřítkem celkové kapacity CPU systému a poskytuje vám hrubý údaj o tom, kolik souběžných dotazů dokáže zpracovat (za předpokladu, že nemáte úzká místa související s úložištěm nebo pamětí).

Druhým krokem je vzít skutečné skóre propustnosti TPC-E pro tento systém a vydělit ho počtem jader fyzického procesoru v systému, abyste získali představu o výkonu jednovláknového procesoru pro konkrétní procesor v testovaném systému. . Pro tento systém bychom jednoduše vydělili 1 933,96 32 fyzickými jádry, abychom dostali „skóre na jádro“ 60,44. Intel Xeon X7560 má základní takt 2,26 GHz s taktem Turbo 2,66 GHz. Má 24 MB sdílené mezipaměti L3 a rychlost Intel QPI 6,4 GT/s. Quick Path Interconnect (QPI) je propojení typu point-to-point mezi CPU a integrovaným paměťovým řadičem, takže vyšší rychlost QPI znamená rychlejší přístup k paměti.

Třetím krokem je vyhledat výsledky benchmarku TPC-E pro systémy a procesory současné generace a pokusit se najít výsledek pro systém, který je zhruba ekvivalentní typu nového systému, o kterém uvažujete. Bohužel to někdy bude obtížné, protože dodavatelé serverů nepředkládají tolik nových systémů jako dříve a protože vždy předkládají systémy, které používají „vlajkovou loď“, procesor s nejvyšším počtem jader pro danou generaci a rodinu procesorů. Díky tomu je skutečné skóre propustnosti TPC-E vyšší, ale také se výrazně prodražuje licence systému využívajícího tento procesor pro SQL Server kvůli vyššímu počtu jader. Dalším problémem těchto „vlajkových“ modelů procesorů je, že obvykle vyměňují vyšší počet fyzických jader za nižší základní takt, takže nakonec zaplatíte mnohem vyšší licenční náklady a ve skutečnosti získáte nižší výkon jednovláknového CPU.

Obvyklou moudrostí by bylo, že byste chtěli nový čtyřsocketový server, který by nahradil váš stávající čtyřsocketový server. U moderních dvousocketových serverů to již nemusí být nutné, v závislosti na velikosti vaší pracovní zátěže. Bylo období, od začátku roku 2012 do začátku roku 2014, kdy nové dvoupaticové serverové procesory rodiny Xeon E5 byly mnohem rychlejší pro výkon s jedním vláknem než nové čtyřpaticové serverové procesory rodiny Xeon E7. Tato výkonnostní mezera se docela uzavřela, když byla počátkem roku 2014 vydána rodina Xeon E7 v2 Ivy Bridge-EX. Od té doby jsou rodiny E5 a E7 ještě bližší, protože obě používají mikroarchitekturu Haswell.

Vzhledem k této téměř paritě výkonu CPU se váš výběr modelu serveru týká celkové paměti, CPU a kapacity IO. Současné servery se dvěma paticemi jsou prakticky omezeny na 768 GB RAM s 32 GB DIMM, zatímco současné servery se čtyřmi paticemi mohou mít 3 TB RAM s 32 GB DIMM. Většina zákazníků, na které narazím, může pohodlně provozovat svou pracovní zátěž na 768 GB paměti RAM, ale někteří skutečně potřebují více než to. Jak dvousocketové, tak čtyřsocketové servery mohou používat procesory Haswell s 18 fyzickými jádry, takže máte limit na 36 nebo 72 fyzických jader ve vašem systému, v závislosti na počtu vašich soketů.

Pro toto cvičení existuje výsledek benchmarku TPC-E pro dvoupaticový systém Fujitsu Primergy RX2540 M1 se skutečným skóre propustnosti TPC-E 3 772,08 při použití dvou 18jádrových procesorů Intel Xeon E5-2699 v3 Haswell-EP a 512 GB RAM. Procesor Xeon E5-2699 v3 má základní takt 2,3 GHz s taktem Turbo 3,6 GHz. Má 45 MB sdílené mezipaměti L3 a rychlost Intel QPI 9,6 GT/s. U tohoto systému bychom vydělili skutečné skóre 3 772,08 36 fyzickými jádry, abychom dostali „skóre na jádro“ 104,78.

Tento nový dvoupaticový systém by měl téměř dvojnásobnou celkovou kapacitu CPU oproti staršímu systému s přibližně 1,57krát vyšším výkonem s jedním vláknem. Z hlediska kapacity CPU a jednovláknového výkonu bych si byl docela jistý, že tento nový dvoupaticový systém bude dobrou náhradou za starší systém. Tento nový systém by měl také rozšiřující sloty PCIe 3.0, takže bude mít větší celkovou IO kapacitu než starý systém. Bohužel má 36 fyzických jader, která budou vyžadovat licence SQL Server 2014 Enterprise Edition, což bude poměrně drahé.

Lepší volbou procesoru by mohl být Intel Xeon E5-2667 v3, který má osm fyzických jader se základním taktem 3,2 GHz, Turbo taktem 3,6 GHz, 20 MB sdílené mezipaměti L3 a 9,6 GT/s Intel. Rychlost QPI. Pomocí jednoduché aritmetiky můžeme upravit rozdíly mezi Xeon E5-2699 v3 a Xeon E5-2667 v3 (protože oba pocházejí ze stejné generace a rodiny procesorů).

Nejprve se přizpůsobím rozdílu v počtu fyzických jader. Pokud vydělíte 8 18, výsledek je 0,44, takže vynásobíte 3 772,08 krát 0,44, dostaneme výsledek 1 676,48. Dále musíme upravit rozdíl v základní frekvenci mezi těmito dvěma procesory. E5-2667 v3 má o 39 % vyšší základní takt než procesor E5-2699 v3, takže bychom vynásobili 1 676,48 krát 1,39, abychom dostali konečný odhad TPC-E skóre 2330,31. Pokud toto odhadované skóre vydělíme 16 fyzickými jádry, dostaneme výsledek „skóre na jádro“ 145,64.

Takže podle tohoto výpočtu bychom měli stále větší celkovou kapacitu CPU než starší systém a mnohem lepší výkon jednovláknového CPU s nižším počtem jader, "frekvenčně optimalizovaným" procesorem Xeon E5-2667 v3 v novém dvoupaticovém procesoru. Systém. Posledním bonusem z této volby procesoru jsou mnohem nižší licenční náklady na SQL Server 2014, protože bychom potřebovali pouze 16 základních licencí namísto 36 základních licencí, což představuje úsporu přibližně 136 000,00 USD.

Doufejme, že je trochu jasnější, jak můžete provést jednoduchou analýzu, která vám pomůže rozhodnout, jaký přesný procesor byste si měli vybrat pro nový databázový server s ohledem na vaše pracovní vytížení a rozpočtová omezení. Tato analýza je trochu složitější, když musíte porovnávat procesory různých generací a rodin, ale lze použít stejné základní principy. Do tohoto tématu se ponořím hlouběji v budoucím článku.


  1. Připojte SAP IQ k SQL Serveru

  2. Jak funguje Ceiling() v PostgreSQL

  3. Proč žádný výstup, když se dokončí anonymní blok PLSQL?

  4. org.postgresql.util.PSQLException:Velké objekty nelze použít v režimu automatického potvrzení