From: | Alvaro Herrera <alvherre(at)dcc(dot)uchile(dot)cl> |
---|---|
To: | Ricardo David Carrillo Sánchez <rcarrillosmx(at)yahoo(dot)com(dot)mx> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Tipo de dato |
Date: | 2005-03-11 16:26:50 |
Message-ID: | 20050311162650.GC9495@dcc.uchile.cl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
On Fri, Mar 11, 2005 at 10:12:03AM -0600, Ricardo David Carrillo Sánchez wrote:
Hola,
> Hola, es obvio que no me conoces,
... por lo que habría sido obviamente buena idea presentarte.
Aprovecho para incluir una copia de este mail a la lista por si a
alguien le interesa, puesto que eres obviamente suscriptor de ella.
> Yo tengo una BD hecha en PostgreSQL, ahora bien,
> muchos de mis campos estan declarados como tipo TEXT,
> en mi trabajo me pidieron el manual técnico del
> sistema que estoy desarrollando, sólo me falta una
> parte, que a mi parecer estaría más completa dicha
> documentación si lo incluyera, y esto es la proyección
> de la BD a determinado tiempo, segun entiendo se
> realizan varios calculos, ok, eso creo que lo tengo
> entendido, pero la disyuntiva viene cuando quiero
> sumar los campos text, ya que este tipo de dato según
> la documentación puede ser no tiene tamaño líminte,
> ahora bien como puedo determinar o establecer un
> tamaño en un tipo de dato TEXT para poder hacer una
> proyección del crecimiento de la BD en determinado
> tiempo.
Sí tiene límite, que es de 1 GB. Con respecto al tamaño en disco,
depende de cuantos datos almacenes: una cadena de 1000 caracteres
requerirá 1000 + 4 bytes (a menos que uses codificaciones multibyte como
UTF8, donde puede requerir entre 1000 + 4 y 4000 + 4, dado que cada
carácter puede ir codificado en entre 1 y 4 bytes). Los 4 bytes son
overhead propio del tipo de dato; el resto depende del contenido.
Así, si en una columna guardas nombres de personas, puedes asumir que
usará entre 10 y 60 caracteres por fila; si guardas páginas HTML
probablemente uses entre 2 y 20 kB. Naturalmente, es responsabilidad
tuya definir un tamaño esperado promedio para cada columna, y calcular
el tamaño total en base a eso.
Dicho eso, es importante saber que en algunos casos los campos tipo TEXT
se guardan comprimidos con un algoritmo Lempel-Ziv, que no comprime
mucho pero muy rápido en CPU. Esto puede tener o no un efecto mesurable
dependiendo de los datos. Puedes verificar la documentación relevante
(aplicable a todas las versiones desde 7.1) en
http://www.postgresql.org/docs/8.0/static/storage-toast.html
--
Alvaro Herrera (<alvherre[(at)]dcc(dot)uchile(dot)cl>)
"If you have nothing to say, maybe you need just the right tool to help you
not say it." (New York Times, about Microsoft PowerPoint)
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2005-03-11 16:28:18 | Re: Scrpt batch |
Previous Message | Jose Stragnari | 2005-03-11 16:19:47 | RE: ADO RecordSet |