Tenemos muchos sistemas que tienen la misma configuración.
- Un servidor (virtual o físico)
- Ejecución de SQL Server (SQL) y SQL Server Analysis Server (AS)
- múltiples núcleos
- 16 gb de RAM
Cada noche, el Servidor SQL procesará aproximadamente 2-3 horas, seguido de 2-3 horas de procesamiento AS. Luego, durante todo el día, solo se consultan los AS.
Suponiendo que este es un servidor dedicado, y que ninguna otra aplicación es preocupante, y que los dos conjuntos de procesamiento son completamente sincrónicos, sin superposiciones siempre uno tras otro, ¿cómo puedo establecer mejor los límites de memoria del servidor SQL y AS?
La razón para preguntar es que si no establezco un límite para SQL, tomará toda la memoria que pueda. Sin embargo, entiendo que SQL felizmente renunciará a esta memoria si:
No lo está usando y
Otro servicio / programa lo solicita.
Entonces, desde una perspectiva lógica, creo que permite que SQL tome todo lo que necesita, pero no estoy tan seguro acerca de AS ' TotalMemoryLimit
. No estoy seguro de si AS renunciará a su memoria. De hecho, leer más me lleva a creer que está mal dejar que se lo lleve todo.
¿Esto significa que realmente necesito establecer límites para ambos? Estoy confundido sobre cuáles deberían ser las mejores prácticas y lo que necesitamos medir teniendo en cuenta que los procesos no se superponen.
Espero que esto tenga sentido.
fuente
¿Es necesario que SQL y SSAS se ejecuten al mismo tiempo? Si no, ¿estás 100% seguro?
Me gustaría ver la configuración de memoria para SQL y SSAS para ver si pueden cooperar entre sí.
Tendremos que dejar algo de memoria para el sistema operativo, otros procesos y asignaciones de varias páginas. Quizás 4G?
Intenta algo como esto ...
En el lado de SQL, configure Max Server Memory en 12G y Min Server Memory en 6G.
En el lado de SSAS, establezca TotalMemoryLimit en 12G y LowMemoryLimit en 6G.
Además, no habilite Bloquear páginas en la memoria.
Pruebe algunas iteraciones, ajustando estos números hacia arriba o hacia abajo.
Si esto simplemente no funciona, y usted sabe de hecho que SQL y SSAS no necesitan ejecutarse al mismo tiempo, entonces probaría la sugerencia de Aaron de programar trabajos para apagar y encender los servicios.
fuente