Replication
2024-03-13
SPOF와 같은 문제를 막기위해 사용하는 **데이터 복제 전략(DB 리플리케이션)**의 중요한 키워드이다.
MASTER DB
일반적으로 데이터 수정 작업만 지원
SLAVE DB
데이터 복사본을 가져오고 읽기 작업만 지원
대부분의 애플리케이션에는 훨씬 더 높은 쓰기 대비 읽기 비율이 필요하여 시스템의 슬레이브 데이터베이스 수는 일반적으로 마스터 데이터베이스 수보다 크다.
Goals
- 성능
- 모든 데이터 수정이 마스터 노드에서 발생하고 읽기 작업은 슬레이브로 분산되어 더 많은 쿼리를 병렬로 처리할 수 있다.
- 신뢰성
- 데이터 복제로 마스터 db나 다른 db에 데이터 손실이 발생해도 여러 db에 보존되어 걱정할 필요없다.
- 가용성
- 사용 가능한 슬레이브 데이터베이스가 1개만 있고 이 데이터베이스도 오프라인이 되는 경우 일시적으로 읽기 작업을 마스터 데이터베이스 자체로 이동할 수 있다. 다른 슬레이브 데이터베이스 노드가 있는 경우 다른 정상 슬레이브 데이터베이스로 작업을 리디렉션할 수 있다. 마스터 데이터베이스가 오프라인 상태가 되면 슬레이브 데이터베이스가 새 마스터로 승격된다.