REVISIÓN: Se produce un problema de rendimiento al ejecutar una consulta de texto completo que contiene la cláusula "AND NOT" en SQL Server 2008

Seleccione idioma Seleccione idioma
Id. de artículo: 970287 - Ver los productos a los que se aplica este artículo
Microsoft distribuye correcciones de Microsoft SQL Server 2008 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 con la anterior de SQL Server 2008.
Expandir todo | Contraer todo

En esta página

Síntomas

En Microsoft SQL Server 2008, una consulta de texto completo en una gran tabla que contiene un gran número de filas tarda mucho más en terminar que en SQL Server 2005. El problema se produce cuando se cumplen las condiciones siguientes:
  • Puede configurar un índice de texto completo en la tabla.
  • La consulta de texto completo contiene la cláusula ? AND NOT ?. Por ejemplo, la consulta contiene la condición siguiente:
    <Condición 1 > AND NOT < Condición 2 >

Causa

Este problema se produce porque el plan de ejecución de la consulta no está optimizado. En el ejemplo que se menciona en la sección "Síntomas", la consulta se ejecuta como dos consultas independientes. La primera consulta se ejecuta para condición 1. La segunda consulta se ejecuta para condición 2. En SQL Server 2008, estas dos consultas se ejecutan simultáneamente. Por lo tanto, la segunda consulta se ejecuta muy lentamente y genera un conjunto de resultados muy grandes. Este plan de ejecución hace que un problema de rendimiento.

Nota En SQL Server 2005, La segunda consulta se ejecuta según el conjunto resultado generado por la primera consulta. Dado que la primera consulta genera un conjunto de resultados pequeños, el rendimiento de la misma consulta de texto completo en SQL Server 2005 es más rápido que en SQL Server 2008

Solución

Información de actualización acumulativa

La versión de lanzamiento de SQL Server 2008

importante Debe instalar este paquete de actualización acumulativa si su equipo está ejecutando la versión de lanzamiento de SQL Server 2008.

La corrección para este problema se publicó por primera vez en 5 actualización acumulativa. 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:
969531Paquete de actualización acumulativa 5 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

Service Pack 1 de SQL Server 2008

importante Debe instalar este paquete de actualización acumulativa si su equipo está ejecutando SQL Server 2008 Service Pack 1.

La corrección para este problema también aparece más adelante se publicó en actualización acumulativa 3 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:
971491Paquete de actualización acumulativa 3 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:".

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 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: 970287 - Última revisión: martes, 21 de julio de 2009 - Versión: 2.0
La información de este artículo se refiere a:
  • 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 KB970287 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): 970287

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