¿Cómo debo configurar estos discos en un servidor SQL para una configuración de BI?


8

Suponiendo memoria constante (32 gb) y CPU (4), 2 x matrices de discos, tengo los siguientes discos

  • 2 x 150 (10k)
  • 6 x 150 (15k)

Todos son discos locales.

Mis requisitos

  • Mi base de datos es de 350 gb y está configurada con un crecimiento predeterminado del 10%
  • Mi SO y SQL Server son Server 2k8R2 (C: unidad OS + página + aplicaciones = 55 Gb)
  • Los requisitos de registro son de aproximadamente 70 gb y se establecen en un crecimiento predeterminado del 10% y se truncan rutinariamente
  • Mi TempDb es de aproximadamente 12 gb actualmente y está configurado con un crecimiento predeterminado del 10%

Mi problema es que estoy tratando de entender dónde colocar mejor el TempDB y el sistema operativo y el registro. Mi experiencia es limitada en la configuración óptima de estos dos

Este no es un sistema transaccional en línea. Tiene una gran cantidad de datos escritos (nuevos datos + índices de reconstrucción / reorganización) luego una gran cantidad de datos (estoy estimando en aproximadamente 50/50) procesamiento durante aproximadamente 13 horas, y luego simplemente silencioso.

Tengo entendido que el TEMPDB se usa mucho durante el procesamiento normal en comparación con el registro.

Mi idea es la siguiente

  • 2 x 150 g (15 k) Raid 1 = 150 g para OS + TempDB
  • 2 x 150 g (10k) Raid 1 = 150 g para LOG (tenga en cuenta los discos más lentos aquí)
  • 4 x 150 g (15 k) Raid 5 = 150 g para datos

¿Suena esto como una buena idea? Entonces podría intercambiar Log + TempDB si fuera necesario.

¿Estoy rompiendo unas reglas cardinales como nunca poner TempDB en el disco del sistema operativo debido a problemas de paginación , o tal vez nunca poner el registro en un disco más lento que los datos ?

Editar:

También tenemos un SSAS en el sistema y los usuarios finales solo acceden al Cubo. El 50% de la lectura anterior se basa en el tiempo que lleva procesar la base de datos SSAS.

Respuestas:


7

2 * 10k RAID1 para SO, 6 * 15k RAID10 para todo lo demás. Honestamente, con esta cantidad de discos, 1 matriz es la apuesta más segura y generalmente más rápida.

Si tiene tiempo para probar y tiene una carga de trabajo medible, repetible y en el mundo real, haga una prueba con su tempdb en la unidad del sistema operativo (advertencia: limite el crecimiento del archivo tempdb para asegurarse de no aplastar el sistema operativo) . Por otro lado, puede ver mejoras moderadas en su carga de datos y mantenimiento con el registro allí, por lo que vale la pena realizar una prueba o dos si el tiempo lo permite.


¿Hay algo que tener con matrices adicionales? ¿Debería la TempDB no estar en un conjunto de matriz / eje separado? Estoy estimando el 50/50 ya que se basa en un 50% de procesamiento DW y un 50% de procesamiento SSAS (6 horas de lectura).
Saluda a Sangha el

No veo mención de un cubo de servicios de análisis en su pregunta original. ¿Tanto la base de datos relacional como el cubo son consultados por los usuarios finales o solo el cubo?
Mark Storey-Smith

1
+1 Me gusta tu recomendación. Vale la pena señalar que si él pone tempdb en la unidad del sistema operativo, entonces definitivamente cerrará el tamaño máximo para los archivos de la base de datos. Todos podemos estar de acuerdo en que no queremos que los archivos de base de datos no autorizados llenen ese disco en particular.
Thomas Stringer el

1
@PreetSangha Belief no es una buena base para planificar un servidor o una implementación de almacenamiento. Necesita invertir un tiempo investigando y entendiendo por qué eso es apropiado en algunos escenarios y no en otros. Separar su cubo de la base de datos relacional puede tener piernas aquí, pero quién puede saberlo sin probarlo. No hay un enfoque JFDI duro y rápido, de talla única, JFDI para esto, me temo.
Mark Storey-Smith

2
Si puede probar y medir los diversos escenarios con su carga de trabajo, puede resultar acertado. Cuando / si no puedes, un gran grupo de almacenamiento lo más rápido posible absorberá mejor los bultos y golpes que un disparo en la división oscura. Siéntase libre de ingresar al chat si desea intercambiar ideas. Hay varios clientes habituales con más experiencia en SSAS que yo que podrían tener sugerencias para determinar cómo / si debe dividir el cubo de la base de datos.
Mark Storey-Smith

3

Estoy de acuerdo con Mark en que el enfoque ideal es colocar las dos unidades más lentas en RAID 1 solo para O / S, y el resto de las unidades en RAID 10 para todo lo demás. Eso sería lo ideal.

Sin embargo, en función de los tamaños que proporcionó, esto le permite comenzar al máximo, con muy poco margen de error y sin espacio para crecer. Y, por cierto, si alguien le dijo que las unidades tienen 150 GB, en realidad pueden ser más pequeñas que eso (¿146 GB?), Sin formato, lo que probablemente significa que no todo encajará de inmediato.

Desafortunadamente, la carga de trabajo involucra escrituras pesadas, y para eso, RAID 5 ... no es tu amigo.

Si puede lograr un presupuesto extra, hay un par de enfoques:

  • Dos unidades más de 15k del mismo tamaño. Dependiendo de lo que significa "2 x matrices de discos",> 8 unidades en total pueden significar que se necesita un nuevo controlador RAID. (Y / o un chasis más grande, posiblemente).

  • Dos SSD de ~ 120 GB (PCI-express o SATA) en software RAID 1 para datos / registro TempDB y el archivo de registro de la base de datos. En realidad, esta puede ser la solución, el período más rápido y podría costar considerablemente menos que 2 unidades de 15k de clase empresarial (y mucho menos un controlador RAID comparable). Esto supone que hay ranuras / puertos disponibles en la placa base, que probablemente los haya.

Si la administración no se mueve según el presupuesto (esta situación huele a hardware antiguo que se está reutilizando para un nuevo proyecto ... lo que significa que el presupuesto es cero), tendrá que usar RAID 5 por razones de espacio, porque no hay manera de evitarlo sin más discos disponibles. En ese punto, el mejor movimiento probablemente sea colocar los 2 discos más lentos en RAID 1 solo para O / S, y el resto en RAID 5 para maximizar el espacio. Si se ve obligado a usar RAID 5 para cualquier parte de esto, la administración debe firmar (por escrito) para comprender lo que eso significa en términos de rendimiento.


Gracias. Este es el servidor de un cliente, por lo que tomarán la decisión final, pero aceptamos que las grandes franjas rápidas y redundantes son lo mejor que debemos aspirar. Nuestros propios servidores usan grandes bandas SSD.
Saludo Sangha
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.