2011/5/20 Lazaro Rubén García Martinez <[email protected]>:
> Hola a todos en la lista, en la documentación de PostgreSQl aparece que un 
> char ocupa un 1 byte de espacio.

ah! adonde dice eso?

http://www.postgresql.org/docs/9.0/static/datatype-character.html
(fijate que aclara "not bytes")
"""
SQL defines two primary character types: character varying(n) and
character(n), where n is a positive integer. Both of these types can
store strings up to n characters (not bytes) in length.
"""

de hecho hay una funcion char_length() que te dice el numerode
caracteres y una funcion octet_length() que te dice el numero de bytes

lo que pasa es que ademas hay un tipo de dato llamado "char" (comillas
dobles incluidas) que almacena 1 byte pero ese almacena un solo
caracter y nada mas y no deberia ser usado... solo existe para uso
interno del motor


> El tamaño de un varchar o de un campo de tipo text, estaría determinado por 
> el número de caracteres que conformen la cadena, o
> existe alguna formula para calcular el tamaño de almacenamiento para estos 
> tipos de datos?.

si estas usando utf8 ese es un encoding multibyte asi que puedes estar
usando entre 1 a 4 bytes por caracter (asi que no es tan facil como
decir 1 caracter = 1 byte) y a eso debes sumarle la cabecera que es de
4 bytes me parece

> Me sería de muchísima ayuda me ayudasen con esto, pues necesito calcular la 
> tasa de crecimiento de mi base de datos.
>
> Adicionalmente, al total de espacio que ocupen los campos almacenados en una 
> tupla, existe algún valor adicional que deba agregarse a este cálculo.
>

alrededor de 24 bytes por tupla

-- 
Jaime Casanova         www.2ndQuadrant.com
Professional PostgreSQL: Soporte y capacitación de PostgreSQL
-
Enviado a la lista de correo pgsql-es-ayuda ([email protected])
Para cambiar tu suscripción:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a