Re: [pgbr-geral] Tamanho em bytes de Tabela Vazia
http://www.postgresql.org/docs/current/static/datatype-character.html The storage requirement for a short string (up to 126 bytes) is 1 byte plus the actual string, which includes the space padding in the case of character. Longer strings have 4 bytes of overhead instead of 1. Long strings are compressed by the system automatically, so the physical requirement on disk might be less. -- Atenciosamente, Alexsander da Rosa Linux User #113925 Extremismo na defesa da liberdade não é defeito. Moderação na busca por justiça não é virtude. -- Barry Goldwater ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
[pgbr-geral] Tamanho em bytes de Tabela Vazia
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
Re: [pgbr-geral] Tamanho em bytes de Tabela Vazia
Olá, 2010/1/26 letgaude letga...@gmail.com 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 ? Para saber o tamanho de cada coluna você pode usar pg_column_size. O postgres usa páginas de 8Kb para armazenar as informações. O parâmetro que indica é BLCKSZ que é configurado no arquivo pg_config_manual.h e após alterado é necessário recompilar o PG. Para ver este valor você pode realizar a seguinte consulta: SELECT * FROM pg_settings WHERE name='block_size'; 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 []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Tamanho em bytes de Tabela Vazia
Olá, 2010/1/26 JotaComm jota.c...@gmail.com Olá, 2010/1/26 letgaude letga...@gmail.com 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 ? Para saber o tamanho de cada coluna você pode usar pg_column_size. O postgres usa páginas de 8Kb para armazenar as informações. O parâmetro que indica é BLCKSZ que é configurado no arquivo pg_config_manual.h e após alterado é necessário recompilar o PG. Um detalhe que esqueci no email anterior, se você estivar usando o PG 8.4 o parâmetro BLCKSZ está no arquivo pg_config.h. Para ver este valor você pode realizar a seguinte consulta: SELECT * FROM pg_settings WHERE name='block_size'; 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 []s -- JotaComm http://jotacomm.wordpress.com []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral