Problemas de rendimiento al restaurar una BD de SQL2000 a SQL2005
Los problemas son debidos a que sql 2005 tiene a las estadisticas de sql 2000 como obsoletas, por lo que no las utiliza adecuadamente al crear el plan de ejecución de las consultas, debido a esto no se utilizan indices adecuados en la ejecución de estas.
Este problema lo soluciona progresivamente sql 2005 con la actualizacion automatica de estadisticas, el problema es que la actualizacion se realiza cuando a cambiado o inserta un porcentaje de registros calculado sobre el total de registros, esto en tablas de gran tamaño puede tardar considerablemente.
Por lo que se tiene que hacer un update de las estadisticas de las estadisticas o ejecutar un sp_ que las actuliza todas aunque no lo recomiendo en Bd de gran tamaño.
SQL's utiles:
Ver la fecha de las estadisticas:
SELECT i.name AS 'Index Name' , STATS_DATE(i.id, i.indid) AS 'Statistics Updated'
FROM sysobjects o INNER JOIN sysindexes i ON o.id = i.id
WHERE o.name ='nombre tabla' -- para ver una tabla
WHERE STATS_DATE(i.id, i.indid) IS NULL -- para ver las que no tienen estadisticas
Ver las estadisticas de una tabla e indice:
DBCC SHOW_STATISTICS ('Person.Address', AK_Address_rowguid);
Update de las estadisticas de una tabla:
UPDATE STATISTICS [nombre tabla] WITH FULLSCAN --fullscan es completo, cuidado con tablas de gran tamaño.
Este es el link de microsoft junto con otros links interesantes que hablan de estadisticas de sql y el parrafo que habla del tema.
http://technet.microsoft.com/es-es/library/ms190397.aspx
http://msmvps.com/blogs/pmackay/archive/2006/02/03/estadisticas-de-sql-server-parte-1.aspx
http://msmvps.com/blogs/pmackay/archive/2006/02/06/estadisticas-de-sql-server-parte-2.aspx
MICROSOFT : Trabajar con estadísticas después de actualizar una base de datos a SQL Server 2005
Cuando actualiza una base de datos a SQL Server 2005 desde una versión anterior de SQL Server, todas las estadísticas de la versión anterior se consideran obsoletas. Por lo tanto, durante el primer uso, las estadísticas que se pueden actualizar con la opción AUTO_UPDATE_STATISTICS de la base de datos se actualizan utilizando la frecuencia de muestreo predeterminada. Esta característica tiene importantes ventajas y normalmente no hace falta emprender ninguna acción. No obstante, en casos excepcionales, esto puede dar como resultado estadísticas menos precisas si éstas se han calculado manualmente en una versión anterior de SQL Server utilizando FULLSCAN u otra frecuencia de muestreo elevada; o bien si la tabla que se está muestreando ocupa más de 8 MB y la distribución de datos no es aleatoria. De hecho, una reducción de la frecuencia de actualización siempre se puede producir en estadísticas FULLSCAN para tablas mayores de 8 MB cuando se produce AUTO_UPDATE_STATISTICS. La actualización inicial de estadísticas se puede producir antes de la actualización a la nueva versión de SQL Server.
La ventaja de actualizar al formato de SQL Server 2005 es que las estadísticas de SQL Server 2005 para una frecuencia de muestreo específica son de mayor calidad normalmente que las de SQL Server 2000 y versiones anteriores. Asimismo, SQL Server 2005 crea estadísticas de resumen de cadenas especiales para columnas de caracteres, como se ha descrito anteriormente. Para obtener más información acerca de las estadísticas en SQL Server 2005, vea el sitio Web de Microsoft .
En la mayoría de casos, no hay que tomar ninguna acción especial acerca de las estadísticas tras actualizar una base de datos. No obstante, si tiene una base de datos grande con requisitos de rendimiento exigentes, se recomienda que, tras actualizar, ejecute sp_updatestats (Transact-SQL) con la opción RESAMPLE. Esto conserva las frecuencias de muestreo anteriores y actualiza todas las estadísticas al formato más reciente. Tenga en cuenta que las estadísticas creadas durante la creación del índice se han creado utilizando la frecuencia de muestreo FULLSCAN. Éstas y otras estadísticas de FULLSCAN utilizan la frecuencia de muestreo predeterminada cuando se actualizan a causa de AUTO_UPDATE_STATISTICS. Si prefiere no actualizar todas las estadísticas ejecutando sp_updatestats , considere la posibilidad de utilizar UPDATE STATISTICS para actualizar estadísticas selectivamente en índices y otras estadísticas de FULLSCAN con la frecuencia de muestreo FULLSCAN después de la actualización de la base de datos.