Равномерное распределение с помощью dblink
Структура кластера
Примерную схему кластера можно изобразить так:

Где:
- Прокси сервер DB - там где хранятся наши хранимые процедуры и непосредственно с которым работает приложение. При желании можно его зеркалировать на несколько серверов а приложению работать через pgpool или pgbouncer;
- Индексные сервера DB - там где хранятся небольшие таблицы, их можно реплицировать;
- распределенные сервера DB - там где хранятся большие нарезанные таблицы, их, кстати, тоже можно реплицировать;
Отдельно хочу заметить, что на прокси сервере DB еще стоит поставить pgpool, через который соединяться с внешними базами, так как соединение в localhost дешевле, а с внешними базами pgpool может поддерживать постоянные соединения.