Prueba de una aplicación actualmente bajo carga de un solo usuario: a medida que los datos de prueba aumentaron a tamaños de producción (400k-2M filas por tabla), algunos SP SELECT ya no son lo suficientemente rápidos (con datos de prueba limitados, solían ser <30ms cada uno, ahora son 100-200 ms, pero hay varios, por lo que el retraso se está haciendo evidente en la interfaz de usuario).
sql-server
performance
sql-server-2000
Pastymage
fuente
fuente
Respuestas:
Puedes usar
DBCC SQLPERF("waitstats")
. Esto devolverá los tiempos de espera de las tareas que estaba esperando su servidor SQL. Las explicaciones detalladas de cada contador se pueden encontrar en línea. Puede usar esta información para descubrir sus cuellos de botella.Además, active las estadísticas del cliente en el analizador de consultas para ver los tiempos de espera en el lado del cliente.
Supongo que su hardware no ha cambiado desde su prueba inicial, por lo que, dado que son constantes, no dudaría de ellos.
fuente
Pensamientos:
Algunas soluciones:
Ejecute el índice DMV faltante para ver, bueno, índices faltantes:
... y las consultas DMV más caras
De lo contrario, esta pregunta SO tiene buenos consejos de mí y otros tipos de alta repetición de SQL: https://stackoverflow.com/q/4118156/27535 (no copiaré / pegaré las 3 respuestas largas)
fuente
Registre los recursos del sistema o mire el administrador de tareas para ver cuántos recursos del sistema utilizan los procesos.
fuente
Lo interesante que debe considerarse es la versión de MSSQL 2000 en ejecución
Hay cuatro versiones de los binarios.
Cada una de esas versiones tiene límites en términos de RAM y CPU.
Vale la pena explorar la posibilidad de que la cantidad de datos actualmente almacenados simplemente haya superado las capacidades de la versión de MSSQL 2000 debido a que las consultas necesitan más RAM para cumplir consultas / subconsultas o la utilización inadecuada de la CPU. Es posible que necesite actualizar la versión binaria a la versión MSSQL 2000 Entrprise (probablemente una posibilidad remota de la antigüedad de su versión de MSSQL) o la mejor versión que su presupuesto puede pagar.
Es posible que incluso desee salir de MSSQL 2000, ya que 2008 es la última versión y tiene soporte actual disponible. Nuevamente, esto podría ser un problema presupuestario. Si ya está utilizando Enterprise, o su presupuesto no puede permitir ninguna actualización importante, ahora puede explorar las Estadísticas de DB o el Diseño de DB.
Descargo de responsabilidad: no soy un DBA de SQL Server
fuente