Разница между физической и логической репликацией в PostgreSQL заключается в следующем:
Физическая репликация создаёт точную копию всего кластера на резервном сервере. 24 Мастер передаёт на реплику журнальные записи (в виде файлов или потока записей), а реплика применяет эти записи к своим файлам данных. 2 Поскольку журнал общий для всего кластера, то и реплицировать можно только кластер целиком. 2
Логическая репликация работает по принципу подписки: один сервер подписывается на изменения в базе данных другого сервера. 1 При логической репликации передаются не двоичные данные, а снимки объектов, на которые настроена подписка. 1 Такая репликация позволяет при необходимости проигрывать не все изменения, а только касающиеся отдельных таблиц. 2
Таким образом, физическая репликация применяется в основном в целях отказоустойчивости, для возможности быстрого восстановления работы после краха основного сервера путём переключения на реплику. 1 Логическая репликация имеет более широкую сферу применения: её можно использовать для объединения нескольких баз в одну для целей дальнейшего анализа, для разделения одной базы на несколько с целью предоставления доступа только к конкретным данным, для репликации данных между разными архитектурами (Windows и Linux) и так далее. 1