Operações como CREATE INDEX, ALTER TABLE, etc são conhecidas como operações de DDL.
Elas podem ser mais rápidas se combinados alguns fatores como:
-Setar o asynchronous_commit.
-Setar o maintenance_work_mem para um valor alto o suficiente.
-O valor de checkpoint_segments no arquivo postgresql.conf for alto o suficiente (é necessário reinciar o servidor).
O valor de checkpoint_segments por default é 3, muito baixo, se há escrita intensa no servidor é possível colocar em shared_buffers/16 Megabytes.
$ show maintenance_work_mem;
$ set local maintenance_work_mem to '1024MB';
$ set synchronous_commit to off;
$ create index concurrently on minhatabela using gin(campo_tsvector_que_demora_muito_por_exemplo);
Nenhum comentário:
Postar um comentário