2014-06-04 11:41 GMT-03:00 Bruno Silva <bemanuel...@gmail.com>:

> Alguém sabe indicar como editar um view materializada sem precisar
> recriá-la?
>

Não. E se isso é um pré-requisito seu, talvez uma MV "oficial" não seja a
melhor escolha. Veja que muitas vezes para se obter melhor performance e
dados mais atualizados, temos que simular uma MV usando tabelas normais.


> Tenho algumas views que tem suas dependências
>

humm... Quais seriam essas dependências que impossibilitam/dificultam um
REFRESH MV?


> e está sendo complicado
> ter de recriar toda a cadeia por conta de uma alteração de tabela.
>

Realmente, parece que estás usando MVs para uma tarefa mais complicada do
que elas conseguem prover hoje. Uma MV do PostgreSQL nas versões atuais
devem ser usadas quando (1) você pode suportar uma certa desatualização nos
dados ou (2) a modificação que gera a MV é realizada em tão pouquíssimas
situações que atualizá-la a cada alteração não fica caro.

FWIW, na versão 9.4 teremos o REFRESH ... CONCURRENTLY, o que eliminará um
pouco dos problemas das MVs e fará com que elas sejam mais úteis em muitos
casos. Mas ainda sim fica inviável, na maioria dos casos, mantê-la 100%
atualizada, para isso (hoje) só uma tabela convencional e triggers para
mantê-la atualizada.

Existem projetos e pessoas trabalhando para chegar no 100% atualizável de
forma performática, mas não há ainda garantias de que isso ficará pronto
para a 9.5.

Atenciosamente,
-- 
Matheus de Oliveira
Analista de Banco de Dados
Dextra Sistemas - MPS.Br nível F!
www.dextra.com.br/postgres
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a