Database
 sql >> Baza danych >  >> RDS >> Database

Procesory AMD EPYC w maszynach wirtualnych Azure

Już 5 grudnia 2017 r. Microsoft ogłosił, że używa procesorów AMD EPYC 7551 w swoich maszynach wirtualnych z serii Lv2 zoptymalizowanych pod kątem pamięci masowej. Od tego czasu Microsoft zmienił nazewnictwo tej serii na Lsv2. Te maszyny wirtualne nie są dostępne we wszystkich regionach, dlatego warto sprawdzić dostępność w regionie platformy Azure, którego chcesz użyć. Jako przykład podano tutaj szczegóły cen dla regionu Wschodnie stany USA. Te procesory AMD EPYC mają wiele zalet w przypadku obciążeń SQL Server, co wyjaśnię w tym artykule.

Szczegóły AMD EPYC 7551

Ten 14-nanometrowy procesor AMD EPYC 7551 pierwszej generacji ma 32 rdzenie i 64 wątki i działa w serwerach jedno- lub dwuprocesorowych. Ten procesor ma bazową częstotliwość taktowania 2,0 GHz, z prędkością boost dla wszystkich rdzeni 2,55 GHz i maksymalną częstotliwością taktowania boost wynoszącą 3,0 GHz. Rozmiar pamięci podręcznej L3 to 64 MB.

Podobnie jak wszystkie procesory AMD EPYC z serii 7000, ta konkretna jednostka SKU obsługuje 128 linii PCIe 3.0 do połączeń we/wy. Posiada również osiem kanałów pamięci obsługujących pamięć DDR4-2666, które mają szczytową przepustowość pamięci wynoszącą 341 GB/sw serwerze dwuprocesorowym. Dzięki temu procesorowi możesz mieć 2 TB pamięci RAM na gniazdo z modułami DIMM 64 GB. Ponieważ 128 GB pamięci DIMM DDR4 stają się coraz szerzej dostępne, całkowita pojemność podwoi się.

Procesor AMD EPYC 7551 ma nieco niższą wydajność procesora jednowątkowego w porównaniu ze starszymi procesorami Intel Xeon E5-2673 v4 2,3 GHz (Broadwell) i Intel Xeon E5-2673 v3 2,4 GHz (Haswell), których firma Microsoft używa w wielu swoich Seria maszyn wirtualnych platformy Azure. Oba te procesory Intel to specjalne modele na zamówienie, których nie ma w bazie danych Intel ARK. W tym artykule pisałem o użyciu CPU-Z do testowania procesora Intel Xeon E5-2673 v3 w maszynie wirtualnej platformy Azure.

Starsza seria Intel Xeon E5-26xx v3 (Haswell), która została wprowadzona w trzecim kwartale 2014 r., miała maksymalną przepustowość pamięci 2133 MHz. Nieco nowsza seria Intel Xeon E5-26xx v4 (Broadwell), która została wprowadzona w pierwszym kwartale 2016 r., zwiększyła tę liczbę do 2400 MHz. Obie te rodziny procesorów mają tylko cztery kanały pamięci o maksymalnej pojemności 768 GB na gniazdo z modułami DIMM DDR4 32 GB. Mają też tylko 40 linii PCIe 3.0 na procesor.

Wniosek z tego wszystkiego jest taki, że ten procesor AMD EPYC 7551 ma wystarczająco dobrą wydajność jednowątkowego procesora, a także lepszą wydajność pamięci, gęstość pamięci i całkowitą pojemność we/wy w porównaniu z tymi dwoma procesorami Intel. To sprawia, że ​​jest to dobry wybór dla wielu obciążeń SQL Server, zwłaszcza obciążeń DW.

Rysunek 1:Wyniki testu porównawczego CPU-Z dla LS16v2

Oczywiście, gdybym teraz kupował serwer oparty na AMD do lokalnego użytku SQL Server, spróbowałbym uzyskać nowszy, zoptymalizowany pod kątem częstotliwości procesor AMD EPYC 7371. Procesor AMD EPYC 7371 ma 32 rdzenie i 64 wątki i działa w serwerach jedno- lub dwuprocesorowych. Ten procesor ma bazową częstotliwość taktowania 3,1 GHz, z przyspieszeniem wszystkich rdzeni do 3,6 GHz i maksymalnym taktowaniem doładowania wynoszącym 3,8 GHz. Rozmiar pamięci podręcznej L3 to 64 MB. ServeTheHome napisał o tym, jak „niesamowitą wartością” jest tutaj ten procesor.

Szczegóły Azure Lsv2

Te instancje Azure VM Lsv2 korzystają z dwuprocesorowych serwerów Microsoft Project Olympus Open Compute Platform (OCP) wraz ze standardowymi procesorami AMD EPYC 7551.

Rysunek 2:Microsoft Project Olympus

Kluczowe specyfikacje maszyn wirtualnych z serii Lsv2 przedstawiono w Tabeli 1. Obejmują one lokalną pamięć masową NVMe o niskim opóźnieniu, która może bezpośrednio wykorzystywać 128 linii PCIe 3.0 na gniazdo, które są dostępne w maszynie hosta z procesorem AMD EPYC 7551.

Rozmiar maszyny wirtualnej procesory wirtualne Pamięć (GiB) Lokalny dysk SSD
L8s v2 8 64 1 dysk SSD NVMe 1,9 TB
L16s v2 16 128 2 dyski SSD NVMe 1,9 TB
L32s v2 32 256 4 dyski SSD NVMe 1,9 TB
L64s v2 64 512 8 dysków SSD NVMe o pojemności 1,9 TB
L80s v2 80 640 10 dysków SSD NVMe 1,9 TB

Tabela 1:Specyfikacje maszyn wirtualnych Azure serii Lsv2

Ulepszenia dysku zarządzanego Azure VM

Azure Managed Disks to zasadniczo dyski logiczne, które w rzeczywistości są wirtualnymi dyskami twardymi (VHD), których można używać z dowolną maszyną wirtualną platformy Azure, niezależnie od rozmiaru maszyny wirtualnej. Firma Microsoft obsługuje zarządzanie kontem magazynu podczas korzystania z usługi Azure Managed Disks. Daje to możliwość zwiększenia pojemności i wydajności pamięci masowej bez konieczności uaktualniania do większej maszyny wirtualnej platformy Azure.

25 marca 2019 r. firma Microsoft ogłosiła dostępność dysków zarządzanych o większej wydajności i większej pojemności dla maszyn wirtualnych platformy Azure. Dzięki tym nowym ofertom maksymalny rozmiar pojedynczego dysku zarządzanego wzrasta do 32 TB. Wcześniej ograniczałeś rozmiar jednego dysku zarządzanego do 4 TB. Możesz wybierać spośród dysków zarządzanych HDD w warstwie Standardowa, dysków SSD w warstwie Standardowa i dysków SSD w warstwie Premium (dyski zarządzane Ultra Disk 64 TB są w stanie podglądu).

Dzięki zarządzanym dyskom SSD w warstwie Premium wydajność wzrasta z 7500 IOPS do 20 000 IOPS oraz z 250 MB/s do 900 MB/s w celu uzyskania wydajności sekwencyjnej. Ten poziom wydajności dość dobrze wypada w porównaniu z wieloma typowymi systemami lokalnymi, chociaż nadal dość łatwo jest uzyskać znacznie wyższą wydajność pamięci masowej dzięki starannie zaprojektowanemu podsystemowi pamięci masowej w siedzibie. Z drugiej strony, wydajność procesora i pamięci masowej Azure VM przeszła długą drogę, odkąd pisałem o tym w 2014 roku!

Wpływ na serwer SQL

Te zmiany mają duże znaczenie dla użycia programu SQL Server na maszynach wirtualnych platformy Azure. Historycznie słabością maszyn wirtualnych platformy Azure z perspektywy programu SQL Server była stosunkowo niska wydajność magazynu, którą można było osiągnąć, zwłaszcza w przypadku mniejszych rozmiarów maszyn wirtualnych. Zadania programu SQL Server, które wymagały dobrej wydajności sekwencyjnego we/wy, były często trudne na maszynach wirtualnych platformy Azure. Widziałem również wielu klientów, którzy byli praktycznie zmuszeni do korzystania z funkcji opóźnionej trwałości w niektórych bazach danych, aby uniknąć długich czasów oczekiwania na LOGWRITE.

Innym problemem było to, że wiele opcji z serii maszyn wirtualnych platformy Azure nie było odpowiednio zbilansowanych pod kątem użycia programu SQL Server, ponieważ zmuszały one do posiadania bardzo dużej liczby rdzeni w celu uzyskania dużej pojemności pamięci w maszynie wirtualnej. To spowodowało wzrost zarówno kosztów licencjonowania programu SQL Server, jak i godzinowych kosztów maszyny wirtualnej platformy Azure.

Wniosek

Korzystanie z nowoczesnego procesora AMD EPYC w serii maszyn wirtualnych Azure Lsv2 zoptymalizowanych pod kątem przechowywania zapewnia wydajną, zrównoważoną platformę do użycia w programie SQL Server. Rozumiem przez zrównoważoną platformę z programu Microsoft Data Warehouse Fast Track, w którym system można było zaprojektować i skonfigurować tak, aby dane przepływały z podsystemu pamięci do podsystemu pamięci, aby były zużywane przez rdzenie procesorów, gdzie nie było zbędnych wąskich gardeł w systemie.

W tym przypadku masz dobrą wydajność jednowątkowego procesora w połączeniu z wysoką przepustowością pamięci i bardzo wysoką przepustowością pamięci masowej. Posiadanie wielu lokalnych dysków SSD NVMe o niskim opóźnieniu podłączonych do tych linii PCIe zapewnia doskonałą wydajność pamięci masowej. Możesz także dodać dodatkową pojemność magazynu o wysokiej wydajności dzięki nowo ulepszonym usługom Azure Managed Disks z dyskami SSD w warstwie Premium, co zapewni dodatkową elastyczność w zakresie pojemności i wydajności magazynu.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 10 najlepszych startupów w chmurze – 2018

  2. Jak znaleźć zduplikowane wiersze w SQL?

  3. Model danych zarządzania zdarzeniami

  4. Jak połączyć wyniki dwóch zapytań w SQL?

  5. Niespodzianki dotyczące wydajności i założenia:STRING_SPLIT()