Boa tarde pessoal, Estou (tentando) realizar testes com replicação, e surgiram algumas dúvidas. Segue uma descrição do cenário.
Master: SO: Ubuntu Desktop 11.10 x86 PostgreSQL: 9.1.1, compilado direto do fonte Slave SO: Ubuntu Server 11.10 x86_64 PostgreSQL: 9.1.1, compilado direto do fonte Minha (tentativa de) replicação está sendo feita via WAN, usando apenas log shipping no momento (não estou usando streaming replication). Já é possível ver pelo cenário que eu cometi um erro ao escolher as arquiteturas. Enquanto ainda estou trabalhando nisso, tenho algumas dúvidas quanto ao envio dos logs, e também sobre o streaming, caso venho a usar. Minha base em produção tem uma carga de escrita razoavel, escrevendo cerca de 140 arquivos de log por hora. Fazendo a matemática básica, eu teria de ter um link de pelo menos 6,5Mbps para manter a o slave atual em relação ao master. Meu objetivo é reduzir esse número. Dúvida 1: Envio do log A documentação do Postgres fornece um exemplo (http://goo.gl/gyjnA) usando os comandos 'test' e 'cp' para o envio dos logs. Como estou fazendo através da WAN, estou usando 'scp' com troca de chaves, ao invés de 'cp'. Existe algum problema em usar um comando compactando o arquivo, para diminuir o volume de dados no link? Algo como: tar cjf - %p | ssh remotehost " ( cd /destination/path ; tar xjf - ) " Dúvida 2: Envio do banco para sincronização inicial Como não estou configurando streaming replication no momento, não estou usando o pg_basebackup para enviar o banco. Estou usando o comando SELECT pg_start_backup('sync_inicial'); Realizo uma cópia com 'cp -a' e uso o comando SELECT pg_stop_backup(); para voltar a operação normal. Como nesse momento, os logs já estão sendo enviados, não vou perder nada de dados, mesmo que demore um pouco para enviar o banco após enviar o comando 'stop'. Existe problema em enviar os dados de maneira compactada, como na dúvida anterior? Dúvida 3: Envio via streaming O streaming, tanto para o envio do basebackup quanto para envio dos logs, usa algum tipo de compactação? Se sim, isso é configurável de alguma maneira? Eu não tenho a necessidade de manter meu slave 100% sincronizado em tempo real em relação ao master, então a janela de tempo que o log shipping tem em relação ao streaming replication não seria um ponto tão negativo, caso não seja possível compactar o tráfego do streaming. Em testes, os arquivos de logs compactados usando bz2 consomem cerca de 20% do tamanho total descompactado. Abs!
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
