Mejoras posibles de la BD

06/07/2004 - 16:56 por Ian Tanner | Informe spam
Hola,
tengo una base de datos que ha crecido mucho.
Y a horas que hay muchos accesos, la CPU sube mucho y los
bloqueos se disparan.
Normalmente, ejecutando el sp_Lock suelo tener menos de 27
bloqueos. Pero en esos instantes llego a tener más de 3000.

He probado a cambiar los índices pero no he conseguido
mejorarlo.

He pensado en que podía dividir la BD en dos, una para las
insert, delete y updates y otra para las selects
principalmente.

Y que la segunda se actualizara mediante replicación de la
primera.
El problema es que la replicación transaccional requiere
que las tablas tengan un índice único. Hay consultas de
tablas de muchos registros que en cuanto les pongo un
índice único uniqueidentifier con un valor por defecto
newid() se ralentizan muchísimo.

¿Qué solución puedo tomar?

Muchas gracias.

Preguntas similare

Leer las respuestas

#6 Miguel Egea
12/07/2004 - 15:19 | Informe spam
Dos preguntas ¿ que siginifica que han crecido mucho? ¿de cuantos
registros/consultas estámos hablando?

Por otra parte ¿ Has pensado en segmentar dentro de la misma BDD? Esto lo
podrías hacer con procesos batch por la noche, cada hora, o como fuere
usando la clásula with readpast o de forma similar.
¿Nos comentas la estructura y lo hablamos?


Saludos

Miguel Egea
Microsoft SQL-SERVER MVP
Brigada Anti-Cursores
http://www.portalsql.com

(Quita el online si me tienes que mandar un correo)

"Ian Tanner" escribió en el mensaje
news:27eef01c46369$73cfa340$
Hola,
tengo una base de datos que ha crecido mucho.
Y a horas que hay muchos accesos, la CPU sube mucho y los
bloqueos se disparan.
Normalmente, ejecutando el sp_Lock suelo tener menos de 27
bloqueos. Pero en esos instantes llego a tener más de 3000.

He probado a cambiar los índices pero no he conseguido
mejorarlo.

He pensado en que podía dividir la BD en dos, una para las
insert, delete y updates y otra para las selects
principalmente.

Y que la segunda se actualizara mediante replicación de la
primera.
El problema es que la replicación transaccional requiere
que las tablas tengan un índice único. Hay consultas de
tablas de muchos registros que en cuanto les pongo un
índice único uniqueidentifier con un valor por defecto
newid() se ralentizan muchísimo.

¿Qué solución puedo tomar?

Muchas gracias.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida