sql >> Base de Datos >  >> RDS >> Database

Comparación del rendimiento de las máquinas virtuales de Windows Azure, parte 2

A principios de este año, escribí sobre la comparación del rendimiento de las máquinas virtuales de Windows Azure, usando Geekbench 3.1.5 en modo de prueba de 32 bits para medir el rendimiento del procesador y la memoria de varias máquinas virtuales de Windows Azure de diferentes tamaños. Estos iban desde una máquina virtual básica A0 hasta una máquina virtual estándar A7, que era la máquina virtual más grande disponible en ese momento. Todas estas máquinas estaban en el centro de datos de Azure Este de EE. UU. y todas usaban el hardware de host Azure Gen 2 más antiguo, que cuenta con el antiguo y relativamente lento procesador AMD Opteron 4171 HE.

En consecuencia, los resultados de Geekbench para estas máquinas fueron bastante bajos, tanto para las puntuaciones de un solo núcleo como para las de varios núcleos, como puede ver en la Tabla 1.

Tamaño de máquina virtual Núcleos de CPU Memoria Costo Mensual Puntuación de núcleo único Puntuación multinúcleo
Básico A0 1 (compartido) 768 MB $14 507 498
Básico A1 1 1,75 GB $56 679 670
Básico A2 2 3,5 GB $111 709 1358
Básico A3 4 7 GB $221 717 2472
Básico A4 8 14 GB $441 724 4042
Estándar A0 1 (compartido) 768 MB $15 492 502
Estándar A1 1 1,75 GB $67 1068 1083
Estándar A2 2 3,5 GB $134 1069 2002
Estándar A3 4 7 GB $268 1070 3593
Estándar A4 8 14 GB $536 1094 6446
Estándar A5 2 14 GB $246 1080 2026
Estándar A6 4 28 GB $492 1080 3686
Estándar A7 8 56 GB $983 1056 6185

Tabla 1:Especificaciones de máquinas virtuales seleccionadas para Windows Azure en el centro de datos del este de EE. UU.

Incluso la VM estándar A7 más grande se compara bastante mal con una computadora portátil moderna promedio, tanto para el rendimiento de un solo núcleo como para el de múltiples núcleos. En Geekbench, la puntuación de un solo núcleo mide el rendimiento de un solo subproceso del procesador, que es básicamente la velocidad bruta del procesador. El rendimiento de subproceso único es muy importante para las cargas de trabajo de OLTP, donde la mayoría de las consultas se ejecutan en un solo núcleo de procesador. La puntuación multinúcleo mide la capacidad general del procesador del sistema, lo que equivale a la cantidad de carga de trabajo simultánea que puede soportar. Si bien muchas cargas de trabajo de SQL Server más pequeñas pueden funcionar perfectamente bien con este nivel de rendimiento y capacidad de VM, como DBA, no estaría muy contento con el uso de hardware antiguo de Azure Gen 2 para mis VM de SQL Server.

Más recientemente, Microsoft ha puesto a disposición máquinas virtuales estándar A8 y A9 Azure Compute Intensivo más grandes y mucho más rápidas. Estas máquinas virtuales cuentan con procesadores Intel Xeon E5-2670 Sandy Bridge-EP de 32 nm mucho más nuevos y rápidos, que se lanzaron inicialmente en el primer trimestre de 2012. Este procesador en particular tiene ocho núcleos físicos (más hiperprocesamiento); con una velocidad de reloj base de 2,6 GHz y una velocidad de reloj Turbo Boost de 3,3 GHz. Este procesador estaba dos pasos por debajo del procesador Xeon E5-2690 de ocho núcleos "de primera línea", pero en realidad es un procesador bastante decente. Otra característica muy importante que viene con estos nuevos tamaños de VM es la red InfiniBand de 40 Gbit/s, que le brinda el potencial de un rendimiento de E/S mucho mejor.

Tamaño de máquina virtual Núcleos de CPU Memoria Costo Mensual Puntuación de núcleo único Puntuación multinúcleo
Estándar A8 8 56 GB $1,823 2484 15.376
Estándar A9 16 112 GB $3646 2477 28.523

Tabla 2:Especificaciones de máquinas virtuales seleccionadas para Windows Azure en el centro de datos del este de EE. UU.

Como puede ver en la Tabla 2, estas nuevas máquinas virtuales de Azure con uso intensivo de cómputo tienen puntuaciones mucho mejores de un solo núcleo y de varios núcleos en Geekbench. También tienen costos mensuales significativamente más altos. Al observar estos costos mensuales desde una perspectiva directa de hardware, podría comprar un nuevo servidor Dell PowerEdge R720 con dos procesadores Intel Xeon E5-2667 v2 Ivy Bridge-EP de ocho núcleos y 22 nm más nuevos y 192 GB de RAM por aproximadamente $ 10,000.00, que es unos tres meses de tiempo estándar A9. Con un servidor físico en las instalaciones, también tendría costos de energía y refrigeración, junto con costos continuos de mantenimiento y administrativos. También tendría un tiempo de entrega más largo para pedir y recibir un servidor físico y luego instalarlo, cablearlo y configurarlo. Este proceso suele tardar entre tres y cuatro semanas en la mayoría de las empresas, pero puede ser mucho más largo. Donde la historia económica cambia es cuando incluye los costos de licencia de SQL Server 2012/2014 Enterprise Edition, que serían de aproximadamente $110,000.00 para licencias de 16 núcleos de procesador, lo que equivaldría a aproximadamente 30 meses de tiempo estándar A9 a los precios actuales. Si usa una imagen de máquina virtual de Azure de la galería estándar de imágenes de máquina virtual de Microsoft, entonces no tiene que pagar por sus licencias de SO o SQL Server.

Mientras hacía esta prueba, noté algunas otras diferencias interesantes entre una máquina virtual de Azure y un servidor físico similar. El primero fue el hecho de que las máquinas virtuales Azure Standard A8 y A9 parecen estar usando algún tipo de administración de energía en el nivel de host o hipervisor, por lo que no se usa Intel Turbo Boost. Cuando ejecuto Geekbench en el sistema y observo CPU-Z durante la ejecución de la prueba, la velocidad del núcleo del procesador se mantiene en la velocidad nominal del reloj base durante toda la ejecución de la prueba. Si la administración de energía está configurada correctamente en todos los niveles, y si Turbo Boost está habilitado en el BIOS del host, entonces debería ver que la velocidad del núcleo del procesador salta a la velocidad de reloj Turbo Boost completa de 3,3 GHz periódicamente durante la ejecución de la prueba. Esto no sucede con las máquinas virtuales A8 y A9 de Azure, lo que perjudica la puntuación Geekbench 3.1.6 de un solo núcleo en aproximadamente un 10 %. Las diferencias en las velocidades de los núcleos del procesador se muestran en las Figuras 1 y 2.


Figura 1:CPU-Z para máquina virtual Azure A9 estándar durante Geekbench ejecución de prueba


Figura 2:CPU-Z para Dell PowerEdge R720 durante la prueba Geekbench correr

Entonces, ¿cuáles son las principales lecciones aprendidas de estos experimentos? En primer lugar, parece evidente que puede obtener un rendimiento de máquina virtual casi equivalente de una máquina virtual estándar A9 de Azure que puede obtener de un servidor físico de dos sockets de tamaño similar (con el mismo procesador), como un Dell PowerEdge R720 o un HP ProLiant DL380 G8 . Utilizará un procesador Sandy Bridge-EP de gama media un poco más antiguo, sin la ventaja de Intel Turbo Boost habilitado, por lo que perderá un total de aproximadamente el 40 % del rendimiento de su procesador de subproceso único en comparación con una versión actual. Intel Xeon E5-2667 v2 en un nuevo servidor físico local.

Otro posible problema es el límite de memoria de 112 GB para la máquina virtual estándar A9 de Azure, en comparación con los 384 GB de un servidor físico local (con módulos DIMM de 16 GB). Si la carga de trabajo de su base de datos puede funcionar bien con un grupo de búfer de SQL Server de aproximadamente 95 GB, entonces esto no debería ser un problema. De lo contrario, es posible que no esté muy satisfecho con su desempeño. También querrá realizar algunas pruebas de E/S y evaluaciones comparativas para determinar qué tan bien se desempeña la máquina virtual A9 de Azure y si puede manejar su carga de trabajo.

Finalmente, debe considerar la economía de usar una imagen de máquina virtual de galería de Azure estándar, donde los costos de licencia de SQL Server 2014 se incluyen como parte de su costo mensual de Azure. Dependiendo de cuánto tiempo crea que su instancia estará en servicio, usar una máquina virtual de Azure puede ser una muy buena oferta o no tan buena. Un factor que podría influir en este cálculo es la probabilidad de que los precios de las máquinas virtuales de Azure bajen con el tiempo.