Eventos
31 mar, 23 - 2 abr, 23
Evento de aprendizaje de SQL, Fabric y Power BI más grande. 31 de marzo – 2 de abril. Use el código FABINSIDER para ahorrar $400.
Regístrate hoyEste explorador ya no se admite.
Actualice a Microsoft Edge para aprovechar las características y actualizaciones de seguridad más recientes, y disponer de soporte técnico.
Se aplica a: SQL Server
Azure SQL Database
Azure SQL Managed Instance
Base de datos de Azure SQL de Microsoft Fabric
En este tema se define el grado máximo de paralelismo y se explica cómo modificar esta configuración en SQL Server mediante SQL Server Management Studio o Transact-SQL.
En los sistemas multiprocesador que ejecutan SQL Server Enterprise o superior, las instrucciones de índice pueden usar varios procesadores (CPU) para realizar las operaciones de examen, ordenación e indexación asociadas a la instrucción de índice, al igual que hacen otras consultas. El número de CPU que se usan para ejecutar una sola instrucción de índice viene determinado por la opción de configuración del servidor Grado máximo de paralelismo, la carga de trabajo actual y las estadísticas de índices. La opción max degree of parallelism determina el número máximo de procesadores que se utilizarán en la ejecución de planes paralelos. 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 comenzar 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 sin particiones tiene un número limitado de valores distintos o la frecuencia de cada valor distinto varía significativamente. Para obtener más información, consulte Guía de arquitectura de procesamiento de consulta.
Nota
Las operaciones de índices en paralelo no están disponibles en todas las ediciones de SQL Server. Para obtener más información, consulte Ediciones y características admitidas de SQL Server 2022.
En este tema
Antes de empezar:
Para establecer el grado máximo de paralelismo, usando:
El número de procesadores que utiliza el optimizador de consultas suele proporcionar un rendimiento óptimo. No obstante, las operaciones como la creación, reconstrucción o eliminación de índices de gran tamaño utilizan una gran cantidad de recursos y pueden provocar la falta de recursos para otras aplicaciones y operaciones de base de datos durante la operación de índice. Cuando se produce este problema, se puede configurar manualmente el número máximo de procesadores que se emplean 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 reemplaza la opción de configuración max degree of parallelism solo para la consulta que especifica esta opción. En la tabla siguiente se muestran los valores enteros válidos que se pueden especificar con la opción de configuración max degree of parallelism y la opción de índice MAXDOP.
Valor | Descripción |
---|---|
0 | Especifica que el servidor determina el número de CPU que se usan, según la carga de trabajo del sistema actual. Éste es el valor predeterminado y recomendado. |
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. Puede que se utilicen menos procesadores, dependiendo de la carga de trabajo actual. Si especifica un valor superior al número de CPU disponibles, se utilizará el número real de CPU disponibles. |
La ejecución de índices en paralelo y la opción de índice MAXDOP se aplican a las instrucciones de Transact-SQL siguientes:
DROP INDEX (Solo se aplica a los índices agrupados).
La opción de índice MAXDOP no se puede especificar en la instrucción ALTER INDEX (...) REORGANIZE
.
Los requisitos de memoria de las operaciones de índices con particiones que requieren ordenación pueden ser mayores si el Optimizador de consultas aplica grados de paralelismo a la operación de generación. Cuanto mayores sean los grados de paralelismo, mayor será el requisito de memoria. Para obtener más información, vea Partitioned Tables and Indexes.
Debe tener un permiso de ALTER
sobre la tabla o vista.
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 quiere establecer el grado máximo de paralelismo y seleccione Propiedades.
Debajo de Seleccionar una página, seleccione Opciones.
Seleccione Grado máximo de paralelismoy, a continuación, escriba un valor entre 1 y 64.
Haga clic en OK.
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 AdventureWorks2022;
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).
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 AdventureWorks2022;
GO
CREATE INDEX IX_ProductVendor_NewVendorID
ON Purchasing.ProductVendor (BusinessEntityID)
WITH (MAXDOP=8);
GO
Guía de arquitectura de procesamiento de consultas
CREATE INDEX (Transact-SQL)
ALTER INDEX (Transact-SQL)
DROP INDEX (Transact-SQL)
ALTER TABLE (Transact-SQL)
ALTER TABLE table_constraint (Transact-SQL)
ALTER TABLE index_option (Transact-SQL)
Eventos
31 mar, 23 - 2 abr, 23
Evento de aprendizaje de SQL, Fabric y Power BI más grande. 31 de marzo – 2 de abril. Use el código FABINSIDER para ahorrar $400.
Regístrate hoyCursos
Módulo
Configuración de bases de datos para el rendimiento óptimo - Training
Configuración de bases de datos para el rendimiento óptimo
Certificación
Microsoft Certified: Azure Database Administrator Associate - Certifications
Administre una infraestructura de base de datos de SQL Server para bases de datos relacionales locales e híbridas en la nube mediante las ofertas de bases de datos relacionales PaaS de Microsoft.
Documentación
Realización de operaciones de índice en línea - SQL Server
Cree, recompile o quite índices en línea en el Motor de base de datos de SQL Server.
Opción SORT_IN_TEMPDB para índices - SQL Server
Opción SORT_IN_TEMPDB para índices
Configuración del servidor: grado máximo de paralelismo - SQL Server
Obtenga información sobre la opción de grado máximo de paralelismo (MAXDOP). Vea cómo usarla para limitar el número de procesadores que usa SQL Server en la ejecución de planes paralelos.