SlideShare una empresa de Scribd logo
1 de 56
SQL Server 2016
Query Store
Bienvenida
• Ing. Eduardo Castro, PhD
• MVP de Microsoft SQL Server
• PASS Regional de Mentor
• PASS Board of Directors
• ecastro@simsasys.com
• http://www.youtube.com/eduardocastrom
Material de Referencia
SQL 2016 – What’s New? David Cobb
SQL Server Evolution. Lindsey Allen
The SQL Server 2016 Query Store: Overview and Architecture. Enrico
van de Laar
Agenda
4
• Información general y de Query Store
Arquitecture
• Query Store Reporting
• Acceso a la información de consulta Store a
través de DMV
• Forzar planes de ejecución utilizando el Query
Store
• Analizar el rendimiento de Query Store
Cuando el rendimiento no es bueno ...
Base de datos
no funciona
Web site
está caído
Imposible de
predecir/Cual
es la causa?
Problema
desempeño
temporal Regresión
causada por
nueva versión
Actualizació
n de DB
Con Query Storese puede ...
Buscar y corregir
las regresiones del
plan
Identificar los
principales
consumidores de
recursos
Reducir riesgo
actualización de
SQL Server
Profundamente
analizar los
patrones de carga
de trabajo
el Query Store
7
• El Query Store es una característica que nos
puede ayudar a solucionar problemas de
rendimiento de las consultas, captura de
información de ejecución de la consulta, tales
como el número de ejecuciones o la duración
promedio de una consulta.
• El Query Store también se captura cada plan de
ejecución que se ha generado para una consulta
específica y se puede entonces decidir qué plan
de ejecución desea que SQL Server utilice para
esa consulta específica.
Los usos más comunes para el Query Store
8
• Encontrar y corregir rápidamente una regresión
desempeño de los planes forzando el plan de
consulta previo.
• Forzar las consultas que recientemente han
retrocedido en el rendimiento debido a cambios
en el plan de ejecución.
• Determinar el número de veces que una
consulta se ejecuta en una ventana de tiempo
dado, ayuda a un DBA en problemas de
recursos de rendimiento y en la resolución de
problemas.
Los usos más comunes para el Query Store
9
• Identificar las principales n consultas (por el
tiempo de ejecución, el consumo de memoria,
etc.) en los últimos x horas.
• Auditar la historia de los planes de ejecución
para una consulta determinada.
• Analizar los recursos (CPU, E/S y la memoria) los
patrones de uso de una base de datos en
particular.
Los usos más comunes para el Query Store
10
• A pesar de que ya es posible para nosotros realizar
muchas de las mismas acciones que hace el Query
Store en las versiones anteriores de SQL Server
• La captura de los contadores de rendimiento
específicos de tiempo de ejecución de consulta o
forzar planes de ejecución es una tarea compleja y
especializada.
• El Query Store hace que estas acciones mucho más
fácil de usar y disponible a todo el mundo sin
necesidad de volver a escribir cualquier pregunta.
Ventajas del Query Store
11
• El Query Store se integra directamente en SQL
Server, esto significa que puede capturar la
información de tiempo de ejecución de consulta
directamente en el nivel de la fuente
• Sin el Query Store con frecuencia dependemos del
caché del plan, lugar donde se almacenan los
planes de ejecución en memoria, cuando es
necesario analizar los planes de ejecución de la
consulta.
• Sin embargo, si se reinicia SQL Server, todos los
planes de ejecución serán removidos de la caché y
se ven obligados a empezar de nuevo.
Ventajas de el Query Store
12
• El Query Store, en cambio, almacena la
información que captura en el disco, lo que
significa que un reinicio de SQL Server no afecta
a ninguna información que ha sido capturado
en el Query Store
• El Query Store se puede habilitar en una base
de datos individual
• Una gran cantidad de información está
disponible directamente a través de reportes de
consulta integrados
Query Store Arquitectura
13
Query StoreArquitectura
14
• El Query Store consiste en realidad dos “stores",
• El Plan Store y el Runtime Stats Store.
• Estos “stores” son objetos en memoria que
contienen información de la consulta.
Query Store Arquitectura
15
• Cuando una consulta se ejecuta en una base de
datos que tiene habilitada el Query Store, el plan de
la consulta compilado se escribe en el Query Store
Plan y la información de tiempo de ejecución de la
consulta se guarda en el Runtime Stats Store.
• Esta información se almacena inicialmente en
memoria. Después de un intervalo específico la
información escribe en el disco de forma asíncrona
para guardar la información.
• El Query Store escribe los planes de ejecución y las
estadísticas de tiempo de ejecución en Primary
Filegroup de la base de datos que ejecútó la
consulta.
Query Store Arquitectura
dieciséis
• Al guardar los planes de ejecución y las estadísticas
de tiempo de ejecución en el disco, la información
dentro de el Query Store no se pierde cada vez que
se produce un reinicio de SQL Server.
• Esto es más valioso que el análisis de los planes de
ejecución dentro del caché, ya que el caché del plan
estará vacía de nuevo cada vez que se reinicie SQL
Server.
• Lo mismo ocurre con la sys.dm_exec_query_stats
DMV, que se utiliza con frecuencia para analizar la
información de tiempo de ejecución de la consulta.
Este DMV también se restablecerá después de un
reinicio de SQL Server.
Query Store Flush
17
• Por defecto se guarda a disco con intervalo que
se establece en 15 minutos, esto provoca una
sobrecarga de rendimiento promedio de 3-5%
cuando se ha activado el Query Store.
• Cuanto menor sea el intervalo, mayor será el
impacto en el rendimiento
• Nuevos planes de ejecución que son capturados
por primera vez por el Query Store se guardan
en disco de forma más rápida que planes de
ejecución que ya existen dentro de el Query
Store
Impacto del Query Store
18
• Existe una Table Defined Function (TDF) que
toma datos todavía en la memoria y también
información que ya fue persistida en disco
• TDF (QUERY_STORE_RUNTIME_STATS_IN_MEM)
toma los datos de la memoria y un Clustered
Index Scan en el plan_persist_runtime_stats que
toma los datos desde el disco
Impacto del Query Store
19
Habilitar Query Store
20
• ALTER DATABASE SET AdventureWorks2012
QUERY_STORE = ON;
Opciones de Query Store
21
Examinando las opciones del Query Store
22
• " Operation Mode (Actual)” no se puede
cambiar, ya que sólo indica el modo actual deñ
Query Store. El valor puede ser Off, Read Write
or Read.
• Cuando el Query Store tiene un modo de Read
no se guardan nuevos planes de ejecución o las
estadísticas de tiempo de ejecución de la
consulta.
Examinando las opciones del Query Store
23
• El " Data Flush Interval (Minutes)” le permite establecer el
intervalo de la rapidez que se guarda la información
• Los Execution Plans y los Query Runtime Statistics se están
guardando de la memoria en el disco. Por defecto esta
opción se establece en 15 minutos.
• Cambiar el intervalo en un valor más bajo significa que la
información de Query Store dentro de la memoria de SQL
Server se escribe en el disco más rápido, esto puede tener un
impacto negativo en el rendimiento de la Instancia.
• Establecer el valor en un intervalo más alto significa que el
memory flush es menor, pero también significa más
información del Query Store que reside en la memoria se
perderán cuando si se produce un reinicio de SQL Server.
Examinando las opciones del Query Store
24
• “Statistics Collection Interval" le permite configurar un
nuevo intervalo.
• Éste le permite configurar el nivel de granularidad de las
estadísticas de tiempo de ejecución. Por defecto se
establece en 1 hora.
• Básicamente esto significa que se establece el intervalo
de agregación de las estadísticas de tiempo de
ejecución de consulta dentro de el Query Store.
• Cuanto menor sea el valor de esta opción más fina es la
granularidad de las estadísticas de tiempo de ejecución,
pero esto también significa que más intervalos se
producen y se requiere por lo tanto más espacio para
almacenar las estadísticas de consulta de tiempo de
ejecución en el disco.
Examinando las opciones del Query Store
25
• El " Max Size (MB)” le permite configurar el tamaño
máximo de el Query Store.
• Por defecto, este valor se establece en 100 MB. Una
cosa importante a tener en cuenta es que los datos
dentro de el Query Store se almacena dentro de la
Primary File Group de la base de datos que tiene
habilitada el Query Store.
• Cambiar la opción por un valor más alto le permitirá
almacenar más datos del Query Store pero también
significa que su base de datos crecerá.
• Cada vez que el Query Store llega al tamaño máximo
configurado por esta opción el modo de operación
cambiará automáticamente a sólo lectura y no se
recolectarán nuevos datos.
Examinando las opciones del Query Store
26
• La opción " Query Store Capture Mode" permite filtrar
las consultas con los tiempos de ejecución muy bajo.
• Por defecto, la opción se establece en “All” lo que
significa cada consulta ejecutada en contra de la base
de datos se registra en el Query Store.
• Al establecer la opción en “Auto” el Query Store filtrará
consultas insignificantes.
• Qué consultas se filtran está determinada por un
proceso interno y no tenemos ninguna influencia sobre
ella. El coste final de esta opción es Ninguno cual
significa que no hay nuevos planes de ejecución o las
estadísticas de tiempo de ejecución de consulta son
capturados.
Examinando las opciones del Query Store
27
• " Size Based Cleanup Mode " se puede
configurar para que automáticamente el Query
Store limpie los datos una vez que alcanza el
90% del tamaño máximo de Query Store
• La limpieza eliminará los datos de consulta más
antigua y menos costosa y se detiene la
limpieza en el 80% del “Max Size (MB)” .
• Por defecto esta opción está desactivada. Si se
establece en Auto permitirá a la limpieza
automática.
Examinando las opciones del Query Store
28
• "Stale Query Threshold (Days)” establece cómo
los datos de consulta es retenida dentro de el
Query Store.
• Por defecto, la configuración se establece en
367 días. El valor de esta opción debe reflejar
sus necesidades de análisis históricos.
• Si no necesita almacenar información de
consulta por 376 días, pero por un período de
tiempo más corto se puede bajar esta opción
por lo que no está perdiendo espacio dentro de
el Query Store.
Query Store opciones por TSQL
29
GUI Option T-SQL Option
Operation Mode (Requested) OPERATION_MODE
Data Flush Interval (Minutes) DATA_FLUSH_INTERVAL_SECONDS
Statistics Collection Interval INTERVAL_LENGHT_MINUTES
Max Size (MB) MAX_STORAGE_SIZE_MB
Query Store Capture Mode QUERY_CAPTURE_MODE
Size Based Cleanup Mode SIZE_BASED_CLEANUP_MODE
Stale Query Threshold (Days) CLEANUP_POLICY (STALE_QUERY_THRESHOLD_DAYS)
MAX_PLANS_PER_QUERY
Query Store opciones por TSQL
30
• ALTER DATABASE [db_name]SET
QUERY_STORE ( [Query Store options] );
• ALTER DATABASE AdventureWorksSET
QUERY_STORE ( MAX_STORAGE_SIZE_MB =
250 );
Query Store opciones por TSQL
31
ALTER DATABASE AdventureWorks
SET QUERY_STORE
(
MAX_STORAGE_SIZE_MB = 250,
SIZE_BASED_CLEANUP_MODE = AUTO,
CLEANUP_POLICY =
(STALE_QUERY_THRESHOLD_DAYS = 30)
);
-- Purge Query Data
ALTER DATABASE [db_name] SET QUERY_STORE
CLEAR;
Query Store
Query Store Built-in Reporting
33
Query Store Built-in Reporting
34
• Regressed Queries. Una 'consulta ha retrocedido' si
recibió un plan de ejecución peor al que tenía antes.
• Este reporte muestra todas las consultas que han
tenido su plan de ejecución retrocedido en el
tiempo.
• Overall Resource Consumption. Muestra un
resumen de las estadísticas de tiempo de ejecución
de las consultas durante un intervalo de tiempo
específico. Todas las estadísticas de las consultas
que se han ejecutado dentro del intervalo de
tiempo específico se agregan para dar una visión
general del rendimiento de la consulta.
Built-in Query Storede reportes
35
• Top Resource Consuming Queries. Muestra las
consultas más caros (sobre la base de criterios
de selección personalizados) que se ejecutaron
durante un intervalo de tiempo específico.
• Tracked Queries. Muestra las estadísticas de
tiempo de ejecución para la ejecución de la
consulta, y le permite inspeccionar los diversos
planes de ejecución de una consulta específica.
Regressed Queries Report
36
Regressed Queries Report
37
Informe de consumo de recursos en general
38
DMV Query Store
39
• Nuevos DMV que se introdujeron en SQL Server
2016 para soportar el Query Store
Sys.database_query_store_options
Sys.query_store_query
Sys.query_store_query_text
Sys.query_context_settings
Sys.query_store_plan
Sys.query_store_runtime_stats
Sys.query_store_runtime_stats_interval
DMV Query Store
40
• El DMV sys.query_store_query se registra a nivel
de la instrucción SQL.
-- Empty the Query Store
ALTER DATABASE AdventureWorks SET QUERY_STORE CLEAR;
-- Statement 1
SELECT TOP 100 *
FROM Person.Address;
-- Statement 2
SELECT TOP 100 *
FROM Sales.SalesOrderDetail;
DMV Query Store
41
-- Query sys.query_store_query
SELECT
query_id,
qt.query_sql_text AS 'Statement Text',
[text] AS 'Query Batch Text'
FROM sys.query_store_query q
CROSS APPLY
sys.dm_exec_sql_text(last_compile_batch_sql_handle)
INNER JOIN sys.query_store_query_text qt
ON q.query_text_id = qt.query_text_id;
DMV Query Store
42
• context_settings_id
Este número enlaza el sys.query_store_query DMV
para el sys.query_context_settings
• sys.query_context_settings
Registra información sobre el contexto en el que
se ejecuta la consulta
• last_compile_batch_sql_handle
Devuelve el query text handle de la consulta SQL
Sys.query_store_query_text
43
• sys.query_store_query_text
Devuelve el texto de consulta de la instrucción
SQL
Sys.query_context_settings
44
• sys.query_context_settings
devuelve la configuración de contexto bajo el
cual se ejecuta la instrucción SQL.
Sys.query_context_settings
45
SELECT
qsq.query_id,
qsqt.query_sql_text,
qs.plan_handle
FROM sys.query_store_query qsq
INNER JOIN sys.dm_exec_query_stats qs
ON qsq.last_compile_batch_sql_handle = qs.sql_handle
INNER JOIN sys.query_store_query_text qsqt
ON qsq.query_text_id = qsqt.query_text_id
ORDER BY qsq.query_id
Sys.query_store_plan
46
• sys.query_store_plan
almacena información sobre los planes de
ejecución que está relacionado con las
consultas que son capturados dentro de el
Query Store.
• Devuelve información, tales como la versión de
motor utilizaqdo, el nivel de compatibilidad y si
el plan era trivial.
Sys.query_store_plan
47
SELECT
plan_id,
query_id,
CAST(query_plan AS XML) AS 'Execution Plan'
FROM sys.query_store_plan;
Sys.query_store_runtime_stats
48
• Dentro de sys.query_store_runtime_stats , las
métricas de rendimiento de las consultas son
capturados y agregados
Top 10 consultas más caros basados ​​en
tiempo de ejecución promedio
49
SELECT TOP 10
qt.query_sql_text,
CAST(query_plan AS XML) AS 'Execution Plan',
rs.avg_duration
FROM sys.query_store_plan qp
INNER JOIN sys.query_store_query q
ON qp.query_id = q.query_id
INNER JOIN sys.query_store_query_text qt
ON q.query_text_id = qt.query_text_id
INNER JOIN sys.query_store_runtime_stats rs
ON qp.plan_id = rs.plan_id
ORDER BY rs.avg_duration DESC;
Consultar planes paralelos
50
SELECT
qt.query_sql_text,
CAST(query_plan AS XML) AS 'Execution Plan',
rs.avg_duration
FROM sys.query_store_plan qp
INNER JOIN sys.query_store_query q
ON qp.query_id = q.query_id
INNER JOIN sys.query_store_query_text qt
ON q.query_text_id = qt.query_text_id
INNER JOIN sys.query_store_runtime_stats rs
ON qp.plan_id = rs.plan_id
WHERE rs.last_dop > 1;
Regresión de planes
51
• Plan de regresión ocurre cuando el optimizador
de consultas de SQL Server compila un nuevo
plan de ejecución para una consulta que ejecuta
(mucho) peor que el anterior plan de ejecución
para esa misma consulta.
• Hay muchas razones por las que el optimizador
de consultas piensa que se necesita un nuevo
plan. Algunos ejemplos incluyen un cambio en
el número de filas dentro de una tabla, una
adición o eliminación de un índice o un cambio
en el esquema de la tabla
Regresión de planes
52
• Plan de ejecución con id 113 ejecuta mucho
peor, en función de su duración, que el plan con
id 114
Forzado de Plan
53
Plan Forcing en SQL 2016
55
• EXEC sp_query_store_force_plan 136, 146;
Demostración
Query Store
56
SQL Server 2016
Query Store

Más contenido relacionado

La actualidad más candente

Introducción a los sistemas distribuidos
Introducción a los sistemas distribuidosIntroducción a los sistemas distribuidos
Introducción a los sistemas distribuidosRene Guaman-Quinche
 
MongoDB presentation
MongoDB presentationMongoDB presentation
MongoDB presentationHyphen Call
 
JS Fest 2019. Ryan Dahl. Deno, a new way to JavaScript
JS Fest 2019. Ryan Dahl. Deno, a new way to JavaScriptJS Fest 2019. Ryan Dahl. Deno, a new way to JavaScript
JS Fest 2019. Ryan Dahl. Deno, a new way to JavaScriptJSFestUA
 
42 preguntas que deberias hacerte antes de abordar un proyecto
42 preguntas que deberias hacerte antes de abordar un proyecto42 preguntas que deberias hacerte antes de abordar un proyecto
42 preguntas que deberias hacerte antes de abordar un proyectoBlogdelfreelance .com
 
Arquitectura y caracteristicas de los sistemas operativos windows
Arquitectura y caracteristicas de los sistemas operativos windowsArquitectura y caracteristicas de los sistemas operativos windows
Arquitectura y caracteristicas de los sistemas operativos windowsslipkdany21
 
Bases de datos centralizadas y bases de datos
Bases de datos centralizadas y bases de datosBases de datos centralizadas y bases de datos
Bases de datos centralizadas y bases de datosJavier Martínez Pedrajas
 
Introducción a ASP.NET MVC
Introducción a ASP.NET MVCIntroducción a ASP.NET MVC
Introducción a ASP.NET MVCSebastián Rocco
 
Software management in linux
Software management in linuxSoftware management in linux
Software management in linuxnejadmand
 
Proyecto de software
Proyecto de softwareProyecto de software
Proyecto de softwaremonik1002
 
SGBD de Facebook, Twitter, YouTube, Google y Uber
SGBD de Facebook, Twitter, YouTube, Google y UberSGBD de Facebook, Twitter, YouTube, Google y Uber
SGBD de Facebook, Twitter, YouTube, Google y UberJuan Isaac Valle Arellano
 
Taller No. 1 Introducción a Bases de Datos..pdf
Taller No. 1 Introducción a Bases de Datos..pdfTaller No. 1 Introducción a Bases de Datos..pdf
Taller No. 1 Introducción a Bases de Datos..pdfLIZETHHASLEIDYPOLOCH
 
Cuentas de usuario
Cuentas de usuarioCuentas de usuario
Cuentas de usuarioLuis Asencio
 
SO Unidad 3: Administración de memoria y sistemas de archivos
SO Unidad 3: Administración de memoria y sistemas de archivosSO Unidad 3: Administración de memoria y sistemas de archivos
SO Unidad 3: Administración de memoria y sistemas de archivosFranklin Parrales Bravo
 
POE Unidad 3: Aplicaciones visuales orientadas a eventos con acceso a base de...
POE Unidad 3: Aplicaciones visuales orientadas a eventos con acceso a base de...POE Unidad 3: Aplicaciones visuales orientadas a eventos con acceso a base de...
POE Unidad 3: Aplicaciones visuales orientadas a eventos con acceso a base de...Franklin Parrales Bravo
 
Hadoop Distributed File System
Hadoop Distributed File SystemHadoop Distributed File System
Hadoop Distributed File Systemelliando dias
 

La actualidad más candente (20)

Introducción a los sistemas distribuidos
Introducción a los sistemas distribuidosIntroducción a los sistemas distribuidos
Introducción a los sistemas distribuidos
 
MongoDB presentation
MongoDB presentationMongoDB presentation
MongoDB presentation
 
¿Que son los microservicios?
¿Que son los microservicios?¿Que son los microservicios?
¿Que son los microservicios?
 
JS Fest 2019. Ryan Dahl. Deno, a new way to JavaScript
JS Fest 2019. Ryan Dahl. Deno, a new way to JavaScriptJS Fest 2019. Ryan Dahl. Deno, a new way to JavaScript
JS Fest 2019. Ryan Dahl. Deno, a new way to JavaScript
 
42 preguntas que deberias hacerte antes de abordar un proyecto
42 preguntas que deberias hacerte antes de abordar un proyecto42 preguntas que deberias hacerte antes de abordar un proyecto
42 preguntas que deberias hacerte antes de abordar un proyecto
 
Arquitectura y caracteristicas de los sistemas operativos windows
Arquitectura y caracteristicas de los sistemas operativos windowsArquitectura y caracteristicas de los sistemas operativos windows
Arquitectura y caracteristicas de los sistemas operativos windows
 
Bases de datos centralizadas y bases de datos
Bases de datos centralizadas y bases de datosBases de datos centralizadas y bases de datos
Bases de datos centralizadas y bases de datos
 
Introducción a ASP.NET MVC
Introducción a ASP.NET MVCIntroducción a ASP.NET MVC
Introducción a ASP.NET MVC
 
Software management in linux
Software management in linuxSoftware management in linux
Software management in linux
 
Linux taller
Linux tallerLinux taller
Linux taller
 
Proyecto de software
Proyecto de softwareProyecto de software
Proyecto de software
 
SGBD de Facebook, Twitter, YouTube, Google y Uber
SGBD de Facebook, Twitter, YouTube, Google y UberSGBD de Facebook, Twitter, YouTube, Google y Uber
SGBD de Facebook, Twitter, YouTube, Google y Uber
 
Taller No. 1 Introducción a Bases de Datos..pdf
Taller No. 1 Introducción a Bases de Datos..pdfTaller No. 1 Introducción a Bases de Datos..pdf
Taller No. 1 Introducción a Bases de Datos..pdf
 
Cuentas de usuario
Cuentas de usuarioCuentas de usuario
Cuentas de usuario
 
ÁLGEBRA RELACIONAL
ÁLGEBRA RELACIONALÁLGEBRA RELACIONAL
ÁLGEBRA RELACIONAL
 
SO Unidad 3: Administración de memoria y sistemas de archivos
SO Unidad 3: Administración de memoria y sistemas de archivosSO Unidad 3: Administración de memoria y sistemas de archivos
SO Unidad 3: Administración de memoria y sistemas de archivos
 
Spark SQL
Spark SQLSpark SQL
Spark SQL
 
Tp nro.1 21 de mayo
Tp nro.1   21 de mayoTp nro.1   21 de mayo
Tp nro.1 21 de mayo
 
POE Unidad 3: Aplicaciones visuales orientadas a eventos con acceso a base de...
POE Unidad 3: Aplicaciones visuales orientadas a eventos con acceso a base de...POE Unidad 3: Aplicaciones visuales orientadas a eventos con acceso a base de...
POE Unidad 3: Aplicaciones visuales orientadas a eventos con acceso a base de...
 
Hadoop Distributed File System
Hadoop Distributed File SystemHadoop Distributed File System
Hadoop Distributed File System
 

Destacado

Vistazo a lo nuevo en SQL Server 2016
Vistazo a lo nuevo en SQL Server 2016Vistazo a lo nuevo en SQL Server 2016
Vistazo a lo nuevo en SQL Server 2016Eduardo Castro
 
Consideraciones de sql server hardware
Consideraciones de sql server hardwareConsideraciones de sql server hardware
Consideraciones de sql server hardwareEduardo Castro
 
SQL Server Query Processor
SQL Server Query ProcessorSQL Server Query Processor
SQL Server Query ProcessorEduardo Castro
 
Que hay de nuevo en SQL 2016 Analysis Services
Que hay de nuevo en SQL 2016 Analysis ServicesQue hay de nuevo en SQL 2016 Analysis Services
Que hay de nuevo en SQL 2016 Analysis ServicesEduardo Castro
 
Consideraciones de discos sql server hardware
Consideraciones de discos sql server hardwareConsideraciones de discos sql server hardware
Consideraciones de discos sql server hardwareEduardo Castro
 
Servicios cognitivos y su integración
Servicios cognitivos y su integraciónServicios cognitivos y su integración
Servicios cognitivos y su integraciónEduardo Castro
 
Consideraciones de memoria sql server hardware
Consideraciones de memoria sql server hardwareConsideraciones de memoria sql server hardware
Consideraciones de memoria sql server hardwareEduardo Castro
 
Introduccion a Big Data stack
Introduccion a Big Data stackIntroduccion a Big Data stack
Introduccion a Big Data stackEduardo Castro
 
SQL 2016 Mejoras en InMemory OLTP y Column Store Index
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 IndexEduardo Castro
 
Smart Grid Big Data e IoT
Smart Grid Big Data e IoTSmart Grid Big Data e IoT
Smart Grid Big Data e IoTEduardo Castro
 
Servicios cognitivos y su integración
Servicios cognitivos y su integraciónServicios cognitivos y su integración
Servicios cognitivos y su integraciónEduardo Castro
 
Introduccion a Azure Machine Learning
Introduccion a Azure Machine LearningIntroduccion a Azure Machine Learning
Introduccion a Azure Machine LearningEduardo Castro
 
SQL Server 2016 Reporting Services
SQL Server 2016 Reporting ServicesSQL Server 2016 Reporting Services
SQL Server 2016 Reporting ServicesEduardo Castro
 
Azure sql database escalabilidad
Azure sql database escalabilidadAzure sql database escalabilidad
Azure sql database escalabilidadEduardo Castro
 
Vistazo a SQL Server 2016
Vistazo a SQL Server 2016Vistazo a SQL Server 2016
Vistazo a SQL Server 2016Eduardo Castro
 
Resumen del Microsoft Big Data Stack
Resumen del Microsoft Big Data StackResumen del Microsoft Big Data Stack
Resumen del Microsoft Big Data StackEduardo Castro
 
Mejores prácticas desarrollo de base de datos
Mejores prácticas desarrollo de base de datos Mejores prácticas desarrollo de base de datos
Mejores prácticas desarrollo de base de datos Eduardo Castro
 
How to Make Awesome SlideShares: Tips & Tricks
How to Make Awesome SlideShares: Tips & TricksHow to Make Awesome SlideShares: Tips & Tricks
How to Make Awesome SlideShares: Tips & TricksSlideShare
 

Destacado (20)

Vistazo a lo nuevo en SQL Server 2016
Vistazo a lo nuevo en SQL Server 2016Vistazo a lo nuevo en SQL Server 2016
Vistazo a lo nuevo en SQL Server 2016
 
Consideraciones de sql server hardware
Consideraciones de sql server hardwareConsideraciones de sql server hardware
Consideraciones de sql server hardware
 
SQL Server Query Processor
SQL Server Query ProcessorSQL Server Query Processor
SQL Server Query Processor
 
Que hay de nuevo en SQL 2016 Analysis Services
Que hay de nuevo en SQL 2016 Analysis ServicesQue hay de nuevo en SQL 2016 Analysis Services
Que hay de nuevo en SQL 2016 Analysis Services
 
Microsoft R Server
Microsoft R ServerMicrosoft R Server
Microsoft R Server
 
Consideraciones de discos sql server hardware
Consideraciones de discos sql server hardwareConsideraciones de discos sql server hardware
Consideraciones de discos sql server hardware
 
Servicios cognitivos y su integración
Servicios cognitivos y su integraciónServicios cognitivos y su integración
Servicios cognitivos y su integración
 
Consideraciones de memoria sql server hardware
Consideraciones de memoria sql server hardwareConsideraciones de memoria sql server hardware
Consideraciones de memoria sql server hardware
 
Introduccion a Big Data stack
Introduccion a Big Data stackIntroduccion a Big Data stack
Introduccion a Big Data stack
 
SQL 2016 Mejoras en InMemory OLTP y Column Store Index
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
 
Smart Grid Big Data e IoT
Smart Grid Big Data e IoTSmart Grid Big Data e IoT
Smart Grid Big Data e IoT
 
Servicios cognitivos y su integración
Servicios cognitivos y su integraciónServicios cognitivos y su integración
Servicios cognitivos y su integración
 
Introduccion a Azure Machine Learning
Introduccion a Azure Machine LearningIntroduccion a Azure Machine Learning
Introduccion a Azure Machine Learning
 
Microsoft R Server
Microsoft R ServerMicrosoft R Server
Microsoft R Server
 
SQL Server 2016 Reporting Services
SQL Server 2016 Reporting ServicesSQL Server 2016 Reporting Services
SQL Server 2016 Reporting Services
 
Azure sql database escalabilidad
Azure sql database escalabilidadAzure sql database escalabilidad
Azure sql database escalabilidad
 
Vistazo a SQL Server 2016
Vistazo a SQL Server 2016Vistazo a SQL Server 2016
Vistazo a SQL Server 2016
 
Resumen del Microsoft Big Data Stack
Resumen del Microsoft Big Data StackResumen del Microsoft Big Data Stack
Resumen del Microsoft Big Data Stack
 
Mejores prácticas desarrollo de base de datos
Mejores prácticas desarrollo de base de datos Mejores prácticas desarrollo de base de datos
Mejores prácticas desarrollo de base de datos
 
How to Make Awesome SlideShares: Tips & Tricks
How to Make Awesome SlideShares: Tips & TricksHow to Make Awesome SlideShares: Tips & Tricks
How to Make Awesome SlideShares: Tips & Tricks
 

Similar a Introducción al SQL Server 2016 Query Store

Query Store al rescate - PASS Spanish
Query Store al rescate - PASS Spanish Query Store al rescate - PASS Spanish
Query Store al rescate - PASS Spanish Javier Villegas
 
Novedades de SQL Server 2014 en motor relacional
Novedades de SQL Server 2014 en motor relacionalNovedades de SQL Server 2014 en motor relacional
Novedades de SQL Server 2014 en motor relacionalEnrique Catala Bañuls
 
Novedades deSQL Server 2014 en Motor Relacional | SolidQ Summit 2014
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
 
Query store
Query storeQuery store
Query storeSolidQ
 
Administrador de base de datos(dba) y tipos de bd
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
 
In-Memory OLTP en SQL Server 2016
In-Memory OLTP en SQL Server 2016In-Memory OLTP en SQL Server 2016
In-Memory OLTP en SQL Server 2016Joseph Lopez
 
SQL Server 2016 Tablas en Memoria
SQL Server 2016 Tablas en MemoriaSQL Server 2016 Tablas en Memoria
SQL Server 2016 Tablas en MemoriaEduardo Castro
 
SQL Server Fundamentals 3ra Sesion
SQL Server Fundamentals 3ra SesionSQL Server Fundamentals 3ra Sesion
SQL Server Fundamentals 3ra SesionJulián Castiblanco
 
SQL 2016 Column Store Index
SQL 2016 Column Store IndexSQL 2016 Column Store Index
SQL 2016 Column Store IndexEduardo Castro
 
Conociendo los cambios de SQL Server a partir de 2012 a 2016
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 2016Joseph Lopez
 
Sql server 2012 y share point server 2013 integración cercana a la perfección
Sql server 2012 y share point server 2013 integración cercana a la perfecciónSql server 2012 y share point server 2013 integración cercana a la perfección
Sql server 2012 y share point server 2013 integración cercana a la perfecciónGuillermo Taylor
 
Nestor Nieto BaseDatos_Tarea01
Nestor Nieto BaseDatos_Tarea01Nestor Nieto BaseDatos_Tarea01
Nestor Nieto BaseDatos_Tarea01NestorNieto
 
Casos de bodegas de datos con SQL Server
Casos de bodegas de datos con SQL ServerCasos de bodegas de datos con SQL Server
Casos de bodegas de datos con SQL ServerEduardo Castro
 
Tarea1 cristian merchan_adm_bd
Tarea1 cristian merchan_adm_bdTarea1 cristian merchan_adm_bd
Tarea1 cristian merchan_adm_bdCristian Merchan
 
Tarea1 cristian merchan_adm_bd
Tarea1 cristian merchan_adm_bdTarea1 cristian merchan_adm_bd
Tarea1 cristian merchan_adm_bdCristian Merchan
 
Query Store en SQL 2016
Query Store en SQL 2016Query Store en SQL 2016
Query Store en SQL 2016SpanishPASSVC
 

Similar a Introducción al SQL Server 2016 Query Store (20)

Funciones del DBA
Funciones del DBAFunciones del DBA
Funciones del DBA
 
Query Store al rescate - PASS Spanish
Query Store al rescate - PASS Spanish Query Store al rescate - PASS Spanish
Query Store al rescate - PASS Spanish
 
Novedades de SQL Server 2014 en motor relacional
Novedades de SQL Server 2014 en motor relacionalNovedades de SQL Server 2014 en motor relacional
Novedades de SQL Server 2014 en motor relacional
 
Novedades deSQL Server 2014 en Motor Relacional | SolidQ Summit 2014
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
 
Query store
Query storeQuery store
Query store
 
Query store
Query storeQuery store
Query store
 
Administrador de base de datos(dba) y tipos de bd
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 bd
 
In-Memory OLTP en SQL Server 2016
In-Memory OLTP en SQL Server 2016In-Memory OLTP en SQL Server 2016
In-Memory OLTP en SQL Server 2016
 
SQL Server 2016 Tablas en Memoria
SQL Server 2016 Tablas en MemoriaSQL Server 2016 Tablas en Memoria
SQL Server 2016 Tablas en Memoria
 
SQL Server Fundamentals 3ra Sesion
SQL Server Fundamentals 3ra SesionSQL Server Fundamentals 3ra Sesion
SQL Server Fundamentals 3ra Sesion
 
SQL 2016 Column Store Index
SQL 2016 Column Store IndexSQL 2016 Column Store Index
SQL 2016 Column Store Index
 
Conociendo los cambios de SQL Server a partir de 2012 a 2016
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
 
Sql server 2012 y share point server 2013 integración cercana a la perfección
Sql server 2012 y share point server 2013 integración cercana a la perfecciónSql server 2012 y share point server 2013 integración cercana a la perfección
Sql server 2012 y share point server 2013 integración cercana a la perfección
 
Nestor Nieto BaseDatos_Tarea01
Nestor Nieto BaseDatos_Tarea01Nestor Nieto BaseDatos_Tarea01
Nestor Nieto BaseDatos_Tarea01
 
Casos de bodegas de datos con SQL Server
Casos de bodegas de datos con SQL ServerCasos de bodegas de datos con SQL Server
Casos de bodegas de datos con SQL Server
 
Tarea1 cristian merchan_adm_bd
Tarea1 cristian merchan_adm_bdTarea1 cristian merchan_adm_bd
Tarea1 cristian merchan_adm_bd
 
Tarea1 cristian merchan_adm_bd
Tarea1 cristian merchan_adm_bdTarea1 cristian merchan_adm_bd
Tarea1 cristian merchan_adm_bd
 
Query Store en SQL 2016
Query Store en SQL 2016Query Store en SQL 2016
Query Store en SQL 2016
 
Sql Safe
Sql SafeSql Safe
Sql Safe
 
Oracle
OracleOracle
Oracle
 

Más de Eduardo Castro

Introducción a polybase en SQL Server
Introducción a polybase en SQL ServerIntroducción a polybase en SQL Server
Introducción a polybase en SQL ServerEduardo Castro
 
Creando tu primer ambiente de AI en Azure ML y SQL Server
Creando tu primer ambiente de AI en Azure ML y SQL ServerCreando tu primer ambiente de AI en Azure ML y SQL Server
Creando tu primer ambiente de AI en Azure ML y SQL ServerEduardo Castro
 
Seguridad en SQL Azure
Seguridad en SQL AzureSeguridad en SQL Azure
Seguridad en SQL AzureEduardo Castro
 
Azure Synapse Analytics MLflow
Azure Synapse Analytics MLflowAzure Synapse Analytics MLflow
Azure Synapse Analytics MLflowEduardo Castro
 
SQL Server 2019 con Windows Server 2022
SQL Server 2019 con Windows Server 2022SQL Server 2019 con Windows Server 2022
SQL Server 2019 con Windows Server 2022Eduardo Castro
 
Novedades en SQL Server 2022
Novedades en SQL Server 2022Novedades en SQL Server 2022
Novedades en SQL Server 2022Eduardo Castro
 
Introduccion a SQL Server 2022
Introduccion a SQL Server 2022Introduccion a SQL Server 2022
Introduccion a SQL Server 2022Eduardo Castro
 
Machine Learning con Azure Managed Instance
Machine Learning con Azure Managed InstanceMachine Learning con Azure Managed Instance
Machine Learning con Azure Managed InstanceEduardo Castro
 
Novedades en sql server 2022
Novedades en sql server 2022Novedades en sql server 2022
Novedades en sql server 2022Eduardo Castro
 
Sql server 2019 con windows server 2022
Sql server 2019 con windows server 2022Sql server 2019 con windows server 2022
Sql server 2019 con windows server 2022Eduardo Castro
 
Introduccion a databricks
Introduccion a databricksIntroduccion a databricks
Introduccion a databricksEduardo Castro
 
Pronosticos con sql server
Pronosticos con sql serverPronosticos con sql server
Pronosticos con sql serverEduardo Castro
 
Data warehouse con azure synapse analytics
Data warehouse con azure synapse analyticsData warehouse con azure synapse analytics
Data warehouse con azure synapse analyticsEduardo Castro
 
Que hay de nuevo en el Azure Data Lake Storage Gen2
Que hay de nuevo en el Azure Data Lake Storage Gen2Que hay de nuevo en el Azure Data Lake Storage Gen2
Que hay de nuevo en el Azure Data Lake Storage Gen2Eduardo Castro
 
Introduccion a Azure Synapse Analytics
Introduccion a Azure Synapse AnalyticsIntroduccion a Azure Synapse Analytics
Introduccion a Azure Synapse AnalyticsEduardo Castro
 
Seguridad de SQL Database en Azure
Seguridad de SQL Database en AzureSeguridad de SQL Database en Azure
Seguridad de SQL Database en AzureEduardo Castro
 
Python dentro de SQL Server
Python dentro de SQL ServerPython dentro de SQL Server
Python dentro de SQL ServerEduardo Castro
 
Servicios Cognitivos de de Microsoft
Servicios Cognitivos de de Microsoft Servicios Cognitivos de de Microsoft
Servicios Cognitivos de de Microsoft Eduardo Castro
 
Script de paso a paso de configuración de Secure Enclaves
Script de paso a paso de configuración de Secure EnclavesScript de paso a paso de configuración de Secure Enclaves
Script de paso a paso de configuración de Secure EnclavesEduardo Castro
 
Introducción a conceptos de SQL Server Secure Enclaves
Introducción a conceptos de SQL Server Secure EnclavesIntroducción a conceptos de SQL Server Secure Enclaves
Introducción a conceptos de SQL Server Secure EnclavesEduardo Castro
 

Más de Eduardo Castro (20)

Introducción a polybase en SQL Server
Introducción a polybase en SQL ServerIntroducción a polybase en SQL Server
Introducción a polybase en SQL Server
 
Creando tu primer ambiente de AI en Azure ML y SQL Server
Creando tu primer ambiente de AI en Azure ML y SQL ServerCreando tu primer ambiente de AI en Azure ML y SQL Server
Creando tu primer ambiente de AI en Azure ML y SQL Server
 
Seguridad en SQL Azure
Seguridad en SQL AzureSeguridad en SQL Azure
Seguridad en SQL Azure
 
Azure Synapse Analytics MLflow
Azure Synapse Analytics MLflowAzure Synapse Analytics MLflow
Azure Synapse Analytics MLflow
 
SQL Server 2019 con Windows Server 2022
SQL Server 2019 con Windows Server 2022SQL Server 2019 con Windows Server 2022
SQL Server 2019 con Windows Server 2022
 
Novedades en SQL Server 2022
Novedades en SQL Server 2022Novedades en SQL Server 2022
Novedades en SQL Server 2022
 
Introduccion a SQL Server 2022
Introduccion a SQL Server 2022Introduccion a SQL Server 2022
Introduccion a SQL Server 2022
 
Machine Learning con Azure Managed Instance
Machine Learning con Azure Managed InstanceMachine Learning con Azure Managed Instance
Machine Learning con Azure Managed Instance
 
Novedades en sql server 2022
Novedades en sql server 2022Novedades en sql server 2022
Novedades en sql server 2022
 
Sql server 2019 con windows server 2022
Sql server 2019 con windows server 2022Sql server 2019 con windows server 2022
Sql server 2019 con windows server 2022
 
Introduccion a databricks
Introduccion a databricksIntroduccion a databricks
Introduccion a databricks
 
Pronosticos con sql server
Pronosticos con sql serverPronosticos con sql server
Pronosticos con sql server
 
Data warehouse con azure synapse analytics
Data warehouse con azure synapse analyticsData warehouse con azure synapse analytics
Data warehouse con azure synapse analytics
 
Que hay de nuevo en el Azure Data Lake Storage Gen2
Que hay de nuevo en el Azure Data Lake Storage Gen2Que hay de nuevo en el Azure Data Lake Storage Gen2
Que hay de nuevo en el Azure Data Lake Storage Gen2
 
Introduccion a Azure Synapse Analytics
Introduccion a Azure Synapse AnalyticsIntroduccion a Azure Synapse Analytics
Introduccion a Azure Synapse Analytics
 
Seguridad de SQL Database en Azure
Seguridad de SQL Database en AzureSeguridad de SQL Database en Azure
Seguridad de SQL Database en Azure
 
Python dentro de SQL Server
Python dentro de SQL ServerPython dentro de SQL Server
Python dentro de SQL Server
 
Servicios Cognitivos de de Microsoft
Servicios Cognitivos de de Microsoft Servicios Cognitivos de de Microsoft
Servicios Cognitivos de de Microsoft
 
Script de paso a paso de configuración de Secure Enclaves
Script de paso a paso de configuración de Secure EnclavesScript de paso a paso de configuración de Secure Enclaves
Script de paso a paso de configuración de Secure Enclaves
 
Introducción a conceptos de SQL Server Secure Enclaves
Introducción a conceptos de SQL Server Secure EnclavesIntroducción a conceptos de SQL Server Secure Enclaves
Introducción a conceptos de SQL Server Secure Enclaves
 

Último

El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel tallerValentinaTabares11
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxGESTECPERUSAC
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfjeondanny1997
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxMariaBurgos55
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptchaverriemily794
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxJOSEMANUELHERNANDEZH11
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
Explorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramExplorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramDIDIERFERNANDOGUERRE
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 

Último (20)

El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel taller
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptx
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptx
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptx
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
Explorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramExplorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ram
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 

Introducción al SQL Server 2016 Query Store

  • 2. Bienvenida • Ing. Eduardo Castro, PhD • MVP de Microsoft SQL Server • PASS Regional de Mentor • PASS Board of Directors • ecastro@simsasys.com • http://www.youtube.com/eduardocastrom
  • 3. Material de Referencia SQL 2016 – What’s New? David Cobb SQL Server Evolution. Lindsey Allen The SQL Server 2016 Query Store: Overview and Architecture. Enrico van de Laar
  • 4. Agenda 4 • Información general y de Query Store Arquitecture • Query Store Reporting • Acceso a la información de consulta Store a través de DMV • Forzar planes de ejecución utilizando el Query Store • Analizar el rendimiento de Query Store
  • 5. Cuando el rendimiento no es bueno ... Base de datos no funciona Web site está caído Imposible de predecir/Cual es la causa? Problema desempeño temporal Regresión causada por nueva versión Actualizació n de DB
  • 6. Con Query Storese puede ... Buscar y corregir las regresiones del plan Identificar los principales consumidores de recursos Reducir riesgo actualización de SQL Server Profundamente analizar los patrones de carga de trabajo
  • 7. el Query Store 7 • El Query Store es una característica que nos puede ayudar a solucionar problemas de rendimiento de las consultas, captura de información de ejecución de la consulta, tales como el número de ejecuciones o la duración promedio de una consulta. • El Query Store también se captura cada plan de ejecución que se ha generado para una consulta específica y se puede entonces decidir qué plan de ejecución desea que SQL Server utilice para esa consulta específica.
  • 8. Los usos más comunes para el Query Store 8 • Encontrar y corregir rápidamente una regresión desempeño de los planes forzando el plan de consulta previo. • Forzar las consultas que recientemente han retrocedido en el rendimiento debido a cambios en el plan de ejecución. • Determinar el número de veces que una consulta se ejecuta en una ventana de tiempo dado, ayuda a un DBA en problemas de recursos de rendimiento y en la resolución de problemas.
  • 9. Los usos más comunes para el Query Store 9 • Identificar las principales n consultas (por el tiempo de ejecución, el consumo de memoria, etc.) en los últimos x horas. • Auditar la historia de los planes de ejecución para una consulta determinada. • Analizar los recursos (CPU, E/S y la memoria) los patrones de uso de una base de datos en particular.
  • 10. Los usos más comunes para el Query Store 10 • A pesar de que ya es posible para nosotros realizar muchas de las mismas acciones que hace el Query Store en las versiones anteriores de SQL Server • La captura de los contadores de rendimiento específicos de tiempo de ejecución de consulta o forzar planes de ejecución es una tarea compleja y especializada. • El Query Store hace que estas acciones mucho más fácil de usar y disponible a todo el mundo sin necesidad de volver a escribir cualquier pregunta.
  • 11. Ventajas del Query Store 11 • El Query Store se integra directamente en SQL Server, esto significa que puede capturar la información de tiempo de ejecución de consulta directamente en el nivel de la fuente • Sin el Query Store con frecuencia dependemos del caché del plan, lugar donde se almacenan los planes de ejecución en memoria, cuando es necesario analizar los planes de ejecución de la consulta. • Sin embargo, si se reinicia SQL Server, todos los planes de ejecución serán removidos de la caché y se ven obligados a empezar de nuevo.
  • 12. Ventajas de el Query Store 12 • El Query Store, en cambio, almacena la información que captura en el disco, lo que significa que un reinicio de SQL Server no afecta a ninguna información que ha sido capturado en el Query Store • El Query Store se puede habilitar en una base de datos individual • Una gran cantidad de información está disponible directamente a través de reportes de consulta integrados
  • 14. Query StoreArquitectura 14 • El Query Store consiste en realidad dos “stores", • El Plan Store y el Runtime Stats Store. • Estos “stores” son objetos en memoria que contienen información de la consulta.
  • 15. Query Store Arquitectura 15 • Cuando una consulta se ejecuta en una base de datos que tiene habilitada el Query Store, el plan de la consulta compilado se escribe en el Query Store Plan y la información de tiempo de ejecución de la consulta se guarda en el Runtime Stats Store. • Esta información se almacena inicialmente en memoria. Después de un intervalo específico la información escribe en el disco de forma asíncrona para guardar la información. • El Query Store escribe los planes de ejecución y las estadísticas de tiempo de ejecución en Primary Filegroup de la base de datos que ejecútó la consulta.
  • 16. Query Store Arquitectura dieciséis • Al guardar los planes de ejecución y las estadísticas de tiempo de ejecución en el disco, la información dentro de el Query Store no se pierde cada vez que se produce un reinicio de SQL Server. • Esto es más valioso que el análisis de los planes de ejecución dentro del caché, ya que el caché del plan estará vacía de nuevo cada vez que se reinicie SQL Server. • Lo mismo ocurre con la sys.dm_exec_query_stats DMV, que se utiliza con frecuencia para analizar la información de tiempo de ejecución de la consulta. Este DMV también se restablecerá después de un reinicio de SQL Server.
  • 17. Query Store Flush 17 • Por defecto se guarda a disco con intervalo que se establece en 15 minutos, esto provoca una sobrecarga de rendimiento promedio de 3-5% cuando se ha activado el Query Store. • Cuanto menor sea el intervalo, mayor será el impacto en el rendimiento • Nuevos planes de ejecución que son capturados por primera vez por el Query Store se guardan en disco de forma más rápida que planes de ejecución que ya existen dentro de el Query Store
  • 18. Impacto del Query Store 18 • Existe una Table Defined Function (TDF) que toma datos todavía en la memoria y también información que ya fue persistida en disco • TDF (QUERY_STORE_RUNTIME_STATS_IN_MEM) toma los datos de la memoria y un Clustered Index Scan en el plan_persist_runtime_stats que toma los datos desde el disco
  • 19. Impacto del Query Store 19
  • 20. Habilitar Query Store 20 • ALTER DATABASE SET AdventureWorks2012 QUERY_STORE = ON;
  • 21. Opciones de Query Store 21
  • 22. Examinando las opciones del Query Store 22 • " Operation Mode (Actual)” no se puede cambiar, ya que sólo indica el modo actual deñ Query Store. El valor puede ser Off, Read Write or Read. • Cuando el Query Store tiene un modo de Read no se guardan nuevos planes de ejecución o las estadísticas de tiempo de ejecución de la consulta.
  • 23. Examinando las opciones del Query Store 23 • El " Data Flush Interval (Minutes)” le permite establecer el intervalo de la rapidez que se guarda la información • Los Execution Plans y los Query Runtime Statistics se están guardando de la memoria en el disco. Por defecto esta opción se establece en 15 minutos. • Cambiar el intervalo en un valor más bajo significa que la información de Query Store dentro de la memoria de SQL Server se escribe en el disco más rápido, esto puede tener un impacto negativo en el rendimiento de la Instancia. • Establecer el valor en un intervalo más alto significa que el memory flush es menor, pero también significa más información del Query Store que reside en la memoria se perderán cuando si se produce un reinicio de SQL Server.
  • 24. Examinando las opciones del Query Store 24 • “Statistics Collection Interval" le permite configurar un nuevo intervalo. • Éste le permite configurar el nivel de granularidad de las estadísticas de tiempo de ejecución. Por defecto se establece en 1 hora. • Básicamente esto significa que se establece el intervalo de agregación de las estadísticas de tiempo de ejecución de consulta dentro de el Query Store. • Cuanto menor sea el valor de esta opción más fina es la granularidad de las estadísticas de tiempo de ejecución, pero esto también significa que más intervalos se producen y se requiere por lo tanto más espacio para almacenar las estadísticas de consulta de tiempo de ejecución en el disco.
  • 25. Examinando las opciones del Query Store 25 • El " Max Size (MB)” le permite configurar el tamaño máximo de el Query Store. • Por defecto, este valor se establece en 100 MB. Una cosa importante a tener en cuenta es que los datos dentro de el Query Store se almacena dentro de la Primary File Group de la base de datos que tiene habilitada el Query Store. • Cambiar la opción por un valor más alto le permitirá almacenar más datos del Query Store pero también significa que su base de datos crecerá. • Cada vez que el Query Store llega al tamaño máximo configurado por esta opción el modo de operación cambiará automáticamente a sólo lectura y no se recolectarán nuevos datos.
  • 26. Examinando las opciones del Query Store 26 • La opción " Query Store Capture Mode" permite filtrar las consultas con los tiempos de ejecución muy bajo. • Por defecto, la opción se establece en “All” lo que significa cada consulta ejecutada en contra de la base de datos se registra en el Query Store. • Al establecer la opción en “Auto” el Query Store filtrará consultas insignificantes. • Qué consultas se filtran está determinada por un proceso interno y no tenemos ninguna influencia sobre ella. El coste final de esta opción es Ninguno cual significa que no hay nuevos planes de ejecución o las estadísticas de tiempo de ejecución de consulta son capturados.
  • 27. Examinando las opciones del Query Store 27 • " Size Based Cleanup Mode " se puede configurar para que automáticamente el Query Store limpie los datos una vez que alcanza el 90% del tamaño máximo de Query Store • La limpieza eliminará los datos de consulta más antigua y menos costosa y se detiene la limpieza en el 80% del “Max Size (MB)” . • Por defecto esta opción está desactivada. Si se establece en Auto permitirá a la limpieza automática.
  • 28. Examinando las opciones del Query Store 28 • "Stale Query Threshold (Days)” establece cómo los datos de consulta es retenida dentro de el Query Store. • Por defecto, la configuración se establece en 367 días. El valor de esta opción debe reflejar sus necesidades de análisis históricos. • Si no necesita almacenar información de consulta por 376 días, pero por un período de tiempo más corto se puede bajar esta opción por lo que no está perdiendo espacio dentro de el Query Store.
  • 29. Query Store opciones por TSQL 29 GUI Option T-SQL Option Operation Mode (Requested) OPERATION_MODE Data Flush Interval (Minutes) DATA_FLUSH_INTERVAL_SECONDS Statistics Collection Interval INTERVAL_LENGHT_MINUTES Max Size (MB) MAX_STORAGE_SIZE_MB Query Store Capture Mode QUERY_CAPTURE_MODE Size Based Cleanup Mode SIZE_BASED_CLEANUP_MODE Stale Query Threshold (Days) CLEANUP_POLICY (STALE_QUERY_THRESHOLD_DAYS) MAX_PLANS_PER_QUERY
  • 30. Query Store opciones por TSQL 30 • ALTER DATABASE [db_name]SET QUERY_STORE ( [Query Store options] ); • ALTER DATABASE AdventureWorksSET QUERY_STORE ( MAX_STORAGE_SIZE_MB = 250 );
  • 31. Query Store opciones por TSQL 31 ALTER DATABASE AdventureWorks SET QUERY_STORE ( MAX_STORAGE_SIZE_MB = 250, SIZE_BASED_CLEANUP_MODE = AUTO, CLEANUP_POLICY = (STALE_QUERY_THRESHOLD_DAYS = 30) ); -- Purge Query Data ALTER DATABASE [db_name] SET QUERY_STORE CLEAR;
  • 33. Query Store Built-in Reporting 33
  • 34. Query Store Built-in Reporting 34 • Regressed Queries. Una 'consulta ha retrocedido' si recibió un plan de ejecución peor al que tenía antes. • Este reporte muestra todas las consultas que han tenido su plan de ejecución retrocedido en el tiempo. • Overall Resource Consumption. Muestra un resumen de las estadísticas de tiempo de ejecución de las consultas durante un intervalo de tiempo específico. Todas las estadísticas de las consultas que se han ejecutado dentro del intervalo de tiempo específico se agregan para dar una visión general del rendimiento de la consulta.
  • 35. Built-in Query Storede reportes 35 • Top Resource Consuming Queries. Muestra las consultas más caros (sobre la base de criterios de selección personalizados) que se ejecutaron durante un intervalo de tiempo específico. • Tracked Queries. Muestra las estadísticas de tiempo de ejecución para la ejecución de la consulta, y le permite inspeccionar los diversos planes de ejecución de una consulta específica.
  • 38. Informe de consumo de recursos en general 38
  • 39. DMV Query Store 39 • Nuevos DMV que se introdujeron en SQL Server 2016 para soportar el Query Store Sys.database_query_store_options Sys.query_store_query Sys.query_store_query_text Sys.query_context_settings Sys.query_store_plan Sys.query_store_runtime_stats Sys.query_store_runtime_stats_interval
  • 40. DMV Query Store 40 • El DMV sys.query_store_query se registra a nivel de la instrucción SQL. -- Empty the Query Store ALTER DATABASE AdventureWorks SET QUERY_STORE CLEAR; -- Statement 1 SELECT TOP 100 * FROM Person.Address; -- Statement 2 SELECT TOP 100 * FROM Sales.SalesOrderDetail;
  • 41. DMV Query Store 41 -- Query sys.query_store_query SELECT query_id, qt.query_sql_text AS 'Statement Text', [text] AS 'Query Batch Text' FROM sys.query_store_query q CROSS APPLY sys.dm_exec_sql_text(last_compile_batch_sql_handle) INNER JOIN sys.query_store_query_text qt ON q.query_text_id = qt.query_text_id;
  • 42. DMV Query Store 42 • context_settings_id Este número enlaza el sys.query_store_query DMV para el sys.query_context_settings • sys.query_context_settings Registra información sobre el contexto en el que se ejecuta la consulta • last_compile_batch_sql_handle Devuelve el query text handle de la consulta SQL
  • 44. Sys.query_context_settings 44 • sys.query_context_settings devuelve la configuración de contexto bajo el cual se ejecuta la instrucción SQL.
  • 45. Sys.query_context_settings 45 SELECT qsq.query_id, qsqt.query_sql_text, qs.plan_handle FROM sys.query_store_query qsq INNER JOIN sys.dm_exec_query_stats qs ON qsq.last_compile_batch_sql_handle = qs.sql_handle INNER JOIN sys.query_store_query_text qsqt ON qsq.query_text_id = qsqt.query_text_id ORDER BY qsq.query_id
  • 46. Sys.query_store_plan 46 • sys.query_store_plan almacena información sobre los planes de ejecución que está relacionado con las consultas que son capturados dentro de el Query Store. • Devuelve información, tales como la versión de motor utilizaqdo, el nivel de compatibilidad y si el plan era trivial.
  • 47. Sys.query_store_plan 47 SELECT plan_id, query_id, CAST(query_plan AS XML) AS 'Execution Plan' FROM sys.query_store_plan;
  • 48. Sys.query_store_runtime_stats 48 • Dentro de sys.query_store_runtime_stats , las métricas de rendimiento de las consultas son capturados y agregados
  • 49. Top 10 consultas más caros basados ​​en tiempo de ejecución promedio 49 SELECT TOP 10 qt.query_sql_text, CAST(query_plan AS XML) AS 'Execution Plan', rs.avg_duration FROM sys.query_store_plan qp INNER JOIN sys.query_store_query q ON qp.query_id = q.query_id INNER JOIN sys.query_store_query_text qt ON q.query_text_id = qt.query_text_id INNER JOIN sys.query_store_runtime_stats rs ON qp.plan_id = rs.plan_id ORDER BY rs.avg_duration DESC;
  • 50. Consultar planes paralelos 50 SELECT qt.query_sql_text, CAST(query_plan AS XML) AS 'Execution Plan', rs.avg_duration FROM sys.query_store_plan qp INNER JOIN sys.query_store_query q ON qp.query_id = q.query_id INNER JOIN sys.query_store_query_text qt ON q.query_text_id = qt.query_text_id INNER JOIN sys.query_store_runtime_stats rs ON qp.plan_id = rs.plan_id WHERE rs.last_dop > 1;
  • 51. Regresión de planes 51 • Plan de regresión ocurre cuando el optimizador de consultas de SQL Server compila un nuevo plan de ejecución para una consulta que ejecuta (mucho) peor que el anterior plan de ejecución para esa misma consulta. • Hay muchas razones por las que el optimizador de consultas piensa que se necesita un nuevo plan. Algunos ejemplos incluyen un cambio en el número de filas dentro de una tabla, una adición o eliminación de un índice o un cambio en el esquema de la tabla
  • 52. Regresión de planes 52 • Plan de ejecución con id 113 ejecuta mucho peor, en función de su duración, que el plan con id 114
  • 54. Plan Forcing en SQL 2016 55 • EXEC sp_query_store_force_plan 136, 146;