jorge sanfelice escreveu:
> Qual o fator de compressao dessa tecnica LZ? É eficiente tipo um zip, ei
> la....?
>
25%. Sim, vide [1] para comparação entre outros formatos.
> Eu nao consegui achar esse arquivo
> "src/backend/utils/adt/pg_lzcompress.c" em minha instalacao, sera que
> isso quer dizer que os arquivos gravados na tabelas nao serao comprimidos?
>
Você deve olhar no código-fonte [2].
> Como faço pra saber o tamanho que ficou esse arquivo no pg_toast... ?
>
O tamanho não tem como saber porque ele *não* separa cada arquivo armazenado
por arquivo de dados físico; o PostgreSQL armazena os dados de cada tabela em
arquivos de no máximo 1GB e isso é verdadeiro para tabelas toast também.
Para saber qual o tamanho do arquivo criado para tabela toast basta fazer:
euler=# select oid,datname from pg_database where datname ~ 'euler';
oid | datname
-------+---------
16384 | euler
(1 registro)
euler=# \d+ foo
Tabela "public.foo"
Coluna | Tipo | Modificadores | Storage | Descrição
--------+------+---------------+----------+-----------
a | text | | extended |
Têm OIDs: não
euler=# select oid,relname,reltoastrelid from pg_class where relname ~ 'foo';
oid | relname | reltoastrelid
-------+---------+---------------
24597 | foo | 24600
(1 registro)
euler=# \q
eu...@harman ~ $ ls -lah $PGDATA/base/16384/24*
-rw------- 1 euler users 8,0K Mai 3 16:42 data/base/16384/24597
-rw------- 1 euler users 232K Mai 3 16:42 data/base/16384/24600
-rw------- 1 euler users 24K Mai 3 16:42 data/base/16384/24600_fsm
-rw------- 1 euler users 16K Mai 3 16:42 data/base/16384/24602
O arquivo 24600 é o que contém os dados da coluna 'a' da tabela 'foo'.
[1]
http://en.wikipedia.org/wiki/Comparison_of_file_archivers#Comparison_of_efficiency
[2]
http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/pg_lzcompress.c?rev=1.33
[3]
--
Euler Taveira de Oliveira
http://www.timbira.com/
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral