Глава 45. Логическое декодирование#
Глава 45. Логическое декодирование
Оглавление
- 45.1. Примеры логического декодирования
- 45.2. Концепции логического декодирования
- 45.3. Интерфейс протокола потоковой репликации
- 45.4. Интерфейс логического декодирования SQL
- 45.5. Системные каталоги, связанные с логическим декодированием
- 45.6. Выходные плагины логического декодирования
- 45.7. Писатели вывода логического декодирования
- 45.8. Поддержка синхронной репликации для логического декодирования
- 45.9. Потоковая передача больших транзакций для логического декодирования
- 45.10. Поддержка двухфазного коммита для логического декодирования
PostgreSQL предоставляет инфраструктуру для передачи изменений, выполненных с помощью SQL, внешним потребителям. Эта функциональность может использоваться для различных целей, включая репликацию и аудит.
Изменения отправляются в потоки, идентифицированные логическими слотами репликации.
Формат, в котором эти изменения передаются, определяется используемым плагином вывода. Пример плагина предоставляется в дистрибутиве PostgreSQL. Дополнительные плагины могут быть написаны для расширения выбора доступных форматов без изменения какого-либо основного кода. Каждый плагин вывода имеет доступ к каждой отдельной новой строке, созданной командой INSERT
, и новой версии строки, созданной командой UPDATE
. Доступность старых версий строк для команд UPDATE
и DELETE
зависит от настроенной идентификации реплики (см. REPLICA IDENTITY
).
Изменения можно потреблять с использованием протокола потоковой репликации (см. Раздел 51.4 и Раздел 45.3), или вызывая функции через SQL (см. Раздел 45.4). Также возможно написание дополнительных методов потребления вывода слота репликации без изменения основного кода (см. Раздел 45.7).