From: | Richard Klaumann <richard(dot)klaumann(at)gmail(dot)com> |
---|---|
To: | pgsql-pt-geral(at)lists(dot)postgresql(dot)org |
Subject: | pg_restore - Performance ao criar FKs |
Date: | 2023-05-15 21:03:38 |
Message-ID: | CAEChWkJL8eNHmrhuw-0_WO5Qro=k4MODVsiWjCo5Go-QR_nzXQ@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-pt-geral |
Boa tarde equipe,
estou migrando dados entre as versões 11 e 15 e estou enfrentando alguns
problemas quanto a criação de FKs ao restaurar algumas das FKs.
Realizo um backup de mais de 2800 tabelas partindo do PostgreSQL 11 rodando
em um servidor com CentOS 8.
Ao realizar o restore no PostgreSQL 15 Ubuntu 22 o restore dos dados é
feito com a mesma eficiência do restore na versão 11(apenas para
comparação).
No entanto, quando o banco 15 inicia a criação de algumas FKs o create é
extremamente lento.
Cenário:
SO Ubuntu 22.4
8 VCPUs
18GB Ram
PG 15.2
Ex:
"Tabela_1" com 264.736 de registros. PK Composta por 4 colunas, sendo 3
integer e uma numeric(25,0)
"Tabela_2" com 6.077.761 de registros.
Ao tentar criar a FK entre a "Tabela_2" e a "Tabela_1" com o banco 11 a FK
é criada em poucos segundos. Já ao tentar criar a FK no banco 15 o comando
fica em execução durante várias horas.(VMs idênticas)
Obs: Se eu encerrar a criação da FK executada pelo pg_restore, e executar
manualmente um vacuum analyze sobre a "Tabela_1" e criando a FK manualmente
a criação tambem é feita em poucos segundos.
Obs2: pg_restore executado com -j 4, quando não utilizo o "-j" os restores
das versões 11 e 15 possuem tempos idênticos.
No pg_restore da versão 11 as FKs são criada ao final do restore dos dados.
Ex:
Criação tabela_1;
Criação tabela_2;
Restore tabela_1;
Restore tabela_2;
Criação índices tabela_1;
Criação índices tabela_2;
Criação fk tabela_2;
Já no 15 a criação das fks é feita da seguinte maneira:
Ex:
Criação tabela_1;
Criação tabela_2;
Restore tabela_1;
Criação índices tabela_1;
Restore tabela_2;
Criação índices tabela_2;
Criação fk tabela_2;
Tenho a impressão que não há tempo hábil para a execução do vacuum analyze,
o qual agiliza a criação das FKs.
Alguém já passou por alguma situação parecida?
Desde já agradeço.
Att,
Richard
From | Date | Subject | |
---|---|---|---|
Next Message | Tiago José Adami | 2023-05-16 17:19:24 | Re: pg_restore - Performance ao criar FKs |
Previous Message | Flavio Henrique Araque Gurgel | 2023-04-19 07:07:44 | Re: Recuperação apenas com diretório PGDATA |