La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Optimización de aplicaciones de bases de datos OLTP Speaker: Edinson Medina SQL Server Premier Field Engineer Microsoft Corporation Blog:

Presentaciones similares


Presentación del tema: "Optimización de aplicaciones de bases de datos OLTP Speaker: Edinson Medina SQL Server Premier Field Engineer Microsoft Corporation Blog:"— Transcripción de la presentación:

1 Optimización de aplicaciones de bases de datos OLTP Speaker: Edinson Medina SQL Server Premier Field Engineer Microsoft Corporation Blog: http://blogs.technet.com/b/sql_pfe_latam/http://blogs.technet.com/b/sql_pfe_latam/ Twitter: @dixitox Moderador: Juan Romagosa Microsoft Technology Specialist

2 Grabando Sesión

3 Asegúrate que todos estén en modo Mudo. Por favor descarguen el cliente de Live Meeting. El cliente WEB no soporta Audio. Clic en feedback (Parte superior derecha) y cambia tu estatus de color en caso de requerir apoyo del moderador. Si tienes alguna pregunta, escríbela en el área de Preguntas & Respuestas.

4 Edinson Medina es un Ingeniero Premier de Campo para Microsoft SQL Server, Experto en el Motor de Dase de datos de SQL Server: Performance, Troubleshooting, Optimizacion, Adminsitracion y tecnologías de Alta Disponibilidad. Se especializa en soporte proactivo como chequeos de Salud y Riesgos para Ambientes de SQL Server y también soporte Reactivo. Ha aplicado sus conocimientos en diversas compañías de sectores como Sector Publico, Petroleras, Educación, Telecomunicaciones, Ventas/Retail y Financieras; diseñando, desarrollando, implementando y dirigiendo proyectos concernientes a las áreas mencionadas anteriormente.

5 Optimización de aplicaciones de bases de datos OLTP: En esta sesión hablaremos de algunas de las Mejores Practicas en diferentes niveles de SQL Server para obtener un buen rendimiento en SQL Server.

6 AGENDA Optimización a Nivel de Instancia Máximo Grado de Paralelismo Máxima Memoria para el Servidor Optimización de Almacenamiento Configuración de TEMPDB Optimización a Nivel de Base de datos Actualización Automática de Estadísticas Creación Automática de Estadísticas Optimización de consultas Índices Filtrado (Likes, Functions) Data type mismatch Estadísticas Conclusiones

7 Optimizacion a Nivel de Instacia Máximo Grado de Paralelismo Máxima Memoria para el Servidor Optimización de Almacenamiento Configuración de TEMPDB

8 Optimizacion a Nivel de Instacia Máximo Grado de Paralelismo: Para los servidores que utilizan más de ocho procesadores, utilice la siguiente configuración: MAXDOP = 8 Para los servidores que utilizan procesadores de ocho o menos, utilice la siguiente configuración: MAXDOP = 0 a N

9 Optimizacion a Nivel de Instacia Máxima Memoria para el Servidor: Que pasaría si no configuro el Max Server Memory? Como se configura el Max Server Memory? Es Max Server Memory lo máximo de memoria que SQL Server consumirá de la memoria del Servidor? Como debo calcular el valor para Max Server Memory?

10 Optimizacion a Nivel de Instacia Máxima Memoria para el Servidor: Escenario: 8GB RAM, 8 CPU Cores Memoria a Reservar = Memoria Sistema Operativo + Worker Thread Memory + Non-SQL Buffer Pool + Other SQL Components + Other Aplications Memoria Sistema Operativo = Dejar 1 GB para el S.O, puede Variar Worker Thread Memory = 2 MB (Porque es x64) * 512 + ((N-4) * 16). N es el numero de cores Other = 1.5 GB, puede variar Memoria a Reservar = 1 GB + 1.5 GB + 1.5 GB = 4 GB Memoria MAX = 8 GB - 3,2 GB = 4 GB

11 Optimizacion a Nivel de Instacia Optimización de Almacenamiento: Entender la características de IO de SQL Server y Aplicaciones Mas spindles y mas rápidos mejora el performance Siempre coloca los archivos de Log en RAID 1+0 (o RAID 1) Aislé los archivos de Log de Transacciones de los Archivos de Data. Trate de hacer crecer los archivos manualmente, en vez de basarse en el AUTOGROW Deje encendido el Autogrow, y configúrelo para crecer por tamaño y no porcentaje.

12 Optimizacion a Nivel de Instacia Configuración de TEMPDB: Para mayor rendimiento coloque a TEMPDB en RAID 1+0. Pre configure TEMPDB con un tamaño adecuado. Configure mas de 1 archivo de data, la recomendación GENERAL es de 1 archivo por núcleo, hasta un máximo de 8. Todos los data files deben tener el mismo tamaño y misma configuración de AUTOGROW.

13 DEMO Máximo Grado de Paralelismo Máxima Memoria para el Servidor Optimización de Almacenamiento Configuración de TEMPDB

14 Optimizacion a Nivel de Base de Datos Actualización Automática de Estadísticas Creación Automática de Estadísticas

15 Optimizacion a Nivel de Base de Datos Actualización Automática de Estadísticas: AUTO_UPDATE_STATISTICS: el optimizador de consultas determina si las estadísticas están desactualizadas y las actualiza cuando son usadas por una consulta. AUTO_UPDATE_STATISTICS_ASYNC determina si el optimizador de consultas utiliza actualizaciones sincrónicas o asincrónicas de las estadísticas.

16 Optimizacion a Nivel de Base de Datos Creación Automática de Estadísticas: AUTO_CREATE_STATISTICS, el optimizador de consultas crea las estadísticas en columnas individuales en el WHERE de la consulta, según sea necesario, para mejorar las estimaciones de cardinalidad para el plan de consulta.

17 DEMO Actualización Automática de Estadísticas Creación Automática de Estadísticas

18 Optimizacion de consultas Índices Filtrado (Likes, Functions) Data type mismatch Estadísticas

19 Optimizacion de consultas Indices Tipos de Índices: Clustered No Clustered Mejores Practicas: Columnas usadas en el WHERE Columnas usadas en el JOIN Columnas en Foreing Keys Usar Índices Cubiertos donde es apropiado Escoja un índice clustered para mejor rendimiento Evite el sobre-indexamiento

20 Optimizacion de consultas Filtrado: Aplicar funciones en columnas le hace imposible a SQL Server el usar un índice en dicha columna Evite usar la expresión LIKE con el prefijo % (wildcard)

21 Optimizacion de consultas Data type mismatch: Los predicados en ambos lados de una compasión siempre deben tener el mismo tipo de datos.

22 Optimizacion de consultas Malas Estadísticas: AUTO UPDATE STATISTICS esta apagado Tablas muy grandes pueden causar que el muestreo por defecto sea insuficiente para generar buenas estadísticas.

23 DEMO Índices Filtrado (Likes, Functions) Data type mismatch

24 Conclusiones Un mejor rendimiento se base en menos IO. Existen algunas mejores practicas Generales, sin embargo para determinar el valor mas adecuado se debe hacer pruebas y análisis. Estadísticas Actualizadas son muy importantes para un buen rendimiento. La creación de Índices adecuados dependerá de las consultas enviadas a SQL Server.

25 Preguntas y Respuestas

26 Contactos Sitio web: http://venezuela.sqlpass.org/ Facebook: https://www.facebook.com/sqlpassvzla Twitter: https://twitter.com/sqlpassve https://twitter.com/dixitox Blog: http://blogs.technet.com/b/sql_pfe_latam/ http://blogs.technet.com/b/pfelatam/

27 Preguntas y Respuestas Muchas gracias por tu participación


Descargar ppt "Optimización de aplicaciones de bases de datos OLTP Speaker: Edinson Medina SQL Server Premier Field Engineer Microsoft Corporation Blog:"

Presentaciones similares


Anuncios Google