백엔드 개발 · 심화
데이터베이스 복제(Replication)의 종류와 장단점에 대해 설명해주세요.
힌트 · 마스터-슬레이브, 마스터-마스터 구조를 생각해보세요.
비동기동기주-종다중-마스터데이터_일관성
모범답안
데이터베이스 복제는 데이터를 여러 데이터베이스 서버에 복사하여 데이터 가용성과 성능을 향상시키는 기술입니다. 크게 마스터-슬레이브(주-종) 방식과 마스터-마스터(다중-마스터) 방식으로 나눌 수 있습니다.
마스터-슬레이브 방식은 하나의 마스터 서버에서 쓰기 작업을 처리하고, 슬레이브 서버는 마스터 서버의 데이터를 복제하여 읽기 작업을 처리합니다. 장점으로는 읽기 성능 향상과 데이터 백업이 용이하다는 점이 있지만, 마스터 서버에 장애가 발생하면 쓰기 작업이 중단되는 단점이 있습니다. 복제 방식은 주로 비동기 방식으로 이루어지기 때문에 데이터 일관성이 완벽하게 보장되지는 않습니다.
마스터-마스터 방식은 여러 마스터 서버에서 쓰기 작업을 처리할 수 있도록 구성됩니다. 장점으로는 하나의 마스터 서버에 장애가 발생해도 다른 서버에서 쓰기 작업을 계속할 수 있어 가용성이 높다는 점이 있지만, 데이터 충돌 가능성이 있고, 복잡도가 높다는 단점이 있습니다. 데이터 일관성을 위해 동기 복제를 사용할 수 있지만, 성능 저하를 야기할 수 있습니다.
읽었다면, 이제 직접 답해볼 차례예요
패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.
함께 보는 데이터베이스 면접 질문
- 데이터베이스의 격리 수준(Isolation Level) 4가지와 각각에서 발생할 수 있는 문제에 대해 설명해주세요.
- 데이터베이스 락(Lock)의 종류와 데드락(Deadlock)이 발생하는 상황, 해결 방법에 대해 설명해주세요.
- 데이터베이스 파티셔닝(Partitioning)과 샤딩(Sharding)의 차이점과 사용 사례를 설명해주세요.
- CAP 정리(CAP Theorem)에 대해 설명하고, 실제 시스템에서의 트레이드오프를 예를 들어 설명해주세요.
- 데이터베이스 마이그레이션 전략과 무중단 스키마 변경 방법에 대해 설명해주세요.
- 분산 데이터베이스 환경에서 2단계 커밋(2PC) 프로토콜의 한계점은 무엇이며, 이를 극복하기 위한 대안적인 분산 합의 알고리즘(예: Paxos, Raft)이 어떻게 동작하고 어떤 장단점을 가지는지 설명해 주십시오.