Database
 sql >> Datenbank >  >> RDS >> Database

Vergleich der Leistung von Windows Azure-VMs, Teil 2

Anfang dieses Jahres habe ich über den Vergleich der Leistung von Windows Azure-VMs geschrieben, wobei Geekbench 3.1.5 im 32-Bit-Testmodus verwendet wurde, um die Prozessor- und Speicherleistung einer Reihe von Windows Azure-VMs unterschiedlicher Größe zu messen. Diese reichten von einer einfachen A0-VM bis hin zu einer Standard-A7-VM, der damals größten verfügbaren VM. Diese Maschinen befanden sich alle im US-Ost-Azure-Rechenzentrum, und sie alle verwendeten zufällig die ältere Azure Gen 2-Hosthardware, die über den alten und relativ langsamen AMD Opteron 4171 HE-Prozessor verfügt.

Folglich waren die Geekbench-Ergebnisse für diese Maschinen ziemlich niedrig, sowohl für die Single-Core- als auch für die Multi-Core-Ergebnisse, wie Sie in Tabelle 1 sehen können.

VM-Größe CPU-Kerne Erinnerung Monatliche Kosten Single-Core-Bewertung Multi-Core-Score
Basis A0 1 (geteilt) 768 MB 14 $ 507 498
Basis A1 1 1,75 GB $56 679 670
Basis A2 2 3,5 GB 111 $ 709 1.358
Basis A3 4 7 GB 221 $ 717 2.472
Basis A4 8 14 GB $441 724 4.042
Standard A0 1 (geteilt) 768 MB 15 $ 492 502
Standard A1 1 1,75 GB 67 $ 1.068 1.083
Standard A2 2 3,5 GB 134 $ 1.069 2.002
Standard A3 4 7 GB 268 $ 1.070 3.593
Standard A4 8 14 GB $536 1.094 6.446
Standard A5 2 14 GB 246 $ 1.080 2.026
Standard A6 4 28 GB $492 1.080 3.686
Standard A7 8 56 GB $983 1.056 6.185

Tabelle 1:Ausgewählte Spezifikationen virtueller Maschinen für Windows Azure im östlichen US-Rechenzentrum

Selbst die größte Standard-A7-VM schneidet im Vergleich zu einem durchschnittlichen modernen Laptop sowohl bei der Single-Core- als auch bei der Multi-Core-Leistung ziemlich schlecht ab. In Geekbench misst der Single-Core-Score die Single-Thread-Leistung des Prozessors, was im Grunde die Rohgeschwindigkeit des Prozessors ist. Die Singlethread-Leistung ist sehr wichtig für OLTP-Workloads, bei denen die meisten Abfragen auf einem einzelnen Prozessorkern ausgeführt werden. Der Multi-Core-Score misst die Gesamtprozessorkapazität des Systems, die der Menge an gleichzeitiger Workload entspricht, die Sie unterstützen können. Während viele kleinere SQL Server-Workloads mit dieser VM-Leistung und -Kapazität perfekt ausgeführt werden könnten, wäre ich als DBA nicht sehr glücklich darüber, ältere Azure Gen 2-Hardware für meine SQL Server-VMs zu verwenden.

In jüngerer Zeit hat Microsoft größere und viel schnellere virtuelle Standard A8- und A9-Rechenintensive Azure-Maschinen verfügbar gemacht. Diese VMs verfügen über viel neuere und schnellere 32-nm-Intel Xeon E5-2670 Sandy Bridge-EP-Prozessoren, die ursprünglich im ersten Quartal 2012 veröffentlicht wurden. Dieser spezielle Prozessor verfügt über acht physische Kerne (plus Hyper-Threading); mit einer Basistaktfrequenz von 2,6 GHz und einer Turbo Boost-Taktfrequenz von 3,3 GHz. Dieser Prozessor war zwei Stufen niedriger als der achtkernige Xeon E5-2690-Prozessor der Spitzenklasse, aber eigentlich ist er ein ziemlich anständiger Prozessor. Ein weiteres sehr wichtiges Feature dieser neuen VM-Größen ist das InfiniBand-Netzwerk mit 40 Gbit/s, das Ihnen das Potenzial für eine viel bessere E/A-Leistung bietet.

VM-Größe CPU-Kerne Erinnerung Monatliche Kosten Single-Core-Bewertung Multi-Core-Score
Standard A8 8 56 GB 1.823 $ 2.484 15.376
Standard A9 16 112 GB 3.646 $ 2.477 28.523

Tabelle 2:Ausgewählte Spezifikationen virtueller Maschinen für Windows Azure im östlichen US-Rechenzentrum

Wie Sie in Tabelle 2 sehen können, haben diese neuen rechenintensiven Azure-VMs viel bessere Single-Core- und Multi-Core-Ergebnisse in Geekbench. Sie haben auch deutlich höhere monatliche Kosten. Betrachtet man diese monatlichen Kosten aus direkter Hardware-Perspektive, könnten Sie einen brandneuen Dell PowerEdge R720-Server mit zwei neueren 22-nm-Intel Xeon E5-2667 v2 Ivy Bridge-EP-Prozessoren mit acht Kernen und 192 GB RAM für etwa 10.000,00 US-Dollar kaufen etwa drei Monate Standard-A9-Zeit. Bei einem physischen Server vor Ort fallen neben laufenden Wartungs- und Verwaltungskosten auch Kosten für Strom und Kühlung an. Sie hätten auch eine längere Vorlaufzeit, um einen physischen Server zu bestellen und zu erhalten und ihn dann in ein Rack zu stellen, zu verkabeln und zu konfigurieren. Dieser Prozess dauert in den meisten Unternehmen in der Regel etwa drei bis vier Wochen, kann aber viel länger dauern. Die wirtschaftliche Situation ändert sich, wenn Sie Ihre Lizenzkosten für SQL Server 2012/2014 Enterprise Edition einbeziehen, die etwa 110.000,00 USD für Lizenzen mit 16 Prozessorkernen betragen würden, was ungefähr 30 Monaten Standard A9-Zeit zu aktuellen Preisen entsprechen würde. Wenn Sie ein Azure-VM-Image aus der Microsoft-Standardgalerie von VM-Images verwenden, müssen Sie nicht für Ihre Betriebssystem- oder SQL Server-Lizenzen bezahlen.

Während ich diese Tests durchführte, bemerkte ich einige andere interessante Unterschiede zwischen einer Azure-VM und einem ähnlichen physischen Server. Der erste war die Tatsache, dass die Azure Standard A8- und A9-VMs anscheinend eine Art Energieverwaltung auf Host- oder Hypervisor-Ebene verwenden, sodass Intel Turbo Boost nicht verwendet wird. Wenn ich Geekbench auf dem System ausführe und CPU-Z während des Testlaufs beobachte, bleibt die Prozessorkerngeschwindigkeit während des gesamten Testlaufs auf der Nennbasistaktgeschwindigkeit. Wenn die Energieverwaltung auf allen Ebenen richtig konfiguriert und Turbo Boost im Host-BIOS aktiviert ist, sollte die Prozessorkerngeschwindigkeit während des Testlaufs regelmäßig auf die volle 3,3-GHz-Turbo-Boost-Taktfrequenz steigen. Bei den Azure-VMs A8 und A9 passiert das nicht, was den Single-Core-Geekbench-3.1.6-Score um etwa 10 % beeinträchtigt. Die Unterschiede in den Prozessorkerngeschwindigkeiten sind in den Abbildungen 1 und 2 dargestellt.


Abbildung 1:CPU-Z für Standard A9 Azure VM während Geekbench Testlauf


Abbildung 2:CPU-Z für Dell PowerEdge R720 während des Geekbench-Tests laufen

Was sind also die wichtigsten Lehren aus diesen Experimenten? Erstens scheint es offensichtlich, dass Sie mit einer Standard-A9-Azure-VM fast die gleiche VM-Leistung erzielen können wie mit einem ähnlich großen physischen Server mit zwei Sockeln (mit demselben Prozessor), wie z. B. einem Dell PowerEdge R720 oder einem HP ProLiant DL380 G8 . Sie verwenden einen etwas älteren Sandy Bridge-EP-Prozessor der Mittelklasse, ohne dass der Vorteil von Intel Turbo Boost aktiviert ist, sodass Sie im Vergleich zu einem aktuellen Jahrgang insgesamt etwa 40 % Ihrer Single-Thread-Prozessorleistung verlieren Intel Xeon E5-2667 v2 in einem neuen physischen, lokalen Server.

Ein weiteres potenzielles Problem ist das Arbeitsspeicherlimit von 112 GB für die Standard-A9-Azure-VM im Vergleich zu 384 GB in einem physischen, lokalen Server (mit 16-GB-DIMMs). Wenn Ihre Datenbank-Workload mit einem etwa 95 GB großen SQL Server-Pufferpool gut ausgeführt werden kann, sollte dies kein Problem darstellen. Andernfalls könnten Sie mit Ihrer Leistung nicht allzu zufrieden sein. Sie sollten auch einige E/A-Tests und Benchmarks durchführen, um festzustellen, wie gut die A9-Azure-VM funktioniert und ob sie Ihre Workload bewältigen kann.

Schließlich müssen Sie die Wirtschaftlichkeit der Verwendung eines standardmäßigen Azure-Katalog-VM-Images berücksichtigen, bei dem die Lizenzkosten für SQL Server 2014 als Teil Ihrer monatlichen Azure-Kosten enthalten sind. Je nachdem, wie lange Ihre Instanz Ihrer Meinung nach in Betrieb sein wird, kann die Verwendung einer Azure-VM ein sehr gutes oder weniger gutes Geschäft sein. Ein Faktor, der diese Berechnung beeinflussen könnte, ist die Wahrscheinlichkeit, dass die Preise für Azure-VMs im Laufe der Zeit sinken werden.