Sice RAID5 je asi to nejhorší, co můžete udělat, ale vzhledem k dostatku RAM a minimu transakci to musí zvládat v pohodě - konfigurace pg - např. zde http://postgres.cz/wiki/Desatero#P.C5.99id.C4.9Blte_PostgreSQL_dostatek_pam.C4.9Bti
Optimalizace dotazů je občas alchymie - a to včetně dočasných tabulek - na jednu stranu jsou docela drahé - na druhou stranu pokud vám ustřelují statistiky, tak dočasná tabulka může "přerušit chybu" v aplikaci statistik a šíření chyby a tudíž planer může vygenerovat skutečně optimální plán - případně i nad dočasnou tabulkou je možné vytvořit indexy a zase o něco zrychlit provedení dotazu.