Suponiendo que tiene un servidor dedicado explícitamente para las funciones de la base de datos, ¿cuánta memoria debe reservar para el sistema operativo?
Me doy cuenta de que esto probablemente variará un poco dependiendo del sistema operativo específico, el software de base de datos específico, etc. Pero, como la memoria es tan importante para el rendimiento de la base de datos, quiero que la base de datos tenga el nivel máximo razonable de memoria, sin privar al sistema operativo host.
Asi que
- ¿Cuál es una buena regla general para empezar?
- ¿Qué indicadores o indicadores de rendimiento deberíamos observar para determinar si hemos ido demasiado lejos y la base de datos está matando de hambre al sistema operativo host?
sql-server
windows
memory
Jeff Atwood
fuente
fuente
Respuestas:
Suponiendo que Windows y SQL Server ...
Hay dos escuelas de pensamiento.
Personalmente estoy en el primer grupo. Windows generalmente solo necesita 2-4 conciertos, a veces hasta 6.
fuente
Suponiendo que Linux, si apaga el intercambio y el kernel sigue matando su proceso de base de datos porque no tiene memoria, es un buen indicador de que le falta memoria al sistema operativo. Retroceda hasta que eso deje de suceder. Un par de cientos de megas suele ser suficiente.
fuente
Puede aprovechar la experiencia de Amazon ejecutando miles de servidores de bases de datos de clientes aquí: en Amazon Relational Database Service, configuraron el grupo de búferes innodb de MySQL en 3/4 de la memoria del sistema, independientemente de la cantidad de memoria que sea. Agregue hasta un par de megas por conexión para varios búferes de consultas, y es probable que dejen del 10 al 20% de la memoria al sistema operativo.
fuente
Deberías leer la versión de Brent Ozar sobre la memoria. Tiene algunas respuestas bastante estándar sobre por qué debería buscar memoria y por qué más memoria equivale a un mejor rendimiento. En general, 4 GB o 10% reservado para el sistema operativo.
fuente