Soy parte de una pequeña empresa, así que, como de costumbre, cubro varios roles diferentes. La última de ellas es la adquisición de un cuadro de SQL Server dedicado para nuestra aplicación web .NET. Hemos sido citados en una configuración de CPU dual Xeon E5-2620 (seis núcleos) de 2.00 GHz (12 núcleos en total), con 32 GB de RAM. Esto nos ha dejado con un presupuesto limitado para la matriz de discos, que consistiría esencialmente en dos unidades SAS 300 GB de 2.5 "(15k RPM) en una configuración RAID 1.
Sé que la configuración del disco es subóptima para SQL Server y realmente me gustaría impulsar RAID 10 para que podamos poner la base de datos, los archivos de registro y tempdb en sus propias unidades. Para que esto sea compatible con nuestro presupuesto, ¿debería considerar reducir la cantidad de núcleos de CPU? ¿o obtendría un mejor banco por dinero manteniendo los núcleos y usando menos unidades, quizás 4 en una configuración RAID 1 dual?
Aquí hay algunas estadísticas adicionales
La base de datos de SQL Server está inclinada hacia un gran número de lecturas a escrituras, probablemente del 80% frente al 20%, respectivamente. El tamaño actual de la base de datos es de alrededor de
10 GB26 GB en la actualidad, creciendo a un ritmo de 250 MB por mes.Actualmente se ejecuta en SQL Server 2008 R2 Standard en una única caja Xeon de cuatro núcleos compartida con el servidor web (12 GB de RAM, 2 unidades de disco de 10k 300GB SAS en RAID 1), buscando pasar a SQL Server 2012 Standard.
La base de datos sirve a aproximadamente 100-150 usuarios concurrentes con algunas tareas de programación en segundo plano. Leyendo esto, creo que 12 núcleos es una exageración grave.
Implementé toda la aplicación en un servicio en la nube de Azure (2 instancias pequeñas) vinculada a una base de datos SQL Azure. Aunque el rendimiento fue razonable durante las pruebas (casi carga cero) perdí el coraje de usar en la producción debido a la imprevisibilidad de la que había leído tanto. Puede funcionar mejor con un enfoque de escalamiento horizontal, pero con solo una base de datos de 10 GB, probablemente pueda escalar en este momento y ahorrar algo de dinero.
Inicialmente pasé por alto los costos de licencia y no me di cuenta de que las licencias de SQL Server 2012 se basan en la cantidad de núcleos. Tengo una suscripción a BizSpark MSDN con una licencia estándar de SQL Server 2012, por lo que necesitaría leer cuántos núcleos utilizaría de inmediato.