Estrou criando um sistema com mais de 100 tabelas sendo que algumas terão
mais de 200000 de registros relacionados à um unico registro em outra
tabela, em +- um mês, e estou extremamente preocupado com a performance.

Observei que alguns SGBDS, como o Firebird, utiliza índices específicos nos
relacionamentos, e no PGSQL não encontrei este tipo de recurso, imaginei a
utilização de índices BTREE resolveria a ausência de tal recurso:

veja:

FIREBIRD:

Alter table ... add foreigny key tb(col) ... using nome_do_indice;
(como se este índice fosse espefíco para o relacionamento)


Tarcísio Sassara wrote:
> 
> Moises,
> Criar um índice não garante que este vai ser utilizado.
> O PostgreSQL usa as estatiscas para saber qual a melhor forma de
> buscar os registros no banco.
> 
> Por isso a dica de fazer um analize e regerar as estatísticas.
> Para garantir que o PostgreSQL fará a melhor escolha.
> 
> 
> 2010/1/2 moisespsena <[email protected]>:
>> Bem, cliquei com o botão direito em cima da tabela e apareceu uma janela
>> com
>> as opçoes: VACUM, ANALYSE, REINDEX. Marquei a opção VACUM e logo abaixo
>> novas opções apareceram: FULL, FREEZE e ANALYSE, marquei todas elas e
>> mandei
>> executar, em seguida, tive a seguinte saída na aba 'mensagens' localizada
>> na
>> parte inferior da janela:
>>
>> INFO:  vacuuming "public.tb2"INFO:  "tb2": found 0 removable, 700001
>> nonremovable row versions in 5834 pages
>> DETAIL:  0 dead row versions cannot be removed yet.
>> Nonremovable row versions range from 56 to 62 bytes long.
>> There were 0 unused item pointers.
>> Total free space (including removable row versions) is 52116 bytes.
>> 0 pages are or will become empty, including 0 at the end of the table.
>> 1 pages containing 5448 free bytes are potential move destinations.
>> CPU 0.12s/0.31u sec elapsed 1.08 sec.INFO:  index "tb2_pkey" now contains
>> 700001 row versions in 1922 pages
>> DETAIL:  0 index pages have been deleted, 0 are currently reusable.
>> CPU 0.03s/0.00u sec elapsed 0.03 sec.INFO:  index "tb2_idx" now contains
>> 700001 row versions in 1922 pages
>> DETAIL:  0 index pages have been deleted, 0 are currently reusable.
>> CPU 0.01s/0.01u sec elapsed 0.03 sec.INFO:  "tb2": moved 0 row versions,
>> truncated 5834 to 5834 pages
>> DETAIL:  CPU 0.00s/0.00u sec elapsed 0.02 sec.
>> INFO:  analyzing "public.tb2"INFO:  "tb2": scanned 3000 of 5834 pages,
>> containing 360001 live rows and 0 dead rows; 3000 rows in sample, 700082
>> estimated total rowsTempo total de execução da consulta: 1289 ms.
>>
>> ________________________________
>> View this message in context: Re: Res: Índices e otimização
>> Sent from the PostgreSQL - Brasil mailing list archive at Nabble.com.
>>
>> _______________________________________________
>> pgbr-geral mailing list
>> [email protected]
>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>>
>>
> 
> 
> 
> -- 
> Tarcisio F. Sassara
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
> 
> 

-- 
View this message in context: 
http://old.nabble.com/%C3%8Dndices-e-otimiza%C3%A7%C3%A3o-tp26994726p26997360.html
Sent from the PostgreSQL - Brasil mailing list archive at Nabble.com.

_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a