Você está se aproximando disso do ângulo errado. Somente após otimizar seu SQL, você deve considerar lançar mais RAM / CPU / Disco (largura de banda de E / S) no problema - e resolver o problema como você o identificou.
Primeiro, peça ao Postgres para EXPLAIN
(ou EXPLAIN ANALYZE
) como ele está realizando a consulta.
Otimize os gatinhos cada vez mais carinhosos e, se você ainda tiver problemas de desempenho, investigue mais para determinar onde está o gargalo ( sonassi deu a você algumas boas sugestões sobre coisas que você deve olhar além de iotop
).
Se você estiver executando sua pilha da web e banco de dados no mesmo servidor, agora é um bom momento para dividi-los também ...