Share via


Mejoras en la escalabilidad y el rendimiento del motor de base de datos

Se ha producido una mejora en la partición de datos gracias a la partición de índices y tablas nativas. La simultaneidad de las aplicaciones ha mejorado gracias al uso del nuevo nivel de aislamiento de instantánea y a la posibilidad de disponer de varios conjuntos de resultados activos en una única conexión.

Mejoras en la escalabilidad y el rendimiento

Guías de plan

Hay un nuevo procedimiento almacenado del sistema, sp_create_plan_guide, que permite optimizar el rendimiento de las consultas adjuntando sugerencias a las consultas cuando no se puede o no se desea cambiar el texto de la consulta directamente. Las guías de plan pueden ser de gran utilidad cuando el rendimiento de un pequeño subconjunto de consultas de una aplicación de base de datos implementada por otro proveedor no es el esperado.

Para obtener más información, vea Optimizar consultas en aplicaciones implementadas mediante guías de plan.

Nivel de aislamiento de instantánea

El nivel de aislamiento de instantánea implementa versiones de filas para proporcionar a los usuarios una nueva vista de los datos de la base de datos, como la que había cuando se inició la transacción actual. Excepto durante la recuperación, una transacción de instantáneas no adquiere bloqueos para proteger las operaciones de lectura. El aislamiento de instantánea puede minimizar los problemas de bloqueo de las aplicaciones de sólo lectura.

Para obtener más información, vea Niveles de aislamiento basado en el control de versiones de filas del motor de base de datos.

Estadísticas de las columnas datetime correlacionadas

Puede habilitar una nueva opción SET de base de datos, DATE_CORRELATION_OPTIMIZATION, para mejorar el rendimiento de las consultas de unión de dos tablas cuyas columnas datetime estén correlacionadas y especificar una restricción de fecha en el predicado de la consulta.

Para obtener más información, vea Optimizar consultas con acceso a columnas datetime correlativas.

Parametrizaciones forzadas

Puede especificar que todas las consultas que se ejecuten en la base de datos se parametricen estableciendo la nueva opción SET de base de datos PARAMETERIZATION en FORCED. Las parametrizaciones forzadas pueden mejorar el rendimiento de algunas bases de datos mediante la reducción de la frecuencia de las recompilaciones de consultas.

Para obtener más información, vea Parametrizaciones forzadas.

Actualización asincrónica de estadísticas

Puede habilitarse una nueva opción SET de base de datos, AUTO_UPDATE_STATISTICS_ASYNC, para mejorar la predicción de los tiempos de respuesta de las consultas. Cuando se habilita esta opción, un subproceso de trabajo en segundo plano coloca las estadísticas obsoletas en una cola y la consulta que inició la actualización de estadísticas se compila inmediatamente en lugar de esperar a que se actualicen las estadísticas.

Para obtener más información, vea Estadísticas de índice.

Columnas calculadas persistentes

Las columnas calculadas pueden marcarse como PERSISTED, en cuyo caso sus valores se almacenan en las páginas de datos de la tabla. Esto último puede acelerar la recuperación de columnas que requieren muchos cálculos.

Para obtener más información, vea Columnas calculadas.

Conjuntos de resultados activos múltiples (MARS)

SQL Server 2005 ofrece la posibilidad de que varias instrucciones devuelvan conjuntos de resultados al mismo tiempo en una única conexión. En las versiones anteriores de SQL Server, sólo una instrucción al mismo tiempo podía devolver conjuntos de resultados para cada conexión y no podían ejecutarse nuevas instrucciones hasta que se hubiesen recuperado todos los conjuntos de resultados.

Para obtener más información, vea Entorno de ejecución de lotes y MARS.

Incluir columnas sin clave en índices no agrupados

Las columnas que no forman parte de la clave del índice pueden incluirse en índices no agrupados. Incluir las columnas sin clave puede acelerar las consultas, que pueden adquirir todos los datos que necesitan del índice sin tener que obtener acceso a las filas de datos, y pueden superar las limitaciones del tamaño de índice actual, de un máximo de 16 columnas de clave, y un tamaño máximo de clave de índice de 900 bytes.

Para obtener más información, vea Índice con columnas incluidas.

Granularidad de bloqueo de índice

Las nuevas opciones ALLOW_ROW_LOCKS y ALLOW_PAGE_LOCKS de CREATE INDEX y ALTER INDEX pueden utilizarse para controlar el nivel en el que se produce el bloqueo del índice.

Para obtener más información, vea Establecer opciones de índice.

Índices en columnas de tipo XML

Los documentos y fragmentos XML almacenados mediante el tipo de datos XML pueden ser muy grandes. Si no están indizados, el Database Engine (Motor de base de datos) deberá dividir los documentos y fragmentos para cada referencia. La definición de un índice en una columna utilizando el tipo de datos XML permite que el Database Engine (Motor de base de datos) procese los documentos y fragmentos con mayor eficacia.

Para obtener más información, vea Índices en columnas de tipo de datos xml.

Mejoras en la vista indizada

El optimizador de consultas de SQL Server 2005 puede hacer coincidir un número mayor de consultas con vistas indizadas que en las versiones anteriores, como consultas que contienen expresiones escalares, funciones de agregado escalar y funciones definidas por el usuario, expresiones de intervalo y condiciones de equivalencia.

Para obtener más información, vea Diseñar vistas indizadas.

Las definiciones de vistas indizadas pueden contener también funciones de agregado escalar y funciones definidas por el usuario con ciertas restricciones.

Para obtener más información, vea Crear vistas indizadas.

Nuevas sugerencias de consulta

Se han agregado cuatro sugerencias de consulta que se utilizan en la generación de planes de consulta óptimos.

La sugerencia RECOMPILE exige que SQL Server descarte el plan generado para la consulta después su ejecución, de modo que se genere una nueva consulta la próxima vez que se ejecute el mismo plan de consulta o uno similar. La sugerencia RECOMPILE es útil para consultas con valores variables que varían considerablemente cada vez que se compilan y ejecutan. Puede utilizar esta sugerencia en lugar de la opción WITH RECOMPILE para crear procedimientos almacenados cuando desee que únicamente vuelva a compilarse un subconjunto de consultas que se encuentre dentro del procedimiento almacenado.

La sugerencia OPTIMIZE FOR indica a SQL Server que, cuando la consulta se compile y optimice, utilice un valor determinado para una variable local con un valor que sería desconocido en cualquier otro caso.

La sugerencia USE PLAN indica a SQL Server que utilice un plan de consulta existente para una consulta. La sugerencia de consulta USE PLAN puede utilizarse en consultas que utilicen planes que den lugar a tiempos de ejecución lentos, pero para las que se tenga constancia de que existen planes mejores.

La sugerencia PARAMETERIZATION especifica si una consulta debe parametrizarse como parte de la compilación de un plan de consulta, y si debe utilizarse dentro de una guía de plan para reemplazar el valor de configuración actual de la opción SET de la base de datos PARAMETERIZATION.

Para obtener más información, vea Query Hint (Transact-SQL).

Quitar y volver a generar objetos grandes

Cuando se quitan o se vuelven a generar tablas e índices que utilizan más de 128 extensiones, SQL Server 2005 difiere las cancelaciones de asignación de páginas reales y sus bloqueos asociados hasta que se confirma la transacción. Es posible evitar estos bloqueos dividiendo el proceso en una fase lógica y física.

Para obtener más información, vea Quitar y volver a generar objetos grandes.

Bases de datos compartidas escalables

Esta nueva característica permite adjuntar una base de datos de sólo lectura a varias instancias de servidor de SQL Server 2005 en una red de área de almacenamiento (SAN). Una base de datos compartida escalable permite escalar una base de datos mediante hardware estándar para volúmenes y servidores de informes y para conseguir una ruta de acceso de actualización optimizada.

Para obtener más información, vea Información general de bases de datos compartidas escalables.

Vea también

Conceptos

Mejoras en el motor de base de datos

Ayuda e información

Obtener ayuda sobre SQL Server 2005