Ola,

Preciso identificar quanto em bytes cada campo de uma tabela consome de
espaço em disco, para poder fazer uma previsão de calculo para armazenamento
de dados no servidor . A tabela é :

CREATE TABLE public.teste (
  sequencial BIGSERIAL, 
  chave          VARCHAR(44) NOT NULL, 
  valor1         NUMERIC(15,2) DEFAULT 0 NOT NULL, 
  valor2         NUMERIC(16,4) DEFAULT 0 NOT NULL, 
  valor3         NUMERIC(16,4) DEFAULT 0 NOT NULL, 
  indicador  CHAR(1), 
  tipo           INTEGER
) WITHOUT OIDS;

No meu entendimento, esta tabela teria 72 bytes (44 para o varchar, 9 para
cada numerico e 1 para o char) o que me daria uma conta simples: 72 bytes *
300.000 (qtde de registros q eu projetaria nesta tabela) = 21.600.000 bytes.

As funções do postgres (pg_relation_size()) só me retornam dados diferentes
de 0 bytes, caso eu tenho inserido algum registro na tabela. E fazendo isto
ele me retorna 8192 bytes para 1 registro. Alguem pode me explicar que
calculo o Postgres faz para me retornar este valor ? 

Porque eu não posso simplesmente me basear na conta (tamanho da tabela *
qtde de registros) ? 

Obrigada



-- 
View this message in context: 
http://old.nabble.com/Tamanho-em-bytes-de-Tabela-Vazia-tp27327190p27327190.html
Sent from the PostgreSQL - Brasil mailing list archive at Nabble.com.

_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a