StorageReview.com

Selección de la mejor configuración de DRAM para SQL Server 2012

Empresa  ◇  En el laboratorio

Construir el servidor de producción ideal para Microsoft SQL Server 2012 puede ser una tarea compleja, con variables como el almacenamiento, la RAM o la selección del procesador que resultan difíciles incluso para los administradores de TI más experimentados. Publicamos un análisis sobre la selección del mejor procesador Intel Xeon E5-2600 v2 para ejecutar SQL Server 2012 en entornos no virtualizados. Además del procesador, la RAM es otro componente clave a la hora de considerar el rendimiento de SQL Server en hardware físico. Para esta prueba, utilizamos la misma plataforma que en el estudio del procesador Intel, centrándonos esta vez en la RAM Micron PC3-12800 con el procesador y el almacenamiento de mejor rendimiento para evaluar su impacto en el rendimiento.

Hablando tradicionalmente, más RAM para SQL Server ofrece un mayor rendimiento. El aprovechamiento de la memoria RAM adicional reduce el espacio de E/S en una matriz de almacenamiento determinada y también brinda algunos beneficios de almacenamiento en caché. Manteniendo todo igual, analizamos la cantidad de RAM que puede dedicar a SQL Server mientras mantiene un perfil de baja latencia. En este artículo, mostramos el impacto en el rendimiento de asignar 128 GB dedicados a SQL Server, que es donde actualmente probamos los dispositivos para revisiones empresariales, hasta 8 GB.

Banco de pruebas

Para este análisis, evaluamos la memoria DDR3 Micron PC3-12800 en un servidor Supermicro SuperStorage Server 2027R-AR24NV con Windows Server 2012. Se trata de un servidor de 2U con doble socket que admite las familias de procesadores Intel E5-2600 y E5-2600 v2. La RAM del sistema consta de dieciséis módulos DIMM Micron PC3-12800 de 16 GB, que permanecen fijos para cada prueba. Para modificar la cantidad de RAM utilizada por SQL Server, cambiamos la configuración de asignación, limitándola a una cantidad seleccionada para cada revisión. Utilizamos la unidad Fusion ioMemory PX600 de 2.6 TB para el almacenamiento interno, que ha mostrado una latencia de SQL Server muy buena (el producto de última generación más rápido que nuestro laboratorio ha probado).

Configuración del servidor

  • 2 procesadores Intel Xeon E5-2687W v2: caché de 25 M, 3.40 GHz, 8 núcleos
  • Chipset Intel C602
  • Memoria: 256 GB (16x 16 GB) 1600 MHz Micron DDR3 RDIMM registrados (128 GB dedicados al sistema, 8-128 GB dedicados a SQL)
  • Windows Server Standard 2012
  • 3 HBA Supermicro SAS3 (controladores LSI SAS 3008)
  • SSD de arranque Micron P200m de 400 GB
  • 1 adaptador Mellanox ConnectX-3 VPI PCIe 3.0 de dos puertos (InfiniBand LoadGen Fabric)
  • 1 adaptador Emulex OCe11102 de doble puerto de 10 GbE

Configuración de almacenamiento

  • SanDisk Fusion ioMemory PX600 2.6TB
    • 80 % de sobreaprovisionamiento en modo de alto rendimiento
    • Consumo total de energía habilitado
    • Controladores/firmware VSL 4.1.1

Rendimiento

Cada intervalo de incremento de RAM especificado se probó de la misma manera: utilizando nuestra prueba de rendimiento OLTP de SQL Server 2012 con la base de datos ubicada en el PX600 dentro del servidor Supermicro 2P de un solo nodo. Como ocurre con la mayoría de los dispositivos de almacenamiento de la misma categoría, no nos preocupa tanto la cantidad de transacciones por segundo; el énfasis está realmente en la latencia para que se complete cada una de esas transacciones.

Como era de esperar, mayores cantidades de RAM asignadas al servidor SQL generaron un mayor rendimiento transaccional. Entre 128 GB y 64 GB, no vimos un gran cambio en TPS. De hecho, la caída entre 96 GB y 64 GB se mantuvo aproximadamente dentro del mismo margen de error. La diferencia de 16 GB a 8 GB generó el mayor cambio, lo que nos dice que 16 GB es probablemente el umbral útil mínimo para esta prueba y configuración de servidor en particular.

Centrándonos en la latencia, vemos lo bien que Fusion ioMemory PX600 mantuvo su rendimiento de baja latencia con los resultados de 128 GB, 96 GB y 64 GB con una puntuación de entre 2 y 3 ms. El menú desplegable a 32 GB aumentó la latencia en un 66 %, pero el siguiente menú desplegable de 16 GB fue mucho más dramático. Ese cambio aumentó la latencia en un 200 %, que luego aumentó otro 153 % cuando la RAM se redujo a 8 GB.

Si bien el impacto del almacenamiento no se mostró como parte de esta prueba, cada paso en la asignación de DRAM redujo drásticamente la carga vista por el dispositivo de almacenamiento en el que residía la base de datos. En resumen, más memoria se traduce en menos solicitudes que llegan al almacenamiento, en lugar de permanecer dentro de la memoria del sistema. Mientras que 128 GB de RAM tenían una carga de fondo de 50 a 100 MB/s, 16 GB aumentaron a 800 MB/s (no durante la actividad de escritura de registro que puede causar grandes picos para cualquier configuración de DRAM). Con un medio de almacenamiento menor, estos resultados serían aún más elevados.

Conclusión

Al armar un servidor SQL no virtualizado de alto rendimiento, hay muchas consideraciones. En el primer artículo analizamos la CPU y su impacto en el rendimiento de SQL. Aquí utilizamos el almacenamiento interno y las CPU de mejor rendimiento para poner a prueba la memoria RAM. Al asociarnos con Micron, realizamos las mismas pruebas, que van desde 8 GB a 128 GB de RAM dedicada a SQL. Los resultados son bastante intuitivos, y generalmente más RAM es mejor en términos de latencia. Sin embargo, hay un punto de quiebre donde la latencia ve un pico dramático en esta configuración. Con 16 GB, la latencia aumenta 3 veces en comparación con 32 GB y con 8 GB, el impacto es aún más grave. Para obtener el mejor rendimiento posible, 128 GB de RAM para SQL con CPU de alta velocidad de reloj y almacenamiento PCIe líder generan una latencia de solo 2 ms. 

Página del producto Crucial/Micron

Selección de la mejor CPU Intel Xeon E5-2600 v2 para SQL Server 2012

Discutir esta revisión

Interactuar con StorageReview

Boletín informativo | YouTube | Podcast iTunes / Spotify | Instagram | Twitter | TikTok | Canal RSS

kevin obrien

Dentro del StorageReview Lab evaluando productos y trabajando con líderes de la industria para desarrollar nuevos entornos de prueba. En casa estoy formando una familia.