Estamos debatiendo si usar la opción SORT_IN_TEMPDB para nuestras tablas DW. Tengo entendido que hay más escrituras al usar esta opción, aunque son más secuenciales. Tenemos una SAN (que a veces ha sido notoriamente lenta), por lo que en nuestro caso queremos limitar el número de escrituras tanto como sea posible. Creo que tempdb está en un LUN (conjunto de discos) separado.
Tenemos mucho espacio en disco en nuestro archivo de datos y en nuestro archivo tempdb. En este caso, ¿nos beneficiaría usar SORT_IN_TEMPDB?
Una cosa que me llamó la atención fue este comentario en esta respuesta
Al reconstruir un índice, necesitaría el doble del espacio del índice + 20% para la clasificación. Entonces, en general, para reconstruir cada índice en su base de datos, solo necesita el 120% de su índice más grande en su base de datos. Si usa SORT_IN_TEMPDB, solo gana un 20%, aún necesita un 100% adicional en su archivo de datos. Además, usar sort in tempdb aumenta drásticamente su carga de E / S, ya que en lugar de escribir el índice una vez en el archivo de datos, ahora lo escribe una vez en tempdb y luego lo escribe en el archivo de datos. Entonces eso no siempre es ideal.
Definitivamente no queremos aumentar nuestra carga de E / S con nuestra SAN lenta / posiblemente mal configurada.
¿Cuál sería la mejor manera de probar esto? ¿Simplemente reconstruyendo la tabla con y sin la opción y registrando los tiempos?
Editar : Tenemos 8 archivos tempdb, cada uno de 15GB. Tenemos banderas TF 1117/1118 establecidas e IFI está habilitado. Actualmente hacemos una mezcla de reconstrucción con la opción sort_in_tempdb y sin ella.
¡Gracias!
SQL Server 2012 Enterprise