REVISIÓN: Un problema de rendimiento en el que ejecutar una consulta mediante un cursor de avance rápido en SQL Server 2005 o SQL Server 2008

Seleccione idioma Seleccione idioma
Id. de artículo: 973877 - Ver los productos a los que se aplica este artículo
Microsoft distribuye correcciones de Microsoft SQL Server 2005 como un archivo descargable. Como las revisiones son acumulativas, cada versión nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad incluidas en el anterior de SQL Server 2005.
Expandir todo | Contraer todo

En esta página

Síntomas

Ejecutar una consulta utilizando un cursor de avance rápido en Microsoft SQL Server 2005 o SQL Server 2008. Sin embargo, la consulta tarda un mucho más tiempo para abrir el cursor que cuando ejecuta la misma consulta utilizando un cursor estático.

Si analiza la información estadística acerca de la consulta genera cuánta actividad de disco mientras se abre el cursor, puede que observe las siguientes características:
  • El número de "lectura anticipada lee" es 0 cuando se utiliza el cursor de avance rápido.
  • El número de "lectura anticipada lee" es un gran número cuando se utiliza un cursor estático.


Nota Puede utilizar la instrucción SET STATISTICS IO ON para mostrar la información estadística.

Causa

Cuando se abre un cursor estático, se habilita el mecanismo de lectura anticipada. Sin embargo, cuando se abre un cursor de avance rápido, se deshabilita el mecanismo de lectura anticipada. Este comportamiento produce el problema de rendimiento que se describe en la sección "Síntomas".

Solución

SQL Server 2005

La corrección para este problema se publicó por primera vez en 5 de actualización acumulativa para SQL Server 2005 Service Pack 3. Para obtener más información acerca de este paquete de actualización acumulativa, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
972511 Paquete 5 de la actualización acumulativa para SQL Server 2005 Service Pack 3
Nota Como las compilaciones son acumulativas, cada versión de revisión nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad incluidas en el anterior de SQL Server 2005. Microsoft recomienda que considere aplicar la versión de revisión más reciente que contenga este hotfix. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
960598Compilaciones de SQL Server 2005 que se publicaron después del lanzamiento de SQL Server 2005 Service Pack 3
Microsoft SQL Server 2005 se crean las revisiones para los service Pack específicos de SQL Server. Debe aplicar una revisión de SQL Server 2005 Service Pack 3 a una instalación de SQL Server 2005 Service Pack 3. De forma predeterminada, cualquier revisión suministrada en un service pack se incluye en el siguiente service pack.

SQL Server 2008

SQL Server 2008

importante Debe utilizar esta revisión si está ejecutando la versión de lanzamiento de SQL Server 2008.

La corrección para este problema se publicó por primera vez en actualización acumulativa 7. Para obtener más información acerca de cómo obtener este paquete de actualización acumulativa para SQL Server 2008, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
973601Paquete de actualización acumulativa 7 de SQL Server 2008
Nota Como las compilaciones son acumulativas, cada versión de revisión nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad incluidas con la anterior de SQL Server 2008. Recomendamos que considere aplicar la versión de revisión más reciente que contenga este hotfix. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
956909SQL Server 2008 generaciones que se publicaron después del lanzamiento de SQL Server 2008

SQL Server 2008 Service Pack 1 (SP1)

importante Debe utilizar esta revisión si está ejecutando SQL Server 2008 Service Pack 1 (SP1).

La corrección para este problema se publicó por primera vez en actualización acumulativa 4 para SQL Server 2008 Service Pack 1. Para obtener más información acerca de este paquete de actualización acumulativa, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
973602Paquete de actualización acumulativa 4 para SQL Server 2008 Service Pack 1
Nota Como las compilaciones son acumulativas, cada versión de revisión nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad incluidas con la anterior de SQL Server 2008. Microsoft recomienda que considere aplicar la versión de revisión más reciente que contenga este hotfix. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
970365Compilaciones de SQL Server 2008 publicados después SQL Server 2008 Service Pack 1
Microsoft SQL Server 2008 se crean las revisiones para los service Pack específicos de SQL Server. Debe aplicar una revisión de Service Pack 1 de SQL Server 2008 a una instalación de SQL Server 2008 Service Pack 1. De forma predeterminada, cualquier revisión suministrada en un service pack se incluye en el siguiente service pack.

Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados en la sección "La información de este artículo se refiere a:".

Más información

El motor de base de datos admite un mecanismo de optimización de rendimiento que se denomina lectura anticipada. El mecanismo de lectura anticipada predice las páginas de datos y de índices necesarios para completar un plan de ejecución de consulta. A continuación, el mecanismo de lectura anticipada coloca las páginas en la caché del búfer antes de las páginas se utilicen realmente por la consulta. Esto permite para que el cálculo y de E/s se superponen, ya que aprovechan de la CPU y el disco.

Referencias

Para obtener más información acerca del modelo incremental de servicio para SQL Server, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
935897Un modelo incremental de servicio está disponible desde el equipo de SQL Server para entregar revisiones para problemas detectados
Para obtener más información acerca de cómo obtener SQL Server 2005 Service Pack 3, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
913089Cómo obtener el service pack más reciente para SQL Server 2005
Para obtener más información acerca de las nuevas características de SQL Server 2005 Service Pack 3 (SP3) y las mejoras de SQL Server 2005 SP3, visite el siguiente sitio Web de Microsoft:
http://go.microsoft.com/fwlink/?LinkId=131442
Para obtener más información sobre el esquema de nomenclatura para las actualizaciones de SQL Server, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
822499Nuevo esquema de nomenclatura para los paquetes de actualización del software de Microsoft SQL Server
Para obtener más información acerca de la terminología relativa de la actualización de software, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
824684Descripción de la terminología estándar utilizada para describir las actualizaciones de software de Microsoft

Propiedades

Id. de artículo: 973877 - Última revisión: lunes, 17 de agosto de 2009 - Versión: 1.2
La información de este artículo se refiere a:
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Standard X64 Edition
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Workgroup Edition
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Workgroup
Palabras clave: 
kbmt kbsurveynew kbexpertiseadvanced kbqfe kbfix KB973877 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 973877

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com