단순히 Lift and Shift하지 마세요 — 클라우드 데이터베이스 설계, 최적화 및 마이그레이션에 대한 실제 가이드
데이터베이스를 클라우드로 옮기는 것은 판도라의 상자를 여는 것처럼 느껴질 수 있습니다. 하지만 꼭 악몽일 필요는 없습니다. 제가 가장 똑똑한 설계 패턴, 마이그레이션 지름길, 그리고 최적화 팁을 정리해 드렸습니다. 이 팁들은 여러분의 수많은 디버깅 시간과 엄청난 비용을 절약해 줄 것입니다.
제 친구가 한때 이렇게 말했어요. "그냥 온프레미스 MySQL을 가져다가 EC2에 올리면 끝이야." 두 달 후, 그는 지연 시간 급증과 CFO를 울게 만든 청구서 때문에 머리를 쥐어뜯고 있었습니다. 진실은 클라우드 데이터베이스는 다른 사고방식을 요구한다는 것입니다. 오래된 습관을 그대로 클라우드로 옮겨서 모든 것이 순조롭게 돌아가길 기대할 수 없습니다. 저도 그 길을 몇 번 가보았고, 실제로 효과가 있는 다양한 접근법을 많이 배웠습니다. 첫 마이그레이션을 계획 중이든, 기존 설정에서 더 많은 속도를 짜내려고 하든 상관없이 말이죠.
먼저 설계에 대해 이야기해 보겠습니다. 새로운 시스템을 구상할 때 저는 워크로드에 맞는 검증된 클라우드 데이터베이스 설계 패턴에 크게 의존합니다. 트랜잭션 애플리케이션의 경우 Aurora Serverless와 같은 서버리스 옵션을 선택할 수 있습니다. 이는 자체적으로 확장되며 인스턴스 크기에 대해 신경 쓸 필요가 없습니다. 읽기가 쓰기보다 100대 1로 많은 전자상거래 카탈로그의 경우 읽기 복제본과 Redis 또는 ElastiCache를 사용한 캐싱 계층을 추가합니다. 바로 여기서 확장성을 위한 클라우드 데이터베이스 설계가 빛을 발합니다. 부하에 질식하는 하나의 모놀리식 데이터베이스를 구축하는 대신 분해(decomposition)를











