performance tuning en azure sql database
TRANSCRIPT
Performance Tuning enAzure SQL Database
Jose RedondoMicrosoft Data Platform MVP
Latam (Avanet & FirstCloud) | USA (ITProCamp)
Quien soy?
Jose RedondoData Platform MVP Latam | Arquitecto de datos | Experto en soluciones de Inteligencia de Negocio y Bodegas de datos | Consultor | Conferencista Microsoft en Latinoamérica y USA
Amante del compartir el conocimiento tecnológico y la buena cultura
Twitter: @redondojLinkedIn: linkedin.com/in/redondojBlog: redondoj.wordpress.comE-Mail: [email protected]
Agenda• Intro• Porque aplicar Performance
Tuning?• Herramientas disponibles DEMO• Métricas a desarrollar DEMO• Query Store DEMO
Comprender las diferentes herramientas, opciones, y capacidades necesarias en orden con el fin de afinar las consultas efectuadas en Azure SQL Database v12
IntroAzure SQL Database v12• No es SQL Server• PaaS – Plataforma como
un Servicio• Merma la funcionalidad
adquirida ON-Premise• Radicalmente incrementa
la eficacia y simplicidad • Escalabilidad• Redundancia• Mantenimiento
Intro
SQL Server• Sencillamente es el mismo SQL Server• Misma estructura• Mismo lenguaje de programación
Porque aplicar Performance Tuning?• Solo emplea escalabilidad
PaaS (Platform as a Service)• Mejora el rendimiento• Reduce la sobre carga• Reduce los costos de
mantenimiento• Query Tuning genera
ahorro de dinero
Herramientas disponibles• T-SQL• El mismo entorno de trabajo• Reducción adicional en curva
de aprendizaje• Amplia gama de funcionalidad
• PowerShell• Automatización• Nuevos comandos• Integración directa entre On-
Premise y Azure
Herramientas disponibles• SQL Server Management Studio• Conceptos y fundamentos para todo
trabajo • Algunas funciones de la GUI no funcionan• La funcionalidad avanzada no funciona• Funcionalidad como se esta acostumbrado
• De terceros• Algunas trabajan completamente• Otras trabajan parcialmente• Y otras no funcionan en absoluto• Pocos se concentraron directamente, pero
eso esta cambiando
Métricas a desarrollar• Ambiente reducido• No traza de eventos• No eventos extendidos
• Por ahora…• No profile
• Bravooooo!!!• DBCC• SHOW_STATISTICS• SQL_PERF• Olvidémonos de:
• FREEPROCCACHE• DROPCLEANBUFFERS
Métricas a desarrollar
• Dynamic Management Views• 80% la misma forma de
utilizarse en SQL Server• Algunos exclusivos en
Azure SQL Database
• DMVs comunes• Sys.dm_exec_query_stats• Sys.dm_exec_procedure_stats• Sys.dm_exec_sql_text• Sys.dm_exec_query_plan• Sys.dm_os_wait_stats
Métricas a desarrollar
• DMVs únicos• Sys.dm_db_wait_stats• Sys.database_connection_stats• Sys.event_log
Query Store• Que es el Query Store?• Flight Data Recorder• Característica integrada en cada
métrica de consulta• Capturar cada Plan de Ejecución
• Cual es su funcionalidad?• Mostrar las métricas de las consultas• Mostrar los Planes de Ejecución• Controlar cada resultado de los
planes de ejecución utilizado
Conclusiones• Aplicar Query Tuning nos
permite ahorrar dinero• El proceso On-Premise es
el mismo en este contexto• Mecanismos para aprender
herramientas adicionales y de terceros estan disponibles• Tomar ventaja de ellos