Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Избор на процесор за SQL Server 2012

Тъй като Microsoft преработи модела на лицензиране за SQL Server 2012, е особено важно да направите внимателен анализ, преди да решите точно кой процесор да използвате за сървър на база данни, който ще работи със SQL Server 2012. Преминаването към базирано на ядро ​​лицензиране за SQL Server 2012 Enterprise Edition означава, че едно невнимателно решение относно точно какъв процесор ще работите може да струва както много пари, така и голяма производителност и мащабируемост. Същият проблем съществува (в по-малка степен) със SQL Server 2012 Standard Edition.

Разликата в разходите за лицензиране на SQL Server 2012 между добър избор на процесор и лош избор на процесор може да плати повече от вашия хардуер и вашата подсистема за съхранение в много случаи. Като се има предвид това, как ще направите оптимален избор на процесор за SQL Server 2012 Enterprise Edition? Обикновено първата стъпка би била да решите дали искате да използвате процесор Intel Xeon или процесор AMD Opteron (SQL Server 2012 не поддържа семейството процесори Intel Itanium).

За съжаление е много трудно да се направи добър технически или бизнес случай, за да се избере процесор AMD Opteron за използване със SQL Server 2012 Enterprise Edition. От въвеждането на архитектурата Intel Nehalem (серии Intel Xeon 3500, 5500, 6500 и 7500) през 2008-2010 г., AMD просто не е в състояние да се конкурира с Intel, когато става въпрос за производителност на еднонишков процесор. AMD няма финансови или технически ресурси, за да се конкурира с Intel по отношение на производителност или енергийна ефективност. С всяко ново издание на семейство процесори от Intel, AMD изостава още повече. Това не е добро за И.Т. индустрия, тъй като липсата на жизнеспособна конкуренция от AMD неизбежно ще забави темпото на иновациите от Intel.

Тъй като процесорът Intel Xeon изглежда е единственият жизнеспособен избор за SQL Server 2012, следващата стъпка е да решите кое от многото налични семейства и модели Xeon би било най-добрият избор за планираното работно натоварване на SQL Server 2012. Intel има различни семейства продукти Xeon за различни сървъри с брой гнезда. За работни станции и сървъри с един сокет те имат семейството Intel Xeon E3. За работни станции и сървъри с два сокета те имат семейството Intel Xeon E5. И накрая, за сървъри с два, четири и осем сокета (или повече) те имат семейството Intel Xeon E7.

Тъй като в тази статия се обсъжда SQL Server 2012 Enterprise Edition, ние ще пренебрегнем семейството Intel Xeon E3 с един сокет, тъй като процесорите Intel Xeon E3 са ограничени до използването на 32 GB DDR3 RAM. Има някои нишови сценарии, при които може да има много смисъл да се използва процесор Intel Xeon E3-1290V2 в сървър с един сокет с 32 GB RAM в комбинация със SQL Server 2012 Enterprise Edition. Може би имате сравнително малка база данни, където се нуждаете от абсолютната най-бърза еднонишкова производителност и също така се нуждаете от специфични функции на Enterprise Edition, като SQL Server AlwaysOn Availability Groups.

По-често срещаният избор е между сървър с два сокета и сървър с четири (или повече) сокет. Ще трябва да прецените размера и интензивността на вашето работно натоварване и да решите дали може да работи на по-малък, но по-бърз сървър с два сокета, или ще трябва да преминете към по-голям, по-бавен сървър с четири или по-голямо гнездо. Това решение се влияе пряко от необходимия ви общ капацитет на процесора, общия физически капацитет на RAM паметта и общия ви необходим входно/изходен капацитет (който е свързан с броя и вида на PCI-E слотове за разширение в сървъра).

Едно често срещано погрешно схващане е, че по-големите сървъри, базирани на Intel (по отношение на броя на сокетите) са по-бързи сървъри. Това просто не е вярно по редица причини. Обемът на продажбите и пазарният дял на сървърите с два гнезда са много по-високи, отколкото при сървърите с четири гнезда и по-големите. Освен това се изисква по-малко инженеринг и работа по валидиране за процесори Intel с възможност за два сокета в сравнение с процесори Intel с възможност за четири сокета. Поради тези фактори Intel пуска нови процесорни архитектури по-често и по-рано за сървъри с по-нисък брой гнезда. Понастоящем фамилията E3 с един цокъл на Intel използва 22nm Ivy Bridge, а семейството E5 с два сокета използва 32nm Sandy Bridge-EP, докато семейството E7 използва по-старата 32nm микроархитектура Westmere-EX.

Друга причина е, че не получавате линейно мащабиране, докато увеличавате броя на вашите сокети, дори и с процесори с архитектура с неравномерен достъп до памет (NUMA), които мащабират много по-добре от по-старата симетрична многопроцесорна (SMP) архитектура. Това означава, че сървър с четири гнезда няма да има два пъти по-висока производителност или капацитет на процесора от сървър с два сокета със същия модел процесор.

Това може да се потвърди чрез сравняване на резултатите от сравнителния тест TPC-E OLTP на системи с два сокета с процесори Intel Xeon E7-2870 към системи с четири гнезда с процесори Intel Xeon E7-4870 до системи с осем гнезда с процесори Intel Xeon E7-8870. Въпреки че по същество това са един и същи процесор със същите индивидуални характеристики на производителност, резултатът от сравнителния тест на TPC-E не се удвоява, когато удвоите броя на сокетите, както можете да видите в таблица 1.

Процесор Брой на сокетите TPC-E резултат Общ брой ядра TPC-E резултат/ядро
Xeon E7-2870

2

1560,70

20

78,04
Xeon E7-4870

4

2862,61

40

71,57
Xeon E7-8870

8

4614,22

80

57,68

Таблица 1:Сравнение на резултатите на TPC-E с увеличаване на броя на сокетите

Когато си мисля за сравнение на процесори с един и два цокъла, с четири и осем гнезда, обичам да използвам аналогия за автомобили и камиони. Сървърът с един гнездо е като състезателна кола от Формула-1, тъй като е изключително бърз, но има много малък товарен капацитет. Сървърът с два сокета е като Tesla Model S, тъй като е много бърз и има доста приличен товарен капацитет. Сървърът с четири гнезда е като голям SUV, който е по-бавен, но има по-голям товарен капацитет от Tesla Model S. И накрая, сървърът с осем гнезда е като камион Mack, способен да тегли огромен товар с много по-бавна скорост от джип.

Процесор Брой на сокетите TPC-E резултат Общ брой ядра TPC-E резултат/ядро
Xeon E5-2690

2

1881,76

16

117,61
Xeon E5-4650

4

2651,27

32

82,85

Таблица 2:Сравнение на TPC-E резултати за два модела процесор Xeon E5

Сравнявайки таблица 1 с таблица 2, можем да видим, че семейството Intel Xeon E5 се справя доста по-добре с TPC-E от семейството на Intel Xeon E7, което не е изненада, тъй като сравняваме по-новия Sandy Bridge-EP с по-стара микроархитектура Westmere-EX. От гледна точка на производителността, Xeon E5-2690 с два гнезда се справя много по-добре от Xeon E7-2870 с два гнезда. Според мен наистина не трябва да използвате Xeon E7-2870 с два сокета за SQL Server 2012 поради по-ниската му еднонишкова производителност и по-висок брой физически ядра (което означава по-висока цена за лицензиране на SQL Server 2012).

В момента любимият ми сървърен процесор на Intel е Intel Xeon E5-2690. Той ще ви даде отлична еднонишкова производителност и относително достъпни разходи за лицензиране на SQL Server 2012. Ако трябва да преминете към сървър с четири гнезда, тогава бих избрал процесор Intel Xeon E5-4650, вместо да използвам процесор Intel Xeon E7-4870, тъй като ще получите по-добра еднонишкова производителност и по-нисък лиценз за SQL Server 2012 разходи. Използването на резултатите от сравнителния тест на TPC-E е отличен начин за сравняване на производителността и ефективността на лиценза на SQL Server 2012 на различни семейства процесори.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Свързване на SQL Server към PostgreSQL

  2. Как програмно да създадете ODBC свързана таблица към изглед на SQL сървър и да може да бъде редактирана?

  3. SQL Server ЗА JSON AUTO Примери (T-SQL)

  4. 4 типа данни, които да бъдат оттеглени в SQL Server

  5. Нови промени в колони само за метаданни в SQL Server 2016