Vous êtes sur la page 1sur 4

Query Optimizer.

Database Engine
Tuning Advisor (DTA). SQL Server.
Tema: V
SQL Server tiene una herramienta, Database Engine Tuning Advisor (DTA), para definir, entre otros, que
ndices podemos necesitar en nuestras consultas !on este tema no pretendo demostrar como funciona
esta herramienta, sino comentar como realmente utili"a # se basa en el $ptimi"ador de !onsultas de SQL
Server

DTA genera posibles soluciones de ndices, # pregunta al $ptimi"ador cual es el costo de cada una de
las soluciones generadas # finalmente DTA se queda con la soluci%n que posee el costo mas ba&o
'ecordar como funciona el $ptimi"ador( )*ues el $ptimi"ador funciona con costos+, cuando tenemos
planes de e&ecuci%n, cada uno tiene asignado un n,mero de costo, # el $ptimi"ador -a a seleccionar el
costo mas ba&o posible !uanto mas ba&o es el costo, quiere decir que la consulta se e&ecuta en el menor
tiempo posible

Si para una consulta, tenemos definidos -arios ndices, es el $ptimi"ador quien decide, (si no se
parametri"a o fuer"a lo contrario), si se usa o no ese ndice, o que ndice es el que se -a a usar

Es aconse&able para el buen entendimiento de este )Tema(./+ que se lea o repase los enlaces( Query
Optimizer . Parameter Sniffing. SQL Server Tema: I # el enlace( Query Optimizer . Cardinality
Estimation Error. SQL Server . Tema: II , # sus temas posteriors


!uando queremos optimi"ar una consulta con Database Engine Tuning Ad-isor, guardamos la consulta
en un fichero sql, para que la pueda utili"ar esta herramienta (DTA) /niciaremos la herramienta DTA,
desde el 01anagemente Studio230Tools230Database Engine Tuning Ad-isor2, # nos arrancara la
herramienta donde nos conectaremos contra la instancia, en la cual queremos e&ecutar la consulta para
optimi"arla Daremos un nombre a nuestra sesi%n, diremos donde esta ubicado el fichero sql #
seleccionaremos la base de datos donde se e&ecutara la consulta(
4na -e" rellenada la -entana anterior, iniciaremos el an5lisis6optimi"aci%n 72 Doble clic con el rat%n en(
)Start Anal#sis+ En ocasiones este proceso puede tardar tiempo, dependiendo de la comple&idad de las
consultas a optimi"ar Al finali"ar mostrar5 un resultado parecido al que os copio, (donde haciendo doble
clic con el rat%n en el campo Definicin), nos mostrar5 los ndices que recomienda(

Cdigo desbloqueo para Iphone


A pesar de ue !TA" es una #erramienta mu$#o m%s sofisti$ada ue &issing Inde's" ()er tema: Query
Optimizer. &issing Inde'es. SQL Ser-er . Tema: ) * tendremos ue valorar" o las reglas de
nego$io de nuestra empresa" $uan $riti$a o importante es la $onsulta" para invertir tiempo y
re$ursos en optimizar la $onsulta y $onseguir ue el tiempo de su respuesta sea el m+nimo
posi,le. Partiendo de esto" podremos pro,ar los $onse-os de $rear nuevos +ndi$es y verifi$ar si
efe$tivamente las $onsultas devuelven los datos $on mayor rapidez.
8o es aconse&able cargar las tablas de ndices, pues cuanto mas se tengan en una tabla, habr5
operaciones que se -er5n afectadas # tarden mas, por poner un e&emplo, cuando se hacen inserciones
sobre registros o campos ndice, estos ndices se han de actuali"ar en memoria, lo que conlle-a un coste,
imagina que tienes cientos de inserciones en una hora, lo que puede afectar al rendimiento9 Tenemos
que tratar de tener siempre los mnimos ndices indispensables en nuestras tablas, # que estos sean los
correctos, # asegurarnos que los usan aquellos planes de e&ecuci%n de las consultas de la aplicaci%n que
los necesiten
4na -e" e&ecutado el Analisis6optimi"aci%n en el Database Engine Tuning Ad-isor (DTA), como hemos
contado mas arriba en este documento, se guarda informaci%n en la base de datos msdb, por lo que
podremos consultar acerca del an5lisis reali"ado, con la consulta(

SELECT * FROM msdb..DTA_reports_qer!


*odemos -er en la salida de la consulta anterior, cual es el costo actual de la consulta (campo
!urrent!ostu), # cual es el costo encontrado6optimi"ado (campo 'ecommended!ost), para cada consula
(campo StatementString)(
Si e&ecutamos las recomendaciones, propuestas por Database Engine Tuning, el costo en nuestro plan
de e&ecuci%n ser5 menor A menor costo, menor tiempo de e&ecuci%n en la consulta

*odemos -er el costo de nuestro plan de e&ecuci%n, como por e&emplo(

Desbloqueo de Celulares x IMEI


Se aconse&a leer( Actuali"aci%n de estadsticas sncronas o asncronas me&oran la respuesta del
optimi"ador de consultas SQL Ser-er


Fentes"
Microsoft# MSD$# %en&'min $e('res
Apnte ! recopi)'cin por Norman M. Pardell
Puedes consultarme, si deseas cualquier aclaracin, pregunta o sugerencia
en: Contacto, contestar tan pronto como me sea posible.

Vous aimerez peut-être aussi