Optimizacion de consultas

Solo disponible en BuenasTareas
  • Páginas : 4 (902 palabras )
  • Descarga(s) : 0
  • Publicado : 13 de marzo de 2012
Leer documento completo
Vista previa del texto
Optimización de consultas
Algunas consultas consumen más recursos que otras. Por ejemplo, las consultas que devuelven grandes conjuntos de resultados y las que contienen cláusulas WHERE que no sonúnicas siempre consumen muchos recursos. Ningún grado de inteligencia del optimizador de consultas puede eliminar el costo de recursos de estas construcciones en comparación con una consulta menoscompleja. SQL Server utiliza un plan de acceso óptimo, pero la optimización de consultas está limitada por lo que es posible.
Sin embargo, para mejorar el rendimiento de las consultas, puede:
• Agregarmás memoria. Esta solución es especialmente útil si el servidor ejecuta muchas consultas complejas y varias consultas se ejecutan lentamente.
• Utilizar más de un procesador. Varios procesadorespermiten que el Motor de base de datos use consultas en paralelo.
• Vuelva a escribir la consulta. Considere lo siguiente:
• Si la consulta utiliza cursores, determine si se puede escribir la consulta decursor con un tipo de cursor más eficaz (como un cursor de sólo avance rápido) o con una única consulta. Las consultas únicas normalmente mejoran las operaciones de cursor. Debido a que un conjunto deinstrucciones de cursor suele constituir una operación de bucle externo, en la que cada fila del bucle externo se procesa una vez con una instrucción interna, considere la posibilidad de utilizar ensu lugar una instrucción GROUP BY o CASE, o una subconsulta.

ISO Syntax
DECLARE cursor_name [ INSENSITIVE ] [ SCROLL ] CURSOR
FOR select_statement
[ FOR { READ ONLY | UPDATE [ OFcolumn_name [ ,...n ] ] } ]
[;]
Transact-SQL Extended Syntax
DECLARE cursor_name CURSOR [ LOCAL | GLOBAL ]
[ FORWARD_ONLY | SCROLL ]
[ STATIC | KEYSET | DYNAMIC | FAST_FORWARD ]
[READ_ONLY | SCROLL_LOCKS | OPTIMISTIC ]
[ TYPE_WARNING ]
FOR select_statement
[ FOR UPDATE [ OF column_name [ ,...n ] ] ]
[;]

• Si una aplicación utiliza un bucle,...
tracking img