Optimizar el rendimiento de tempdb
Actualizado: 5 de diciembre de 2005
El tamaño y la ubicación física de la base de datos tempdb puede afectar al rendimiento de un sistema. Por ejemplo, si el tamaño definido en tempdb es demasiado pequeño, parte de la carga de procesamiento del sistema puede deberse al crecimiento automático de tempdb hasta el tamaño necesario para admitir la carga de trabajo cada vez que se reinicia la instancia de SQL Server. Para evitar esta sobrecarga, aumente el tamaño de los archivos de registro y de datos de tempdb. Para obtener información acerca de cómo determinar la cantidad de espacio en disco adecuada para tempdb, vea Planeamiento de capacidad para tempdb.
Recomendaciones sobre el tamaño y la ubicación de tempdb
Para obtener un rendimiento óptimo de tempdb, se recomienda la configuración siguiente al utilizar tempdb en un entorno de producción:
Establezca el modelo de recuperación de tempdb en SIMPLE. Este modelo recupera espacio del registro para mantener bajos los requisitos de espacio.
Para obtener más información, vea ALTER DATABASE (Transact-SQL) o Cómo ver o cambiar el modelo de recuperación de una base de datos (SQL Server Management Studio).Permita que los archivos de tempdb crezcan automáticamente cuando sea necesario. De este modo, el archivo podrá crecer hasta que el disco esté lleno.
[!NOTA] Si el entorno de producción no puede tolerar los tiempos de espera de aplicaciones que podrían producirse durante las operaciones de crecimiento automático, asigne espacio previamente para acomodar la carga de trabajo esperada.
Establezca el incremento de crecimiento de archivos en un tamaño razonable para evitar que los archivos de la base de datos tempdb crezcan en un porcentaje demasiado pequeño. Si el crecimiento de los archivos es demasiado pequeño comparado con la cantidad de datos que se escriben en tempdb, es posible que sea necesario expandir tempdb constantemente. Esto afectará al rendimiento. Se recomienda seguir estas directrices generales al establecer el incremento de FILEGROWTH para archivos de tempdb.
Tamaño de archivos de tempdb Incremento de FILEGROWTH De 0 a 100 MB
10 MB
De 100 a 200 MB
20 MB
200 MB o superior
10%*
* Podría ser necesario ajustar este porcentaje en función de la velocidad del subsistema de E/S en que estén ubicados los archivos de tempdb. Para evitar que se produzcan tiempos de espera de pestillos, se recomienda limitar la operación de crecimiento automático a unos dos minutos. Por ejemplo, si el subsistema de E/S puede inicializar un archivo a 50 MB por segundo, se deberá establecer el incremento de FILEGROWTH en 6 GB como máximo, independientemente del tamaño de los archivos de tempdb. Siempre que sea posible, use la inicialización de archivos de base de datos instantánea para mejorar el rendimiento de las operaciones de crecimiento automático.
Asigne espacio previamente para todos los archivos de tempdb estableciendo el tamaño de archivo en un valor lo suficientemente alto para acomodar la carga de trabajo habitual del entorno. Así se evita que tempdb se expanda con demasiada frecuencia, lo que puede afectar al rendimiento. La base de datos tempdb debe establecerse de modo que crezca automáticamente, pero sólo con el fin de aumentar el espacio en disco para las excepciones no previstas.
Cree tantos archivos como sea necesario para maximizar el ancho de banda del disco. El uso de varios archivos reduce la contención de almacenamiento de tempdb y produce una escalabilidad considerablemente superior. No obstante, no cree demasiados archivos porque podría disminuir el rendimiento y aumentar la carga administrativa. Como regla general, cree un archivo de datos por CPU del servidor (teniendo en cuenta la configuración de affinity mask) y, a continuación, aumente o disminuya el número de archivos según sea necesario. Tenga en cuenta que una CPU de doble núcleo se cuenta como dos CPU.
Asigne a cada archivo de datos el mismo tamaño para obtener un rendimiento óptimo de relleno proporcional.
Coloque la base de datos tempdb en un subsistema de E/S rápido. Cree bandas en disco si hay muchos discos conectados directamente.
Coloque la base de datos tempdb en discos diferentes de los que utilizan las bases de datos de usuario.
Para obtener recomendaciones adicionales, vea Trabajar con tempdb en SQL Server 2005.
Modificar los parámetros de tamaño y de crecimiento de tempdb
Puede modificar los parámetros de tamaño y de crecimiento de archivos de los archivos de datos o de registro de tempdb mediante uno de los métodos siguientes:
- La instrucción ALTER DATABASE
- SQL Server Management Studio
Los valores de los parámetros de tamaño y de crecimiento de archivos se usan cuando se crea tempdb. Por ejemplo, si aumenta el tamaño del archivo de datos de tempdb a 20 MB y el incremento de crecimiento de archivos al 15%, los nuevos valores se aplican inmediatamente. Si las actividades transaccionales posteriores producen el crecimiento de tempdb, el archivo de datos volverá al tamaño de 20 MB cada vez que se reinicie la instancia de SQL Server.
Ver los parámetros de tamaño y de crecimiento de tempdb
Puede ver los parámetros de tamaño y de crecimiento de archivos de los archivos de datos o de registro de tempdb mediante uno de los métodos siguientes:
Ejecutando la siguiente consulta.
SELECT name AS FileName, size*1.0/128 AS FileSizeinMB, CASE max_size WHEN 0 THEN 'Autogrowth is off.' WHEN -1 THEN 'Autogrowth is on.' ELSE 'Log file will grow to a maximum size of 2 TB.' END, growth AS 'GrowthValue', 'GrowthIncrement' = CASE WHEN growth = 0 THEN 'Size is fixed and will not grow.' WHEN growth > 0 AND is_percent_growth = 0 THEN 'Growth value is in 8-KB pages.' ELSE 'Growth value is a percentage.' END FROM tempdb.sys.database_files; GO
Vea también
Tareas
Solucionar problemas de espacio en disco insuficiente en tempdb
Conceptos
Base de datos tempdb
Planeamiento de capacidad para tempdb
Otros recursos
Optimizar bases de datos
ALTER DATABASE (Transact-SQL)
sys.database_files (Transact-SQL)
Ayuda e información
Obtener ayuda sobre SQL Server 2005
Historial de cambios
Versión | Historial |
---|---|
5 de diciembre de 2005 |
|