Compartir a través de


Configuración del servidor: memoria de creación de índices

Se aplica a:SQL Server

En este artículo se describe cómo establecer la opción de configuración del servidor index create memory en SQL Server mediante SQL Server Management Studio o Transact-SQL. La opción index create memory controla la cantidad máxima de memoria asignada inicialmente para las operaciones de ordenación al crear índices. El valor predeterminado de esta opción es 0 (configuración automática). Si se necesita más memoria para la creación de índices y la memoria está disponible, el servidor la usa. Al hacerlo, se supera la configuración de esta opción. Si no hay más memoria disponible, la creación del índice continúa usando la memoria ya asignada.

Limitaciones

El valor de la opción memoria mínima por consulta tiene prioridad sobre la opción index create memory. Si cambia las dos opciones y index create memory es menor que min memory per query, recibirá un mensaje de advertencia, pero el valor se establece. Durante la ejecución de consultas, recibirá una advertencia similar.

Cuando se usan tablas e índices con particiones, los requisitos mínimos de memoria para la creación de índices pueden aumentar significativamente si hay índices con particiones no alineados y un alto grado de paralelismo. Esta opción controla la cantidad inicial total de memoria asignada para todas las particiones de índice en una sola operación de creación de índices. La consulta finaliza con un mensaje de error si la cantidad establecida por esta opción es menor que el mínimo necesario para ejecutar la consulta.

El valor de ejecución de esta opción no supera la cantidad real de memoria que se puede usar para el sistema operativo y la plataforma de hardware en la que se ejecuta SQL Server.

Recomendaciones

Esta opción es una opción avanzada y solo debe cambiarla un profesional de base de datos experimentado.

La opción index create memory es la configuración automática y normalmente funciona sin necesidad de ajuste. No obstante, si tiene dificultades para crear índices, puede probar a aumentar el valor de esta opción a partir del valor de ejecución.

Crear un índice en un sistema de producción suele ser una tarea poco frecuente y que, a menudo, se programa como un trabajo que se ejecutará en horas de poca actividad. Por lo tanto, al crear índices con poca frecuencia y durante el tiempo de poca actividad, el incremento deindex create memory puede mejorar el rendimiento de la creación de índices. Sin embargo, mantenga la opción de configuración de memoria mínima por consulta en un número bajo para que el trabajo de creación de índices se inicie aunque no esté disponible toda la memoria solicitada.

Permisos

De forma predeterminada, todos los usuarios tienen permisos de ejecución en sp_configure sin ningún parámetro o solo con el primero. Para ejecutar sp_configure con ambos parámetros y cambiar una opción de configuración, o para ejecutar la instrucción RECONFIGURE, un usuario debe tener el permiso ALTER SETTINGS en el servidor. Los roles fijos de servidor ALTER SETTINGS y serveradmin tienen el permiso de forma implícita.

Usar SQL Server Management Studio

  1. En el Explorador de objetos, haga clic con el botón derecho en un servidor y seleccione Propiedades.

  2. Seleccione el nodo Memoria.

  3. En Memoria de creación de índice, escriba o seleccione el valor que desee para la opción index create memory.

    Use la opción index create memory para controlar la cantidad de memoria que usa la creación de índices. La opción index create memory es la configuración automática y debería funcionar en la mayoría de los casos sin necesidad de ajuste. No obstante, si tiene dificultades para crear índices, puede probar a aumentar el valor de esta opción a partir del valor de ejecución. Las ordenaciones de consultas se controlan a través de la opción min memory per query.

Uso de Transact-SQL

  1. Conéctese con el Motor de base de datos.

  2. En la barra Estándar, seleccione Nueva consulta.

  3. Copie y pegue el ejemplo siguiente en la ventana de consulta y seleccione Ejecutar. En este ejemplo se muestra cómo usar sp_configure para establecer el valor de la opción de index create memory en 4096.

    USE master;
    GO
    
    EXECUTE sp_configure 'show advanced options', 1;
    GO
    
    RECONFIGURE;
    GO
    
    EXECUTE sp_configure 'index create memory', 4096;
    GO
    
    RECONFIGURE;
    GO
    
    EXECUTE sp_configure 'show advanced options', 0;
    GO
    
    RECONFIGURE;
    GO
    

Para obtener más información, vea Opciones de configuración de servidor.

Seguimiento: Después de configurar la opción de memoria para creación de índices

La configuración surte efecto inmediatamente, sin necesidad de reiniciar el servidor.