Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este tema se define el grado máximo de paralelismo y se explica cómo modificar esta configuración en SQL Server 2014 mediante SQL Server Management Studio o Transact-SQL. En equipos de varios procesadores que ejecutan SQL Server Enterprise o superior, las instrucciones de índice pueden usar varios procesadores para realizar las operaciones de examen, ordenación e índice asociadas a la instrucción de índice igual que otras consultas. El número de procesadores que se usan para ejecutar una sola instrucción de índice viene determinado por la opción de configuración grado máximo de paralelismo , la carga de trabajo actual y las estadísticas de índice. La opción grado máximo de paralelismo determina el número máximo de procesadores que se van a usar en la ejecución del plan en paralelo. Si el motor de base de datos de SQL Server detecta que el sistema está ocupado, el grado de paralelismo de la operación de índice se reduce automáticamente antes de que se inicie la ejecución de la instrucción. El motor de base de datos también puede reducir el grado de paralelismo si la columna de clave inicial de un índice no particionado tiene un número limitado de valores distintos o la frecuencia de cada valor distinto varía significativamente.
Nota:
Las operaciones de índice en paralelo no están disponibles en todas las ediciones de SQL Server. Para obtener más información, vea Features Supported by the Editions of SQL Server 2014.
En este tema
Antes de comenzar:
Para establecer el grado máximo de paralelismo, use:
Antes de empezar
Limitaciones y restricciones
El número de procesadores que usa el optimizador de consultas normalmente proporciona un rendimiento óptimo. Sin embargo, las operaciones como crear, volver a generar o quitar índices muy grandes consumen muchos recursos y pueden provocar recursos insuficientes para otras aplicaciones y operaciones de base de datos durante la operación de índice. Cuando se produce este problema, puede configurar manualmente el número máximo de procesadores que se usan para ejecutar la instrucción de índice limitando el número de procesadores que se usarán para la operación de índice.
La opción de índice MAXDOP anula la opción de configuración de grado máximo de paralelismo solo para la consulta que especifica esta opción. En la tabla siguiente se enumeran los valores enteros válidos que se pueden especificar con la opción de configuración grado máximo de paralelismo y la opción de índice MAXDOP.
Importancia Descripción 0 Especifica que el servidor determina el número de CPU que se usan, en función de la carga de trabajo del sistema actual. Este es el valor predeterminado y la configuración recomendada. 1 Suprime la generación de planes paralelos. La operación se ejecutará en serie. 2-64 Limita el número de procesadores al valor especificado. Es posible que se usen menos procesadores en función de la carga de trabajo actual. Si se especifica un valor mayor que el número de CPU disponibles, se usa el número real de CPU disponibles. La ejecución del índice paralelo y la opción de índice MAXDOP se aplican a las siguientes instrucciones Transact-SQL:
CREAR ÍNDICE
ALTERAR EL ÍNDICE RECONSTRUIR
DROP INDEX (esto solo se aplica a los índices agrupados).
MODIFICAR TABLA AGREGAR (index) RESTRICCIÓN
ALTER TABLE DROP (índice agrupado) CONSTRAINT
La opción de índice MAXDOP no se puede especificar en la instrucción ALTER INDEX REORGANIZE.
Los requisitos de memoria para las operaciones de índice con particiones que requieren ordenación pueden ser mayores si el optimizador de consultas aplica grados de paralelismo a la operación de compilación. Cuanto mayor sea el grado de paralelismo, mayor será el requisito de memoria. Para obtener más información, vea Partitioned Tables and Indexes.
Seguridad
Permisos
Requiere el permiso ALTER en la tabla o vista.
Uso de SQL Server Management Studio
Para establecer el grado máximo de paralelismo en un índice
En el Explorador de objetos, haga clic en el signo más para expandir la base de datos que contiene la tabla en la que desea establecer el grado máximo de paralelismo para un índice.
Expanda la carpeta Tablas .
Haga clic en el signo más para expandir la tabla en la que desea establecer el grado máximo de paralelismo para un índice.
Expanda la carpeta Índices .
Haga clic con el botón derecho en el índice para el que desea establecer el grado máximo de paralelismo y seleccione Propiedades.
Debajo de Seleccionar una página, seleccione Opciones.
Seleccione Grado máximo de paralelismo y escriba algún valor entre 1 y 64.
Haz clic en Aceptar.
Uso de Transact-SQL
Para establecer el grado máximo de paralelismo en un índice existente
En el Explorador de objetos, conéctese a una instancia del Motor de base de datos.
En la barra de Estándar, haga clic en Nueva consulta.
Copie y pegue el siguiente ejemplo en la ventana de consulta y haga clic en Ejecutar.
USE AdventureWorks2012; GO /*Alters the IX_ProductVendor_VendorID index on the Purchasing.ProductVendor table so that, if the server has eight or more processors, the Database Engine will limit the execution of the index operation to eight or fewer processors. */ ALTER INDEX IX_ProductVendor_VendorID ON Purchasing.ProductVendor REBUILD WITH (MAXDOP=8); GO
Para más información, vea ALTER INDEX (Transact-SQL).
Establecer el grado máximo de paralelismo en un nuevo índice
En el Explorador de objetos, conéctese a una instancia del Motor de base de datos.
En la barra de Estándar, haga clic en Nueva consulta.
Copie y pegue el siguiente ejemplo en la ventana de consulta y haga clic en Ejecutar.
USE AdventureWorks2012; GO CREATE INDEX IX_ProductVendor_NewVendorID ON Purchasing.ProductVendor (BusinessEntityID) WITH (MAXDOP=8); GO
Para más información, consulte CREATE INDEX (Transact-SQL).