... usas Windows?

-- 


Carlos Enrique Perez    
Direccion Syswarp SRL
www.syswarp.com.ar

"Cuando está bien hecho, el software es invisible" 

El mar, 29-05-2012 a las 15:23 -0500, ruben avila galindo escribió:

> 
> 
> 
> El 28 de mayo de 2012 17:11, Jaime Casanova <[email protected]>
> escribió:
> 
>         2012/5/28 ruben avila galindo <[email protected]>:
>         
>         > Hola amigos quiciera ver cual es la mejor forma de reindexar
>         todas las
>         > tablas de mi base de datos y si Postgresql puede hacerlo
>         automatico o manual
>         > y en que afectaria en horars de trabajos
>         > o si tiene q hacer en horas donde la BD no esta trabajando.
>         >
>         
>         
>         
>         usas el comando REINDEX como te indico Carlos, sin embargo ten
>         en
>         cuenta que REINDEX bloquea las tablas que estan siendo
>         procesadas lo
>         que se traduce en que no podras trabajar... hazlo en horas en
>         que no
>         tengas usuarios, si es un servicio 24x7 tendras que programar
>         un
>         mantenimiento o hacerlo de otra forma.
>         
>         la otra forma: crea un indice nuevo con CREATE INDEX
>         CONCURRENTLY con
>         la misma definicion de un indice en mal estado esto no bloquea
>         la
>         tabla pero se demora mas, luego de creado el nuevo indice
>         eliminas el
>         indice viejo (esto si bloquea la tabla pero lo hace por poco
>         tiempo...
>         generalmente)
>         obviamente esto tomara mas tiempo de tu parte y probablemente
>         solo
>         valga la pena para indices que en realidad estan en mal
>         estado.
>         
>         no, no ocurre automaticamente porque como te mencione esto
>         bloquea
>         tablas y no queremos que postgres bloquee algo sin nuestro
>         permiso,
>         verdad?
>         
>         
>         >
>         > Estuve viendo que cuando un Campo es por decir  Char(3)
>         Primary Key = A001
>         
>         
>         
>         te das cuenta que A001 no entra en char(3), verdad?
>         
> 
> 
> si me habia confundido char(3)= A01      me referia cuando era el
> codigo era fijo osea q si o si ocupaba los 3 digitos era mas rapido
> pero
> en varchar(3)=A1&  llenaba con espacio  y el otro A   , A01 como son
> cambiastes como que el Indice constantemente cambiar por eso que era
> mi pregunta si en Postgresql mi base de datos habia momentos que se
> ponia lento o por temas de mantenimiento tenia q reindexar las
> tablas. 
>         
>         > los Indices son mas rapidos , pero cuando es varchar(3)=A1
>         como que el
>         > varchar a veces no se regista todo el espacio y por ende
>          cada rato los
>         > indices paran cambiando
>         
>         
>         
>         esto no es cierto
>         char completa con espacios en blanco la cadena por lo que para
>         el
>         'JAIME' y 'JAIME ' son iguales, es decir ignora los espacios
>         al final
>         que tu hayas ingresado
>         varchar guarda solo lo que tu le pediste que guarde,
>         incluyendo
>         espacios iguales por lo que para el 'JAIME' y 'JAIME ' son
>         distintos
>         (porque ve que el espacio al final hace la diferencia)
>         
>         
>         > y por ende mi Base de Datos es lenta en cierta
>         > momentos.
>         >
>         
>         
>         
>         ahora, quien te dijo que necesitabas reindexar? que crees que
>         solucionaras con eso? (no digo que no soluciones nada, solo
>         quiero que
>         confirmes que no estas golpeando al aire a ver si rompes la
>         piñata)
>         
>         
> Esto me base en el tema de Desgramentacion de Disco duro  ya que
> inicialmente  estan fragmentados dispersos en cualquier lugar entonces
> si hablamos
> en terminos de Base de Datos seria que el Indice organiza la
> informacion haciendome que agiliza el proceso de la navegación de mis
> datos.
> Era lo que queria sacarme de Duda Jaime mas no lanzar algo si no saber
> el porque y la causa y la solucion a mi BD lenta.
> 
> 
>         
>         si es posible que char sea ligeramente mas lento que varchar
>         pero
>         debido a que al almacenar mas caracteres el indice se hace mas
>         grande
>         pero si almacenas valores pequeños no creo que notes la
>         diferencia...
>         ahora yo prefiero que PK sean valores enteros que es mas
>         rapido.
>         
>         
> Yo tambien prefiero Enteros por un tema rapido pero como comprenderas
> cuando uno llega a un cliente uno se encuentra con cada cosa del
> MODELADO de Base de Datos que no han tomado encuenta la Normalizacion
> N1,N2.N3 y el debido tipo de cada para cada cosas eso era mas que nada
> JAIME.
>  
>         
>         --
>         Jaime Casanova         www.2ndQuadrant.com
>         Professional PostgreSQL: Soporte 24x7 y capacitación
> 
> 

Responder a