Query store

Enrique Catala Bañuls
Enrique Catala BañulsTechnical Leader at @SolidQ and Microsoft Data Platform MVP
#SQSummit
Query Store
Enrique Catalá Bañuls
Mentor
ecatala@solidq.com
Contenido de la sesión
• Live Query Statistics (LQS)
• Query Store
El infierno del DBA
La aplicación
no responde
Rendimiento
aleatorio
Problemas
de regresion
Live Query Statistics (LQS)
• Identificación rápida
de cuellos de botella
• Ver en tiempo real
• Filas/sec
• Tiempo consumido
• Progreso de operador
• Warnings
Live Query Statistics (LQS)
• DMVs
• sys.dm_exec_requests
• sys.dm_exec_sql_text
• sys.dm_exec_query_memory_grants
• sys.dm_exec_query_plan
• sys.dm_exec_query_profiles
• Activación
• SET STATISTICS XML ON | SET STATISTICS PROFILE ON
• Xevents capturando query_post_execution_showplan
Demo
Live Query Statistics
Live Query Statistics
• Limitaciones
• Tiene que ser activado previa ejecución de la
query
• No se soportan procedimientos almacenados
compilados nativos
• Requiere
• SHOWPLAN para ver la pestaña resultados
• VIEW SERVER STATE para ver estadísticas live
El infierno del DBA
La aplicación
no responde
Rendimiento
aleatorio
Problemas
de regresion
Regresión de rendimiento
• El optimizador utiliza dos tipos de clave
• Conforme los parámetros cambian, el plan de
ejecución óptimo puede ser otro
Y si lo estima
incorrectamente?
Query Store: ¿Por qué?
Problemas
•Tiempo
detección
incidencias
•Tiempo
resolución del
problema
Soluciones
•Información de
rendimiento
historico
•Forzar plan
anterior
mediante GUI
Query Store: Cómo funciona
• Texto de
consulta
• Métricas de
rendimiento
• Historificado por
tiempo
• Permite forzado
de planes
• Configuracion de
recolección
Durability latency controlled by DB
option
DATA_FLUSH_INTERNAL_SECONDS
Query Store
Async write-
back
Compile
Execute
SQL
Plan store
Runtime
stats
Query
Store
schema
Compile
MSG
Execute MSG
Async write-back
Query
Store
Query Store: Cómo funciona
Existe en
plan caché?
Compilar y optimizar
query
Ejecucion query
Fin de ejecución
NO
Ejecutar query
Necesario
recompilar?
NO
Query Store
Obtener plan de caché
SI
SI
Enviar texto y plan
Nuevo plan forzado
Obtener plan forzado
Query Store: Almacenamiento
Captura de datos en memoria para minimizar E/S
Persistencia de datos asíncrona en background
Query execution Query Store
async
Compile
Execute
Query Store
plan store
Runtime
stats store
Internal
tables
Query text and plan
Query execute stats
Query Store: Lectura
Vistas de mezcla entre datos in-memory y on-disk
Los usuarios siempre ven el “ultimo” dato
Query execution Query Store
async
Compile
Execute
Query Store
plan store
Runtime
stats store
Internal
tables
Query text and plan
Query execute stats
Query Store views (TVF)
Query Store: Tracking
Tablas internas
Query
text
Query Plan
Runtime
stats
1 -n1 -n
Context
settings
sys.
Compile stats
query_store_query_text
query_context_settings
query_store_query
query_store_plan
Runtime stats
query_store_runtime_stats_inte
rval
query_store_runtime_stats
Vistas expuestas
One row per query text, per
plan affecting option
(example: ANSI NULLS
on/off)
One row per
plan (for each
query)
Runtim
e stats
interval
One row per
plan, per time
interval
(example: 5 min)
Query Store: configuraciones
• Operation mode [OFF | READ_ONLY | READ_WRITE]
• Actual | Requested (status)
• Data flush interval (minutes)
• Statistics Collection Interval (minutes)
• Max Size (MB)
• Capture Mode [None | ALL | AUTO]
• Stale Query Threshold (Days)
• Purge Query Data
Demo
Query Store
Query Store: Uso típico
Activar Query
Store
(ALTER DB)
Captura de
datos por
Query Store
Buscar
“patrónes
problemático
s”
Aplicar
FORCE PLAN
Query Store: Uso típico
• Queries con regresión de rendimiento
• Queries con regresión de rendimiento en
período de tiempo
• Queries con mayor coste en un período de
tiempo
• Coste de compilación de queries
• Forzar plan de ejecución
Encontrar y
arreglar
problemas de
regresión
Identificar
queries
“pesadas”
Realizar
análisis en
profundidad
de cargas de
trabajo
Reducir
riesgos ante
migraciones
Largo plazo/estratégicoCorto plazo/táctico
Query Store: Repaso
También puedes preguntar tus
dudas con el hashtag
#SQSummit en Twitter
ADAPTIVE BI FRAMEWORK
Te ayudaremos a mejorar la velocidad de desarrollo de tu plataforma de
analítica de negocio basada en nuestra experiencia:
•Diseña antes de construir
•Automatización de procesos por ETL
•Servicios de mentoring para ayudarte a conseguir mejores prácticas para la construcción
de procesos específicos y plataformas de analítica de negocio
•Muy fácil de mantener
SOLIDQ FLEX SERVICES
Con SolidQ Flex Services evitarás sustos, consiguiendo que tus sistemas
sean estables. Desde una solución sencilla de monitorización, hasta un
servicio de atención de incidencias 24/7, mantenimiento proactivo,
resolución de problemas y línea de soporte.
Todo con un coste fijo mensual… y tú dedica el tiempo a las cosas
importantes.
¡Gracias!
1 of 21

Recommended

Planes de ejecucion 2 by
Planes de ejecucion 2Planes de ejecucion 2
Planes de ejecucion 2Enrique Catala Bañuls
966 views6 slides
Datawarehouse como servicio en azure (sqldw) by
Datawarehouse como servicio en azure (sqldw)Datawarehouse como servicio en azure (sqldw)
Datawarehouse como servicio en azure (sqldw)Enrique Catala Bañuls
1.2K views50 slides
Migración a sql server 2016 by
Migración a sql server 2016Migración a sql server 2016
Migración a sql server 2016Enrique Catala Bañuls
3.1K views32 slides
TSQL menos frecuente desde SQL Server 2005 by
TSQL menos frecuente desde SQL Server 2005TSQL menos frecuente desde SQL Server 2005
TSQL menos frecuente desde SQL Server 2005SolidQ
935 views35 slides
Query store by
Query storeQuery store
Query storeSolidQ
464 views21 slides
Novedades en SQL Azure V12 by
Novedades en SQL Azure V12Novedades en SQL Azure V12
Novedades en SQL Azure V12SolidQ
291 views37 slides

More Related Content

What's hot

In memory by
In memoryIn memory
In memorySolidQ
965 views26 slides
BI real time analytics by
BI real time analyticsBI real time analytics
BI real time analyticsSolidQ
628 views45 slides
Aplicaciones escalables en la nube: mentiras y verdades by
Aplicaciones escalables en la nube: mentiras y verdadesAplicaciones escalables en la nube: mentiras y verdades
Aplicaciones escalables en la nube: mentiras y verdadesEnrique Catala Bañuls
1.3K views29 slides
Copias de seguridad y recuperación de desastres by
Copias de seguridad y recuperación de desastresCopias de seguridad y recuperación de desastres
Copias de seguridad y recuperación de desastresSolidQ
1.6K views32 slides
Sql server ha muerto, larga vida a sql server by
Sql server ha muerto, larga vida a sql serverSql server ha muerto, larga vida a sql server
Sql server ha muerto, larga vida a sql serverEnrique Catala Bañuls
303 views51 slides
Polybase by
PolybasePolybase
PolybaseSolidQ
2.7K views34 slides

What's hot(20)

In memory by SolidQ
In memoryIn memory
In memory
SolidQ965 views
BI real time analytics by SolidQ
BI real time analyticsBI real time analytics
BI real time analytics
SolidQ628 views
Copias de seguridad y recuperación de desastres by SolidQ
Copias de seguridad y recuperación de desastresCopias de seguridad y recuperación de desastres
Copias de seguridad y recuperación de desastres
SolidQ1.6K views
Polybase by SolidQ
PolybasePolybase
Polybase
SolidQ2.7K views
Otras Novedades (Always Encrypted, Row-Level Security, Mejoras AG) by SolidQ
 Otras Novedades (Always Encrypted, Row-Level Security, Mejoras AG) Otras Novedades (Always Encrypted, Row-Level Security, Mejoras AG)
Otras Novedades (Always Encrypted, Row-Level Security, Mejoras AG)
SolidQ307 views
SQL Server 2014 Nuevas Capacidades by Eduardo Castro
SQL Server 2014  Nuevas CapacidadesSQL Server 2014  Nuevas Capacidades
SQL Server 2014 Nuevas Capacidades
Eduardo Castro8K views
Toolbox SQL Server para optimización by SolidQ
Toolbox SQL Server para optimizaciónToolbox SQL Server para optimización
Toolbox SQL Server para optimización
SolidQ352 views
Novedades SQL Azure v12 by SolidQ
Novedades SQL Azure v12Novedades SQL Azure v12
Novedades SQL Azure v12
SolidQ129 views
In-Memory OLTP en SQL Server 2016 by Joseph Lopez
In-Memory OLTP en SQL Server 2016In-Memory OLTP en SQL Server 2016
In-Memory OLTP en SQL Server 2016
Joseph Lopez1.6K views
Conociendo los cambios de SQL Server a partir de 2012 a 2016 by Joseph Lopez
Conociendo los cambios de SQL Server a partir de 2012 a 2016Conociendo los cambios de SQL Server a partir de 2012 a 2016
Conociendo los cambios de SQL Server a partir de 2012 a 2016
Joseph Lopez2.8K views
SQL 2016 Mejoras en InMemory OLTP y Column Store Index by Eduardo Castro
SQL 2016 Mejoras en InMemory OLTP y Column Store IndexSQL 2016 Mejoras en InMemory OLTP y Column Store Index
SQL 2016 Mejoras en InMemory OLTP y Column Store Index
Eduardo Castro998 views
MS SQL Server 2014 - In-Memory OLTP by Joseph Lopez
MS SQL Server 2014 - In-Memory OLTPMS SQL Server 2014 - In-Memory OLTP
MS SQL Server 2014 - In-Memory OLTP
Joseph Lopez1.8K views
Como hacer tuning a capas de acceso a datos en .NET (dotNetConference2016) by Enrique Catala Bañuls
Como hacer tuning a capas de acceso a datos en .NET (dotNetConference2016)Como hacer tuning a capas de acceso a datos en .NET (dotNetConference2016)
Como hacer tuning a capas de acceso a datos en .NET (dotNetConference2016)
Novedades en SSAS 2016 by SolidQ
Novedades en SSAS 2016Novedades en SSAS 2016
Novedades en SSAS 2016
SolidQ558 views
Introducción al SQL Server 2016 Query Store by Eduardo Castro
Introducción al SQL Server 2016 Query StoreIntroducción al SQL Server 2016 Query Store
Introducción al SQL Server 2016 Query Store
Eduardo Castro914 views

Similar to Query store

Funciones del DBA by
Funciones del DBAFunciones del DBA
Funciones del DBAKarina Mantilla Macavilca
36 views6 slides
Buenas prácticas que debes seguir en la administración de tu SQL Server by
Buenas prácticas que debes seguir en la administración de tu SQL ServerBuenas prácticas que debes seguir en la administración de tu SQL Server
Buenas prácticas que debes seguir en la administración de tu SQL ServerSolidQ
389 views19 slides
Administrador de base de datos(dba) y tipos de bd by
Administrador de base de datos(dba) y tipos de bdAdministrador de base de datos(dba) y tipos de bd
Administrador de base de datos(dba) y tipos de bdPatrick Nick Alamo Ramos
59 views12 slides
Cuando QueryStore no sirve, ¿qué opciones tenemos? by
Cuando QueryStore no sirve, ¿qué opciones tenemos?Cuando QueryStore no sirve, ¿qué opciones tenemos?
Cuando QueryStore no sirve, ¿qué opciones tenemos?SolidQ
262 views23 slides
SQL Server Fundamentals 3ra Sesion by
SQL Server Fundamentals 3ra SesionSQL Server Fundamentals 3ra Sesion
SQL Server Fundamentals 3ra SesionJulián Castiblanco
586 views29 slides
Novedades deSQL Server 2014 en Motor Relacional | SolidQ Summit 2014 by
Novedades deSQL Server 2014 en Motor Relacional | SolidQ Summit 2014Novedades deSQL Server 2014 en Motor Relacional | SolidQ Summit 2014
Novedades deSQL Server 2014 en Motor Relacional | SolidQ Summit 2014SolidQ
478 views35 slides

Similar to Query store(20)

Buenas prácticas que debes seguir en la administración de tu SQL Server by SolidQ
Buenas prácticas que debes seguir en la administración de tu SQL ServerBuenas prácticas que debes seguir en la administración de tu SQL Server
Buenas prácticas que debes seguir en la administración de tu SQL Server
SolidQ389 views
Cuando QueryStore no sirve, ¿qué opciones tenemos? by SolidQ
Cuando QueryStore no sirve, ¿qué opciones tenemos?Cuando QueryStore no sirve, ¿qué opciones tenemos?
Cuando QueryStore no sirve, ¿qué opciones tenemos?
SolidQ262 views
Novedades deSQL Server 2014 en Motor Relacional | SolidQ Summit 2014 by SolidQ
Novedades deSQL Server 2014 en Motor Relacional | SolidQ Summit 2014Novedades deSQL Server 2014 en Motor Relacional | SolidQ Summit 2014
Novedades deSQL Server 2014 en Motor Relacional | SolidQ Summit 2014
SolidQ478 views
Query Store al rescate - PASS Spanish by Javier Villegas
Query Store al rescate - PASS Spanish Query Store al rescate - PASS Spanish
Query Store al rescate - PASS Spanish
Javier Villegas211 views
Bunsan: Cómo validamos 600 facturas por segundo en un miniservidor by Software Guru
Bunsan: Cómo validamos 600 facturas por segundo en un miniservidorBunsan: Cómo validamos 600 facturas por segundo en un miniservidor
Bunsan: Cómo validamos 600 facturas por segundo en un miniservidor
Software Guru275 views
Resumen de nuevas caracteriscitas de sql server 2008 by Salvador Ramos
Resumen de nuevas caracteriscitas de sql server 2008Resumen de nuevas caracteriscitas de sql server 2008
Resumen de nuevas caracteriscitas de sql server 2008
Salvador Ramos2K views
SQL Server 2014 Mejoras del DB Engine by Eduardo Castro
SQL Server 2014 Mejoras del DB EngineSQL Server 2014 Mejoras del DB Engine
SQL Server 2014 Mejoras del DB Engine
Eduardo Castro2.1K views
Diagnostico y resolución de problemas en sql server by SpanishPASSVC
Diagnostico y resolución de problemas en sql serverDiagnostico y resolución de problemas en sql server
Diagnostico y resolución de problemas en sql server
SpanishPASSVC2.9K views
Optimización de motores sql server 24 horas SQL Pass by Julián Castiblanco
Optimización de motores sql server 24 horas SQL PassOptimización de motores sql server 24 horas SQL Pass
Optimización de motores sql server 24 horas SQL Pass
02 troubleshooting essentials sql server profiler - sql pass peru by Guillermo Taylor
02 troubleshooting essentials   sql server profiler - sql pass peru02 troubleshooting essentials   sql server profiler - sql pass peru
02 troubleshooting essentials sql server profiler - sql pass peru
Guillermo Taylor831 views
Auditoría en SQL Server 2012 by Eduardo Castro
Auditoría en SQL Server 2012Auditoría en SQL Server 2012
Auditoría en SQL Server 2012
Eduardo Castro2.2K views
Cómo nos va a ayudar la tecnología de in memory en sql server 2014 para desem... by SpanishPASSVC
Cómo nos va a ayudar la tecnología de in memory en sql server 2014 para desem...Cómo nos va a ayudar la tecnología de in memory en sql server 2014 para desem...
Cómo nos va a ayudar la tecnología de in memory en sql server 2014 para desem...
SpanishPASSVC692 views

More from Enrique Catala Bañuls

Capas de acceso a datos .net escalables de verdad contra SQL Server by
Capas de acceso a datos .net escalables de verdad contra SQL ServerCapas de acceso a datos .net escalables de verdad contra SQL Server
Capas de acceso a datos .net escalables de verdad contra SQL ServerEnrique Catala Bañuls
534 views27 slides
Paralelismo en SQL Server by
Paralelismo en SQL ServerParalelismo en SQL Server
Paralelismo en SQL ServerEnrique Catala Bañuls
386 views30 slides
Técnicas avanzadas para resolver tus problemas de sql server by
Técnicas avanzadas para resolver tus problemas de sql serverTécnicas avanzadas para resolver tus problemas de sql server
Técnicas avanzadas para resolver tus problemas de sql serverEnrique Catala Bañuls
1.7K views28 slides
Capas de acceso a datos .NET escalables de verdad: el batido perfecto para el... by
Capas de acceso a datos .NET escalables de verdad: el batido perfecto para el...Capas de acceso a datos .NET escalables de verdad: el batido perfecto para el...
Capas de acceso a datos .NET escalables de verdad: el batido perfecto para el...Enrique Catala Bañuls
1.4K views26 slides
Planes de ejecución 3.0 sql 2016 y v next by
Planes de ejecución 3.0 sql 2016 y v nextPlanes de ejecución 3.0 sql 2016 y v next
Planes de ejecución 3.0 sql 2016 y v nextEnrique Catala Bañuls
1.3K views20 slides
Paralelismo en sql server by
Paralelismo en sql serverParalelismo en sql server
Paralelismo en sql serverEnrique Catala Bañuls
1.9K views29 slides

More from Enrique Catala Bañuls(20)

Capas de acceso a datos .net escalables de verdad contra SQL Server by Enrique Catala Bañuls
Capas de acceso a datos .net escalables de verdad contra SQL ServerCapas de acceso a datos .net escalables de verdad contra SQL Server
Capas de acceso a datos .net escalables de verdad contra SQL Server
Técnicas avanzadas para resolver tus problemas de sql server by Enrique Catala Bañuls
Técnicas avanzadas para resolver tus problemas de sql serverTécnicas avanzadas para resolver tus problemas de sql server
Técnicas avanzadas para resolver tus problemas de sql server
Capas de acceso a datos .NET escalables de verdad: el batido perfecto para el... by Enrique Catala Bañuls
Capas de acceso a datos .NET escalables de verdad: el batido perfecto para el...Capas de acceso a datos .NET escalables de verdad: el batido perfecto para el...
Capas de acceso a datos .NET escalables de verdad: el batido perfecto para el...
HERRAMIENTA CASE PARA MODELADO DE ALMACENES DE DATOS BASADA EN LENGUAJES ESPE... by Enrique Catala Bañuls
HERRAMIENTA CASE PARA MODELADO DE ALMACENES DE DATOS BASADA EN LENGUAJES ESPE...HERRAMIENTA CASE PARA MODELADO DE ALMACENES DE DATOS BASADA EN LENGUAJES ESPE...
HERRAMIENTA CASE PARA MODELADO DE ALMACENES DE DATOS BASADA EN LENGUAJES ESPE...
Escalabilidad horizontal y arquitecturas elásticas en Microsoft azure by Enrique Catala Bañuls
Escalabilidad horizontal y arquitecturas elásticas en Microsoft azureEscalabilidad horizontal y arquitecturas elásticas en Microsoft azure
Escalabilidad horizontal y arquitecturas elásticas en Microsoft azure
Guias y recomendaciones para instalar y configurar clusters de sql server by Enrique Catala Bañuls
Guias y recomendaciones para instalar y configurar clusters de sql serverGuias y recomendaciones para instalar y configurar clusters de sql server
Guias y recomendaciones para instalar y configurar clusters de sql server

Recently uploaded

Dominios de internet.pdf by
Dominios de internet.pdfDominios de internet.pdf
Dominios de internet.pdfNahomiBanchen
11 views2 slides
CÓMO PUBLICAR UNA PRESENTACIÓN GRÁFICA EN INTERNET.pptx by
CÓMO PUBLICAR UNA PRESENTACIÓN GRÁFICA EN INTERNET.pptxCÓMO PUBLICAR UNA PRESENTACIÓN GRÁFICA EN INTERNET.pptx
CÓMO PUBLICAR UNA PRESENTACIÓN GRÁFICA EN INTERNET.pptxdreadlockp5
8 views9 slides
Tarea15.pptx by
Tarea15.pptxTarea15.pptx
Tarea15.pptxillanlir
11 views6 slides
Fundamentos de Electricidad y Electronica 9-3 (1).docx by
Fundamentos de Electricidad y Electronica 9-3 (1).docxFundamentos de Electricidad y Electronica 9-3 (1).docx
Fundamentos de Electricidad y Electronica 9-3 (1).docxSamuel709479
7 views26 slides
MVelazco_Internet, Origenes y Evolucion.pptx by
MVelazco_Internet, Origenes  y Evolucion.pptxMVelazco_Internet, Origenes  y Evolucion.pptx
MVelazco_Internet, Origenes y Evolucion.pptxal223915
5 views39 slides
Fundamentos De Electricidad y Electrónica equipo 5.pdf by
Fundamentos De Electricidad y Electrónica equipo 5.pdfFundamentos De Electricidad y Electrónica equipo 5.pdf
Fundamentos De Electricidad y Electrónica equipo 5.pdfcoloradxmaria
14 views14 slides

Recently uploaded(20)

CÓMO PUBLICAR UNA PRESENTACIÓN GRÁFICA EN INTERNET.pptx by dreadlockp5
CÓMO PUBLICAR UNA PRESENTACIÓN GRÁFICA EN INTERNET.pptxCÓMO PUBLICAR UNA PRESENTACIÓN GRÁFICA EN INTERNET.pptx
CÓMO PUBLICAR UNA PRESENTACIÓN GRÁFICA EN INTERNET.pptx
dreadlockp58 views
Tarea15.pptx by illanlir
Tarea15.pptxTarea15.pptx
Tarea15.pptx
illanlir11 views
Fundamentos de Electricidad y Electronica 9-3 (1).docx by Samuel709479
Fundamentos de Electricidad y Electronica 9-3 (1).docxFundamentos de Electricidad y Electronica 9-3 (1).docx
Fundamentos de Electricidad y Electronica 9-3 (1).docx
Samuel7094797 views
MVelazco_Internet, Origenes y Evolucion.pptx by al223915
MVelazco_Internet, Origenes  y Evolucion.pptxMVelazco_Internet, Origenes  y Evolucion.pptx
MVelazco_Internet, Origenes y Evolucion.pptx
al2239155 views
Fundamentos De Electricidad y Electrónica equipo 5.pdf by coloradxmaria
Fundamentos De Electricidad y Electrónica equipo 5.pdfFundamentos De Electricidad y Electrónica equipo 5.pdf
Fundamentos De Electricidad y Electrónica equipo 5.pdf
coloradxmaria14 views
DELITOS INFORMATICOS EFRAIN CAMACHO 27462611 INFORMATICA III.pptx by davidsalazar63484
DELITOS INFORMATICOS EFRAIN CAMACHO 27462611 INFORMATICA III.pptxDELITOS INFORMATICOS EFRAIN CAMACHO 27462611 INFORMATICA III.pptx
DELITOS INFORMATICOS EFRAIN CAMACHO 27462611 INFORMATICA III.pptx
Tecnologías para la enseñanza virtual_cdc.pptx by CarmenerdelHuasco
Tecnologías para la enseñanza virtual_cdc.pptxTecnologías para la enseñanza virtual_cdc.pptx
Tecnologías para la enseñanza virtual_cdc.pptx
Fundamentos de Electricidad y Electronica 9-3 (1).docx by Samuel709479
Fundamentos de Electricidad y Electronica 9-3 (1).docxFundamentos de Electricidad y Electronica 9-3 (1).docx
Fundamentos de Electricidad y Electronica 9-3 (1).docx
Samuel7094795 views
TALLER DE ANÁLISIS DE ARTEFACTOS_.docx by DilanTabares
TALLER DE ANÁLISIS DE ARTEFACTOS_.docxTALLER DE ANÁLISIS DE ARTEFACTOS_.docx
TALLER DE ANÁLISIS DE ARTEFACTOS_.docx
DilanTabares6 views
actividadanlisisdeartefactos1-230424222159-fef7d8f3 (1).docx by MaraJos722801
actividadanlisisdeartefactos1-230424222159-fef7d8f3 (1).docxactividadanlisisdeartefactos1-230424222159-fef7d8f3 (1).docx
actividadanlisisdeartefactos1-230424222159-fef7d8f3 (1).docx
MaraJos7228015 views
Fundamentos de electricidad y electrónica.docx by DilanTabares
Fundamentos de electricidad y electrónica.docxFundamentos de electricidad y electrónica.docx
Fundamentos de electricidad y electrónica.docx
DilanTabares5 views
Tecnologías para la enseñanza virtual by mpachecocodem
Tecnologías para la enseñanza virtual Tecnologías para la enseñanza virtual
Tecnologías para la enseñanza virtual
mpachecocodem9 views
Tecnologías para la enseñanza virtual.pptx by exprosaavedra
Tecnologías para la enseñanza virtual.pptxTecnologías para la enseñanza virtual.pptx
Tecnologías para la enseñanza virtual.pptx
exprosaavedra14 views

Query store

  • 1. #SQSummit Query Store Enrique Catalá Bañuls Mentor ecatala@solidq.com
  • 2. Contenido de la sesión • Live Query Statistics (LQS) • Query Store
  • 3. El infierno del DBA La aplicación no responde Rendimiento aleatorio Problemas de regresion
  • 4. Live Query Statistics (LQS) • Identificación rápida de cuellos de botella • Ver en tiempo real • Filas/sec • Tiempo consumido • Progreso de operador • Warnings
  • 5. Live Query Statistics (LQS) • DMVs • sys.dm_exec_requests • sys.dm_exec_sql_text • sys.dm_exec_query_memory_grants • sys.dm_exec_query_plan • sys.dm_exec_query_profiles • Activación • SET STATISTICS XML ON | SET STATISTICS PROFILE ON • Xevents capturando query_post_execution_showplan
  • 7. Live Query Statistics • Limitaciones • Tiene que ser activado previa ejecución de la query • No se soportan procedimientos almacenados compilados nativos • Requiere • SHOWPLAN para ver la pestaña resultados • VIEW SERVER STATE para ver estadísticas live
  • 8. El infierno del DBA La aplicación no responde Rendimiento aleatorio Problemas de regresion
  • 9. Regresión de rendimiento • El optimizador utiliza dos tipos de clave • Conforme los parámetros cambian, el plan de ejecución óptimo puede ser otro Y si lo estima incorrectamente?
  • 10. Query Store: ¿Por qué? Problemas •Tiempo detección incidencias •Tiempo resolución del problema Soluciones •Información de rendimiento historico •Forzar plan anterior mediante GUI
  • 11. Query Store: Cómo funciona • Texto de consulta • Métricas de rendimiento • Historificado por tiempo • Permite forzado de planes • Configuracion de recolección Durability latency controlled by DB option DATA_FLUSH_INTERNAL_SECONDS Query Store Async write- back Compile Execute SQL Plan store Runtime stats Query Store schema Compile MSG Execute MSG Async write-back Query Store
  • 12. Query Store: Cómo funciona Existe en plan caché? Compilar y optimizar query Ejecucion query Fin de ejecución NO Ejecutar query Necesario recompilar? NO Query Store Obtener plan de caché SI SI Enviar texto y plan Nuevo plan forzado Obtener plan forzado
  • 13. Query Store: Almacenamiento Captura de datos en memoria para minimizar E/S Persistencia de datos asíncrona en background Query execution Query Store async Compile Execute Query Store plan store Runtime stats store Internal tables Query text and plan Query execute stats
  • 14. Query Store: Lectura Vistas de mezcla entre datos in-memory y on-disk Los usuarios siempre ven el “ultimo” dato Query execution Query Store async Compile Execute Query Store plan store Runtime stats store Internal tables Query text and plan Query execute stats Query Store views (TVF)
  • 15. Query Store: Tracking Tablas internas Query text Query Plan Runtime stats 1 -n1 -n Context settings sys. Compile stats query_store_query_text query_context_settings query_store_query query_store_plan Runtime stats query_store_runtime_stats_inte rval query_store_runtime_stats Vistas expuestas One row per query text, per plan affecting option (example: ANSI NULLS on/off) One row per plan (for each query) Runtim e stats interval One row per plan, per time interval (example: 5 min)
  • 16. Query Store: configuraciones • Operation mode [OFF | READ_ONLY | READ_WRITE] • Actual | Requested (status) • Data flush interval (minutes) • Statistics Collection Interval (minutes) • Max Size (MB) • Capture Mode [None | ALL | AUTO] • Stale Query Threshold (Days) • Purge Query Data
  • 18. Query Store: Uso típico Activar Query Store (ALTER DB) Captura de datos por Query Store Buscar “patrónes problemático s” Aplicar FORCE PLAN
  • 19. Query Store: Uso típico • Queries con regresión de rendimiento • Queries con regresión de rendimiento en período de tiempo • Queries con mayor coste en un período de tiempo • Coste de compilación de queries • Forzar plan de ejecución
  • 20. Encontrar y arreglar problemas de regresión Identificar queries “pesadas” Realizar análisis en profundidad de cargas de trabajo Reducir riesgos ante migraciones Largo plazo/estratégicoCorto plazo/táctico Query Store: Repaso
  • 21. También puedes preguntar tus dudas con el hashtag #SQSummit en Twitter ADAPTIVE BI FRAMEWORK Te ayudaremos a mejorar la velocidad de desarrollo de tu plataforma de analítica de negocio basada en nuestra experiencia: •Diseña antes de construir •Automatización de procesos por ETL •Servicios de mentoring para ayudarte a conseguir mejores prácticas para la construcción de procesos específicos y plataformas de analítica de negocio •Muy fácil de mantener SOLIDQ FLEX SERVICES Con SolidQ Flex Services evitarás sustos, consiguiendo que tus sistemas sean estables. Desde una solución sencilla de monitorización, hasta un servicio de atención de incidencias 24/7, mantenimiento proactivo, resolución de problemas y línea de soporte. Todo con un coste fijo mensual… y tú dedica el tiempo a las cosas importantes. ¡Gracias!