Em 20 de setembro de 2012 22:46, Euler Taveira <eu...@timbira.com> escreveu:

> On 20-09-2012 20:31, Flavio Henrique Araque Gurgel wrote:
> >
> > Em 20-09-2012 20:10, Fábio Telles Rodriguez escreveu:
> >> Alguém sabe se é possível e como copiar tabelas fisicamente entre
> >> diferentes clusters?
> >>
> Se fosse fácil assim não teria muita graça. ;)
>

Nunca pensei que seria fácil. Só queria saber se era possível.


>
> >> Tenho várias tabelas particionadas e preciso mover periodicamente
> >> partições de uma base de produção para uma base histórica. Sei que posso
> >> mover dados com um simples dump, mas isso custa muito, muuuuito caro.
> >> Queria saber se é possível, mexer com segurança debaixo do capô dos
> >> datafiles e fazer este tipo de movimentação.
> >
> Por que a cópia de segurança lógica é tão cara? Perda de performance? Você
> não
> dispõe de um standby para fazer essa cópia de segurança a partir dele? Já
> pensou em utilizar alguma das ferramentas de replicação lógica (Slony,
> Londiste ou Bucardo) ?
>
>
A minha estimativa é de que eu precisaria copiar cerca de 50GB todo FDS.
Exportar é fácil, mas importar... custa bem caro.


>  > Certamente que não. Motivos:
> >
> > 1) As tabelas são nomeadas com o relfilenode que é guardado em catálogo
> > de sistema. Não sei como você criaria esses dados em catálogo sem correr
> > riscos.
> >
> > 2) Algumas informações do mapa de visibilidade sobre as transações já
> > concluídas são guardadas em mapa de bits no diretório pg_clog que é para
> > todo o cluster
> >
> Acho que você misturou as coisas... Mapa de visibilidade é um artifício
> para
> acelerar o VACUUM; se ele se "perder", pode ser reconstruído
> _automagicamente_
> (pelo VACUUM).
>
> > 3) As informações de transações correntes são guardadas em mapa de bits
> > nos diretórios pg_multixact, pg_subtrans e pg_twophase, que também são
> > para todo o cluster.
> >
>
> 4) Se a arquitetura for diferente, você não conseguirá manipular os
> datafiles.
>

Quando você fala de arquitetura se refere a:

a) SO, kernel, sistema de arquivos e versão do Postgres idênticas ou
b) Estrutura de tabelas idênticas?


> > Não sei se tem algo no todo relativo a "tablespaces portáteis" para o
> > PostgreSQL, mas numa conversa com o Bruce Momjian uma vez ele me
> > explicou que muitas informações das tabelas são "cluster wide" e,
> > portanto, um retrabalho muito grande de código paralizaria outros
> > desenvolvimentos mais importantes.
> >
> Não existe o conceito de tablespace portável ou mesmo tabela portável
> ainda.
> Concordo que seria um esforço enorme para um caso de uso pequeno senão
> ínfimo.
> A replicação lógica cobre essa lacuna. FYI está em desenvolvimento a
> replicação lógica no core; possivelmente na 9.3 teremos esse recurso sem
> precisar utilizar alguma ferramenta externa.
>

Eu acho que replicação via gatilho custa caro. Eu não quero nenhum overhead
no momento de pico do sistema. Veja a minha situação não é mandar os dados
da produção direto para a base histórica. O que eu quero e mandar as
partições mais antigas para a base histórica para depois poder apagar da
produção.

Minha base hoje hoje tem quase 10 meses de operação e passou dos 2TB. Para
se ter uma ideia do problema, imagine fazer backup full de 2TB todos os
dias? Não tem fita que aguente. Não tenho como manter tudo por aí
indefinidamente. Não tem disco de alta perfórmance para tudo isso. Por
contrato eu tenho que manter pelo menos 2 anos dos dados para consulta e
auditoria. Minha intenção é manter apenas os últimos 30 dias na base de
produção e todo FDS mover as partições da 5 semana para a base histórica.

Se não tiver jeito, vai ter de ser via Dump/Restore. Não vai barato. Ainda
mais que os discos da base histórica não serão tão bons. Sei que estou
pensando em algo realmente arriscado. Mas sei que em situações de
desastres, tem umas mandracarias bem bacanas que dá para fazer.

[]s
-- 
Atenciosamente,
Fábio Telles Rodriguez
blog: http:// <http://www.midstorm.org/~telles/>http://tellesr.wordpress.com
e-mail / gtalk / MSN: fabio.tel...@gmail.com
Skype: fabio_telles
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a