PDF de programación - Optimización de SQL Server (SQL Server Tuning)

Imágen de pdf Optimización de SQL Server (SQL Server Tuning)

Optimización de SQL Server (SQL Server Tuning)gráfica de visualizaciones

Publicado el 14 de Enero del 2017
474 visualizaciones desde el 14 de Enero del 2017
68,3 KB
2 paginas
SQLMax Connections

Optimización de SQL Server (SQL Server Tuning)

Para poner a punto SQL Server es necesario ajustar la configuración, opciones, y valores de setup basadas en las observaciones de las
características de trabajo del servidor. Típicamente estas observaciones se hacen durante el periodo de trabajo mas critico de servidor para
perfeccionar las cargas de trabajo más pesadas. Las recomendaciones de afinación siguientes son aquéllas que generalmente tienen el mayor
impacto en el trabajo de Servidor. Sin embargo, la aplicación de estas recomendaciones puede producir resultados diferentes que dependen del
ambiente particular del Servidor.

Memoria

La memoria de SQL Server esta dividida en dos espacios, el cache de procedimientos, y el cache de datos. El Servidor SQL distribuye eficazmente
la memoria entre el cache de procedimiento y el cache de datos usando los parámetros de configuración del cache de procedimiento. La
distribución de la memoria restante entre procedimientos y datos, se encarga de mantener los objetos mas usados en sus respectivos caches de
memoria. Por consiguiente, los procedimientos almacenados mayormente usados deben estar en el cache de procedimientos, mientras que la
mayoría de índices y tablas usadas mas frecuentemente deben estar en el cache de datos. 

La mejor manera de determinar cómo es usada la memoria por el Servidor de SQL es ejecutar DBCC MEMUSAGE. Esta sentencia indica la cantidad
de memoria asignada al Servidor de SQL en el comienzo, los 12 objetos más grandes en el cache de procedimientos, y los 20 objetos más grandes
en el cache de datos. Por consiguiente, las recomendaciones son basadas en el uso de estos datos que determinaran el tamaño óptimo para los
caches.

Optimizando el Cache de Datos

El cache de datos está compuesto de la memoria sobrante del Servidor de SQL una vez que los requisitos del cache de procedimiento han sido
satisfechos. Lo mejor es tener bastante espacio del cache para contener la mayoría  los índices usados y un porcentaje respetable de las tablas
mas accedidas frecuentemente, reduciendo las entradas/salidas físicas. Usted también puede usar la sentencia DBCC MEMUSAGE para ver los 20
objetos más grandes del cache de datos y puede determinar un tamaño considerable para el cache de datos basado en los tamaños de estos
objetos. Usted también puede determinar el tamaño de las tablas e índices accedidas mas frecuentemente aplicando las fórmulas del tamaño
cedidas por Appendix A of Microsoft SQL Server Administrator's Companion. Habiendo calculado estos tamaños, usted puede elegir asignar
bastante memoria al Servidor de SQL y contener la íntegramente los objetos de las bases de datos en el cache.

Optimizando el Cache de Procedimientos.

Al poner a punto el cache de procedimiento, lo mejor es determinar el tamaño óptimo para contener los procedimientos almacenados  más activos.
En realidad lo que se busca es prevenir las lecturas a procedimientos almacenados en disco porque esto es muy costoso. Es más, si el cache de
procedimiento es bastante grande , los procedimientos no se descargaran del cache por los nuevos procedimientos cargados en el. (Recuerde que
el Servidor de SQL guardará una copia duplicada de cada procedimiento que se accede por más de un usuario.) por defecto, el Servidor de SQL
distribuye 30 por ciento de memoria disponible al cache de procedimientos después que el kernel de SQL se ha asignado. La tarea es determinar si
este 30 por ciento es poco, suficiente, o demasiado basado en el tamaño de objetos del cache de procedimientos. Es importante no disminuir el
cache de procedimientos debajo de 5 por ciento. 

Usted puede determinar si el cache de procedimientos es bastante grande ejecutando los procedimientos almacenados mas frecuentemente
usados y ejecutando la sentencia DBCC MEMUSAGE; esto mostrara los 12 procedimientos almacenados más grandes en el cache de
procedimientos. Si usted tiene más de 12 procedimientos almacenados, puede continuar ejecutando los demás procedimientos y ejecutar cada vez
la sentencia DBCC MEMUSAGE para ver si uno de los procedimientos previamente ejecutados ha permanecido en el cache. Usted también puede
ejecutar cada procedimiento almacenado y obtener su tamaño de ejecución usando DBCC MEMUSAGE. Después de que usted ha ejecutado
todos los procedimientos que son llamados con mas frecuencia y ha obtenido sus tamaños, sume éstos valores y obtenga el tamaño total
necesario del cache para todos los procedimientos.

TEMPDB en RAM

Las consultas ejecutadas contra el Servidor de SQL que usan espacio de trabajo temporal como las operaciones, GROUP BY, tablas temporales,
uniones de tablas (JOIN), son beneficiadas si la tempdb se encuentra en RAM. Sin embargo, para poner la tempdb en RAM, usted debe tener mas
memoria disponible que la asignada a Windows NT Server y SQL Server. Por consiguiente, si la tempdb esta actualmente en 25 MB de tamaño,
entonces la memoria total requerida para el sistema es: 16 MB para el Windows NT más (XX) la memoria para SQL Server mas 25 MB para el
tempdb.
  • Links de descarga
http://lwp-l.com/pdf243

Comentarios de: Optimización de SQL Server (SQL Server Tuning) (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad