Bases de Datos - Problemas de rendimiento

 
Vista:

Problemas de rendimiento

Publicado por Nelson (1 intervención) el 09/05/2007 16:49:45
Saludos...
Tengo un problema de rendimiento ejecutando un stored procedure, que me actualiza una tabla de millones de registros.
Que podría revisar en esta tabla que hace que se demore mucho la actualización.

Ya la tabla tiene algunos indices.

Que mas poría revisar?

Gracias y atento a sus comentarios
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Problemas de rendimiento

Publicado por Isaías (24 intervenciones) el 15/05/2007 20:46:34
Existe un truco para la actualizacion masiva de registros, NUNCA debes hacer un simple UPDATE a una tabla que tienes MILLONES DE REGISTROS, es mejor que la metas en un ciclo, ejemplo

-- Actualiza de 100 mil, en 100 mil
SET ROWCOUNT 100000
WHILE EXISTS (SELECT * FROM CLIENTE WHERE SALDO < 5)
BEGIN
UPDATE CLIENTE SET SALDO = 10 WHERE SALDO < 5
CONTINUE
END

Con esto, podras interrumpir en cualquier momento y no hara mas que un ROLLBACK de 100 mil registros o menos.

Por otro lado, cuando termines de actualizar tus registros, debes hacer un respaldo de tu log.

En tu analizador de consultas, ejecuta:

CHECKPOINT
CHECKPOINT
CHECKPOINT
BACKUP LOG tubase WITH TRUNCATE_ONLY
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar