Replikation mit PostgreSQL

Während die Entwicklung von PostgreSQL nunmehr 20 Jahre zurückreicht, ist Replikation als Kernkomponente für das Datenbanksystem erst 2008 in den Fokus der Hauptentwickler gefallen. So bietet PostgreSQL das Verfahren der Physical Log Shipping Replication (PLSR), bei dem die durch das Datenbanksystem angelegte Write-Ahead-Log-Dateien (WAL) zu den angebundenen Servern versandt werden. Es handelt sich dabei um eine Master-Slave-Replikation, bei der nur der Master Schreibzugriffe auf den Datenbestand akzeptiert.

Neben der in PostgreSQL durch WAL-Shipping umgesetzten Master-Slave-Replikation bietet eine größere Menge externer Projekte und Erweiterungen verschiedene Replikationskonzepte, die mit PostgreSQL genutzt werden können. In der Arbeit werden einige dieser Lösungen betrachtet und auf ihre Eignung für die Umsetzung des Mutter-Kind-Konzepts untersucht. Da die durch PostgreSQL geschriebenen WAL-Dateien momentan nicht für eine externe Interpretation des lokalen Transaktionsprotokolls dienen können, begründen sich diese Lösungen auf Umsetzungen des sogenannten Change Data Capture (CDC) Design-Pattern. Dieses Pattern wird genutzt, um Änderungen zu identifizieren und auf eine Art und Weise festzuhalten, die es ermöglicht, sie durch eine Anwendung oder durch den Nutzer interpretieren zu lassen.