📌 면접 답변
DB Replication
- DB의 고가용성과 데이터 안정성을 보장하기 위해 활용되는 기술
- 데이터의 지속적인 가용성과 신뢰성을 위해 원본(Source)서버와 복제(Replica)서버 간의 데이터 동기화
Source와 Replica 서버의 데이터 일관성 유지 과정은 주로 Binary log를 기반으로 이뤄진다.
Binary log
- 서버에서 실행된 모든 데이터 변경 쿼리 기록하는 역할
- MySQL에서 변경된 데이터를 기록하는 로그 파일
Binary log 저장 방식으로는 Row, Statemet, Mixed의 방식이 있다.
Row
- 각 행별로 변경된 내용 정확히 기록 (데이터 일관성 높게 유지)
- 모든 행의 변경 사항을 저장하여 Binary log 파일의 크기 급격히 증가
Statement
- 데이터 변경을 일으킨 SQL 문 자체를 Binary log에 기록
- 상대적으로 저장 공간 절약
- 비확정적 SQL 쿼리가 실행될 경우, 동일한 쿼리가 Source와 Repliaca 서버에 다른 결과 초래
- 예를 들어, SELECT NOW() 같은 함수는 실행 시점에 따라 다른 결과 반환
Mixed
- Row 기반과 Statement 기반을 혼합하여 로그 기록
- 비확정적 SQL이 아닌경우 Statement 방식 사용
- 비확적적 SQL인 경우 Row 방식 사용하여 데이터 일관성 유지
📌 내 답변
DB Replication은 DB의 고가용성을 높히기 위해 복제본을 만드는 것이다.
복제본을 만들어 재난 상황 또는 문제가 생겼을 때 복구를 할 수 있도록 해준다.
백엔드 개발자에게 고가용성과 데이터 안정성은 엄청 엄청 중요함 !!
매일메일 - 기술 면접 질문 구독 서비스
기술 면접 질문을 매일매일 메일로 보내드릴게요!
www.maeil-mail.kr
매일 메일의 면접 질문 정리
'😀 Jerry > 면접 질문' 카테고리의 다른 글
[1분 면접] record를 DTO로 사용하는 이유 (0) | 2025.03.07 |
---|---|
[1분 면접] HTTPS란 무엇인가 ? (0) | 2025.03.06 |
[1분 면접] WAS와 웹 서버의 차이점 (0) | 2025.03.05 |
[1분 면접] SSR과 CSR 차이점 (0) | 2025.03.04 |
[1분 면접] (Connection, Socket, Read) Timeout 차이점 (0) | 2025.02.28 |