5장 복제
- 복제 :
- 네트워크로 연결된 여러 장비에 동일한 데이터 복사본을 유지한다.
- 데이터 복제의 장점
- 지리적으로 컴퓨팅 노드와 지연시간 단축
- 가용성 증가
- 읽기 처리량 늘림
- 단점 : 데이터 변경처리
- 노드간 변경 을 복제하기 위한 세가지 인기있는 알고리즘인
- 단일리더
- 다중 리더
- 리더 없는 복제
- 트레이드오프
- 동기 복제 비동기 복제
- 잘못된 복제본처리
리더와 팔로어
- 복제서버 : 데이터 베이스의 복사본을 저장한다.
- 리더기반 복제
- 복제 서버 중 하나를 리더로 저장함.
- 쓰기를 리더가 하고, 팔로워에 복제함
- 읽기 전용은 팔로워만
동기식대 비동기식 복제
- 동기식 복제
- 장점
- 팔로워가 리더와 일관성 있게 최신 복사본 보장
- 단점
- 반동기식 복제
- 비동기식 복제
- 장점
- 모든 팔로워가 죽어도 리더가 씀
- 많은 팔로워 혹은 지리적으로 분산되면 비동기 복제 사용
- 단점
새로운 팔로워 설정
- 때때로 복제 서버 수를 늘리거나 장애 노드의 대체를 위해 새로운 팔로워를 설정해야한다.
- 가능하면 전체 db 안잠그고 리더의 스냅샷 가져온다.
- 스냅샷을 새 팔로워 노드에 복사한다.
- 팔로워는 리더에 연결해 스냅샷 이후 발생한 모든 데이터 변경을 요청한다.
- 미처리분 처리 = 따라 잡았다.
노드 중단 처리
팔로워 장애 : 따라잡기 복구
- 로그에서 결함이 발생하기 전 처리한 마지막 트랜잭션으을 알아내고, 연결 끊긴 동안 발생한 모든 데이터 요청
리더 장애 : 장애 복구