2015.09.10 17:22
RDBMS는 데이터 무결성이 굉장히 큰 부분으로 확장, 축소에 있어 자유롭지 못합니다.
EC2의 경우는 업로드/다운로드 등 사용자로 인해 빈번하게 변경 되는 데이터들은 S3로 업로드 될 수 있도록 가이드하고 있습니다.
새로운 인스턴스가 배포 될 때 Bootstrapping을 이용해 S3의 있는 데이터를 가져온다던지 DNS에 추가 하거나, 소프트웨어를 설치해서
유연하고 확장성 있는 추가/제거가 자동화 될 수 있었습니다.
하지만, DB의 경우 데이터가 중복으로 들어 갈 우려가 있으며, 잘못 된 데이터는 삭제 되거나 시점이 맞지 않는 등의 다양한 상황이
발생 할 수 있습니다.
그래서 오토스케일링은 제공하지 않고 있으며, 확장을 위해서 Elastic cache 서비스 활용하거나, Read Replication 와 DB Sharding 과 같은 방식을 통해
확장 하는 방법과 Replication 지원 솔루션을 통해서 Multi-Master 구성이나 Cluster 구성을 통해 극복 할 수 있습니다.
가장 효율적인 구성은 서비스 특성이나 환경에 대한 부분들을 고려해야 합니다.
실제 DB 구성방안에 대한 부분은 향후 글 작성 하도록 하겠습니다.