Algunos comentarios: Por lo que comentas parece ser un sistema conocido que empueza con la letra "C". Si es asi por favor contactame a mi correo personal.
Si no es asi: Seguro tienes problemas con indices.y es probale que sea por FK Envia los indices de las tablas involucradas (sp_helpindex). Envia el plan de ejecucion de la eliminacion para que lo veamos. SET ISOLATION no sirve para nada en estos casos. Si tienes una buena politica de backup podrias tener el tamaño del LOG controlado al borrar de bloques de a 1000. Borrar de a bloques de 1000 esta bien y cuando llegues a un tamaño razonable trata de mantener el tamaño de la base controlado corriendo la eliminacion periodicamente.. Lo del wait es razonable y es la unica forma de asignarle menos prioridad al proceso.. Sin embargo, creo que no deberias estar tan preocupado ya que lo unico que parece debes corregir es el tema del backup y un tema de indices Saludos -- -------------------------------- Atte. Ing. Jose Mariano Alvarez On 5/9/07, Maxi Accotto <[EMAIL PROTECTED]> wrote:
Hola, bueno vayamos por partes, 8GB no es una base inmanejable ni mucho menos con lo cual la idea de borrar registros no te la recomiendo, esto podria ser aplicable cuando tenes una base mediana (por ej 500GB) o ya bases mas grandes (de 1TB para arriba) En tu caso no veo la necesidad de hacer borrados. Ahora bien, vos decis que es una pc buena, que sistema operativo tienes? que edicion de sql estas usando? Si tarda 1 min para 1000 registros solamente estamos en otro problema, no puede tardar ese tiempo. Tenes triggers? te fijaste que la consulta use el indice? si nos pasas el plan de ejecucion podriamos verlo mejor. Contame tambien las carecteristicas de ese servidor, y si ademas de SQL tienen ejecutando otra cosa, te cuento: aca tengo una tabla de 15M (millones) de registros con 250 usuarios concurrentes, borrar 1000 registros no llega a 3 segundos. Un abrazo ----------------------------------------------------------- Microsoft MVP en SQL Server Mentor asociado en SQLTotalConsulting (excelencia en servicios y consultoria SQLServer) Orador Culminis - Microsoft Influencier www.sqltotalconsulting.com ----------------------------------------------------------- El 9/05/07, Jose Cardaropoli <[EMAIL PROTECTED]> escribió: > -----El "servidor" si bien es una buena PC no es "servidor" > > > Hola, y con eso estas teniendo problemas? 4m de registros no es mucho > como para que tengas tantos problemas. > > Que tamaño tiene esa base de datos? cuantos GB? > > estas borrando de a 1000, bien eso no deberia ni mover la performance, > cuando haces los delete cuanto tarda en borrar 1000 por ej? > > ----1 minuto aprox., > > > y podrias poner el codigo que estas usando? > ----- delete from tabla where tabla.secuencia < nVariable (nVariable
tiene
> un numero único de secuencia) > > Tenes un indice por esa columna que estas poniendo en el where? > -----Si > > Te cuento, la verdad que no es buena idea andar haciendo lo que vos > haces, una base inmanejable me imagino que debe ser entonces mas de > 10TB > ------ni ahí 8 Gb con toda la furia > > > o cosas similares, ademas luego de borrar los registros la base > no se achica sola, debes hacer otro proceso con lo cual estas > sobrecargando mucho a los recursos de tu server sobre todo en discos. > > Contestame esas preguntas y vemos cual es la mejor opcion si > borrarlos, si pasarlos a otro filegroups y tener historicos,etc , etc. > > ----------------------------------------------------------- > Microsoft MVP en SQL Server > Mentor asociado en SQLTotalConsulting > (excelencia en servicios y consultoria SQLServer) > Orador Culminis - Microsoft Influencier > www.sqltotalconsulting.com > ----------------------------------------------------------- > > > El 9/05/07, Jose Cardaropoli <[EMAIL PROTECTED]> escribió: > > > > > > 1) porque necesitas borrar tantos registros > > Porque la base está tomando un tamaño inmanejable, porque
hay
> > procesos en el cliente de backup que para cambiarles la tecnología es > > bastante problematico, porque hay datos que no necesitamos, etc, etc,
etc
> > > > > > 2) cuantas tablas estan en esta condicion? > > Serán 6 (+ó-) > > > > 3) Son las mismas ablas donde necesitas insertar? > > Si > > > > 4) Cuantos registros son los que necesitas borrar? > > 4.000.000 aprox > > > > 5) Como los estas borrando > > Con "delete from tabla where tabla.secuencia < nNum" > > Todas las tablas tienen .secuencia > > Con un proceso por bloques de 1000, con wait entre delete y
delete
> > para darle tiempo al servidor a respirar > > > > > > Saludos > > > > José > > > > > > > > > > > > > > > -- > > > > -- > Internal Virus Database is out-of-date. > Checked by AVG Free Edition. > Version: 7.5.441 / Virus Database: 268.18.26/752 - Release Date:
08/04/2007
> 20:34 > > > --
