Thiago Freitas escreveu:
> Tenho uma tabela muito grande e queria dividi-la em pedaços menores, por
> exemplo, MÊS/ANO.
O que é muito grande?

> Eu teria que utilizar o conceito de herança para criar todas as tabelas
> filhas herdando as características da tabela principal.
> Depois, eu teria que criar triggers para cada insert executado e criar
> views para visualizar os dados particionados por MÊS/ANO.
Não. O gatilho para inserção é só um (na tabela pai); o que precisa ser mudado
é a função disparada no gatilho pois a mesma precisa saber que existe uma nova
partição.

Visões? Para que?

> No entanto, terei o problema de manutenção dessas N
> tabelas/views/triggers/indices criadas para o particionamento.
> Esta é realmente a melhor forma de se particionar?
Não é a forma definitiva mas é a que temos disponível hoje. Houve um esforço
para termos algo definitivo mas tal funcionalidade (automatizar o
gerenciamento de partições) não virá na próxima versão. :( Inclusive, é de meu
interesse participar do processo de desenvolvimento desta funcionalidade (mas
isso só acontecerá daqui a alguns meses quando provavelmente abriremos um
outro _branch_ no repositório para o 9.1).

> Ainda, fazendo o particionamento o tamanho do banco aumentará
> consideravelmente ou não?
> 
Não. Os dados estarão em partições (aka tabelas filho) ao invés de uma tabela
(aka tabela pai); a mesma lógica vale para os índices dessas partições.


-- 
  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

Responder a