Backups Lógicos rápidos? pg_dump e pg_restore com Paralelismo no PostgreSQL
Quando o volume de dados cresce, backup e restauração com pg_dump/pg_restore podem rapidamente se tornar um gargalo crítico. É aqui que o paralelismo faz toda a diferença: em vez de processar tabelas e índices em sequência, o PostgreSQL permite que essas operações sejam divididas em múltiplos processos simultâneos. O resultado? Redução de horas para minutos em muitos cenários — contanto que você escolha o formato correto e ajuste o número de jobs ao seu ambiente.
O Essencial em 10 Segundos:
- Dump paralelo só funciona com formato directory (-Fd) no pg_dump usando -j N.
- O pg_restore paralelo só funciona com formatos custom (-Fc) e directory (-Fd) usando -j N.
- plain (.sql) e tar (-Ft) não suportam paralelismo.
E Porque paralelizar o pg_dump/pg_restore?
- Menos tempo de janela – Divide o trabalho entre múltiplos processos;
- Melhor uso de CPU/IO – Aproveita CPUs multi-core e storage rápido;
- Restaurações massivas mais previsíveis – Criação de índices e inserção dados processados em várias filas possibilitando maior ganho de tempo;
Como usar na prática
Dump paralelo (requer -Fd):
pg_dump -h HOST -U USER -d DBNAME -Fd -j 8 -f /backups/dbname_dir
Restore paralelo (com -Fc ou -Fd):
pg_restore -h HOST -U USER -d DBNEW -j 8 -Fd /backups/dbname_dir pg_restore -h HOST -U USER -d DBNEW -j 8 -Fc /backups/dbname.dump
Onde o Ganho é Maior
- Em tabelas de tamanho médio;
- Índices sendo criados simultâneamente;
- Quando utilizado em storage rápido (NVMe/SSD/RAID);
- Quando utilizado em rede veloz entre origem e destino.;
Onde o Ganho é Menor
- Apenas uma tabela gigante pois os jobs são divididos por objeto;
- Storage lento ou saturado;
- Servidor de origem já no limite;
Boas Práticas de Desempenho Para o pg_dump
- Use sempre -Fd -j;
- Aplique filtros com –table ou –schema;
- No PG15+, compressão moderada (–compress=3);
Boas Práticas de Desempenho Para o pg_restore
- Ajuste -j ao nº de vCPUs;
- Aumente maintenance_work_mem no destino temporariamente (aumenta a velocidade de criação de índices);
- Ajuste synchronous_commit e max_wal_size temporariamente;
Conclusão
Se o objetivo é reduzir tempo de recuperação use pg_dump -Fd -j N para capturar rapidamente. – Use pg_restore -j N a partir de -Fd ou -Fc. Com o formato certo e o -j bem calibrado, o paralelismo é o caminho mais simples para backups lógicos e restores muito mais rápidos no PostgreSQL.
Quer conhecer mais sobre o PostgreSQL?
Acesse plataforma de cursos da 4Linux e veja nosso treinamento de banco de dados focado em PostgreSQL. Ele aborda diversos temas focado nas melhores práticas desde instalação, backup, replicação e alta disponibilidade.
About author
Você pode gostar também
Soft Skills: As Habilidades Essenciais para o Sucesso na Carreira de TI
Soft Skills: As Habilidades Essenciais para o Sucesso na Carreira de TI Em um mercado de tecnologia em constante evolução, as Soft Skills, ou habilidades interpessoais, se tornaram ferramentas indispensáveis
Migração eficiente de instância MySQL para AWS RDS: Guia passo a passo
O desafio Recentemente recebemos um desafio de migrarmos uma instância MySQL com 1.7TB para a AWS RDS. A migração deveria obedecer os seguintes requisitos: Migrar integralmente todas as databases; A
Descubra o poder do CouchDB: o banco de dados NoSQL orientado a documentos
CouchDB é um banco de dados NoSQL orientado a documentos. Utiliza JSON como formato de dados e JavaScript como linguagem de consulta. Diferente da maioria dos outros bancos de dados,







