PostgreSQL Replication
PostgreSQL Replication은 크게 Physical Replication과 Logical Replication으로 구분
① WAL 파일 자체를 전달하는 (File-based) Log Shipping
② WAL 파일 저장 여부와 상관없이 WAL Record를 전달하는 Streaming Replication
- Logical Replication은 Physical Replication의 한계를 해결하기 위한 목적으로 도입.
- Physical Replication과 마찬가지로 WAL을 기반으로 작동하지만, DML 발생 시 walsender 프로세스가 WAL Record를 Logical Decoding 처리한 후 전송한다는 차이.
Physical Replication – (File-based) Log Shipping
완성된 WAL 파일을 Standby Server로 전달, Recovery 작업을 통해 Replication
- Main Server의 WAL 파일이 정해진 크기를 채운 후 새로운 파일이 생성되어야 기존 WAL 파일 전달 가능
- 현재 사용중인 WAL 파일이 채워지는 동안 Main Server와 Standby Server 간의 Data Lag이 발생할 수 있음
- 장애발생 시 최대 WAL 파일 크기만큼 소실될 수 있음을 의미
Physical Replication – Streaming (OCI PostgreSQL Replication 방식)
Main Server의 WAL 파일이 채워질 때까지 기다리지 않고 WAL Record를 실시간으로 Streaming
- Main Server에는 WAL Sender, Standby Server에는 WAL Receiver라는 전담 프로세스가 필요
Logical Replication
하나의 게시자(Publisher)와 하나 이상의 구독자(Subscriber)로 구성
- File System Replication이나 WAL Log Shipping 방식의 한계를 극복하기 위한 목적으로 도입
- 구독과 게시 간의 Replication은 복제 ID(Replication Identify)를 기반으로 수행되며, 복제 ID는 기본키(Primary Key) 또는 고유키(Unique Key)로 가능. 기본키와 고유키가 존재하지 않는다면, REPLICA IDENTITY FULL 옵션으로 Table 속성을 변경하여 사용 가능 하지만, 이 방법은 Table 변경사항이 있을 때마다 전체 Table을 복제하므로 자주 업데이트되는 대용량 Table에 대해서는 비효율적이며 대량의 자원 소모 예상
작성자: 조성균
개인 시간을 투자하여 작성된 글로서, 글의 내용에 오류가 있을 수 있으며, 글 속의 의견은 개인적인 의견입니다.
'3. 데이터관리' 카테고리의 다른 글
Oracle 데이터베이스 보안 솔루션 #3 - Data Safe (3) - Data Masking (0) | 2024.06.02 |
---|---|
OCI PostgreSQL Backup & Recover (feat. 접속 방법) (0) | 2024.05.22 |
OCI Data Integration 활용 - Data Pipeline Task 생성 및 Schedule 지정 (0) | 2024.05.22 |
OCI Autonomous Database - Automatic Indexing (0) | 2024.05.16 |
Oracle 데이터베이스 보안 솔루션 #3 - Data Safe (2) - Activity Auditing (활동 감사) (0) | 2024.05.07 |
댓글