Hola,
Mas que una pregunta, es una peticion para obtener sugerencias.
La situacion es la siguiente:
Actualmente estoy auditando un sistema que tiene como back end a SQL Server
6.5, que de lejos se le ven grandes deficiencias. En ocasiones tienen que
reiniciar 2 o 3 veces el servidor en un dia, un simple reporte puede llegar
a tardar mas de 20 mins., etc. Por ahora la meta es mejorar un poco el
rendimiento mientras se define si se compra o realiza un desarrollo nuevo.
Los puntos que he realizado es lo siguiente:
1) Verificar hardware y red { Servidor HP PIV 2.6 Ghz, 2 Gb RAM, HD
SCSI, 2 Tarjetas de red. Bases de datos de hasta 2 gb aprox.
2) Revision de tablas, indices, triguers, normalizacion actual
3) Revisar las peticiones de algunos procesos mediante el analizador de SQL
3) Idenficar cantidad de usuarios y tipo de acceso. (aprox. 60 usuarios en
red local)
Entre las deficiencias encontradas estan:
1) Las conexiones se hacen en su mayoria por la IP de la primer tarjeta,
recomendado un balance de carga por ambas interfaces.
2) La mayoria de los indices estan definidos con Fill Factor de 100%,
iniciando a cambiarlos todos a 0%
3) Un reporte que tardaba mas de 10 mins en obtenerse, detecte gracias al
analizador de consultas, que se utiliza como origen del reporte una consulta
con 3 tablas, de las cuales la mayor tiene +6.5 millones de registros y el
campo que la relaciona en la consulta (llave secundaria) no esta indexada.
Ademas de utilizar criterios del tipo CONVERT(int, campo)=valor, lo cual
descarta el uso de indices para estas columnas. Se indexo el campo,
mejorando el rendimiento notablemente.
* Se procedera a revisar todos los indices y a verificar la mayoria de los
procesos, asi como su rendimiento en el analizador de consultas, detectando
sus deficiencias.
* Por otro lado he propuesto emigrar sus bases de datos a SQL Server 2000 en
un servidor de pruebas y monitorear por unas horas en produccion, para ver
si la aplicacion funciona igual.
Alguna sugerencia que pudiera mejorar el rendimiento global del sistema?.
La idea es que si se demuestra una mejoria notable en el sistema, se
procedera a la compra de un mejor hardware, lo cual estoy recomendando.
Gracias,
Antonio Ortiz
ant(a)aortiz.net
www.aortiz.net
www.progvisual.com
Leer las respuestas