설계 원칙 + 경험 연결
클라우드 환경에서 데이터 확장성을 확보하려면 수평 확장이 가능한 구조를 처음부터 설계해야 합니다. 파티셔닝 전략과 샤딩 키 설계가 잘못되면 나중에 수정 비용이 크게 발생합니다. 신뢰성을 위해서는 데이터 복제와 WAL(Write-Ahead Log) 기반 내구성 보장이 기본이고, 장애 시 자동 복구 경로도 설계 단계에서 포함해야 합니다. 수업 프로젝트에서 AWS S3 + Athena 구조를 설계하면서, 데이터 레이크의 파일 포맷 선택이 쿼리 성능과 비용 모두에 영향을 준다는 걸 배웠습니다. 확장성과 신뢰성은 서로 트레이드오프가 생기는 경우가 있고, 서비스 특성에 맞는 균형점을 찾는 것이 설계의 핵심이라고 생각합니다.
초기 설계 단계에서 확장성을 고려하지 않으면 이후에 구조를 뜯어야 하는 비용이 커지기 때문에, 아키텍처 결정의 타이밍이 중요하다고 생각합니다.