
백엔드
MySQL Multi-Source Replication - MSA로 서비스를 쪼개면 나중에는 반대로 DB를 합쳐야한다...?
두줄요약
MSA로 분리한 DB를 다시 통합하기 위한 방법으로 MySQL Multi-Source Replication을 소개했습니다. 다만 테이블 충돌과 운영 복잡성 때문에 신중한 접근이 필요하다고 정리했습니다.
핵심 내용
- 마이크로서비스 아키텍처에서 서비스와 DB를 분리하면 독립성과 확장성은 좋아지지만, 데이터 일관성과 통합 조회가 어려워지는 문제
- CQRS로 조회·수정을 분리해도 여러 DB의 데이터를 통합해야 하는 상황이 생기며, 운영 복잡성과 모니터링 부담이 커지는 점
- MySQL Multi-Source Replication으로 여러 Master의 데이터를 하나의 Slave로 모아 조회용 통합 DB를 만드는 접근
장단점
- 여러 서비스의 데이터를 한 곳에 모아 JOIN 불가 문제를 완화하는 장점
- 테이블·DB명 충돌, 채널 관리, 복제 실패 등 운영 난이도와 사이드 이펙트
- 마스터 수가 늘수록 Slave 부하와 모니터링 부담 증가
