Em 05-07-2012 13:50, Cesar Moraes escreveu:
> Boa tarde,
>
> Estava estudando particionamento de tabela e me surgiram alguma duvidas.
>
> Para particionar tabelas no Postgres voce deve criar tabelas tabelas
> "filhas" que herdam a estrutura da tabela "pai".
>
> E quando vc faz o insert de um registro novo vc precisa ter um Rule ou
> Trigger para inserir na tabela correta, certo?

Certo.

> Significa que se eu tiver 20 partições preciso ter 20 triggers.

Não.
Você precisa de apenas um gatilho na tabela "pai" cuja lógica escolhe a 
tabela "filha" adequada.

> E quando eu faço um select eu preciso passar a tabela tb? vou precisar
> criar mais 20 Rules para fazer o select no local correto?

Não. O sistema de herança cuida disso pra você.
As operações SELECT, UPDATE e DELETE são feitas sobre a tabela "pai". Os 
resultados automaticamente virão das tabelas filhas. Você não precisa se 
preocupar com nada nestes casos.

Apenas a operação de INSERT precisa de um gatilho ou regra na tabela 
"pai" para escolher para qual "filha" o dado vai. Na minha experiência, 
gatilhos são muito mais rápidos que regras.

[]s

Flavio Henrique A. Gurgel
Consultor e Instrutor 4Linux
Tel: +55-11-2125-4747
www.4linux.com.br
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a