호텔 데이터 마이그레이션 최적화 - 인덱스 & UPSERT
들어가며: 호텔 표준 데이터 최신화의 시작"36GB의 호텔 데이터 마이그레이션 해주세요."호텔 표준 데이터 최신화 프로젝트에서 마주한 첫 번째 과제였습니다. 호텔 데이터는 단순한 flat한 구조가 아닌, 6개의 테이블로 분산되어 저장되어야 했습니다:제가 생각한 이 마이그레이션의 핵심 요구사항은 "데이터 정합성"이었습니다. 하나의 호텔 데이터가 이 6개 테이블에 모두 성공적으로 저장되거나, 아니면 전혀 저장되지 않아야 했습니다("All or Nothing").또한 기존 데이터가 있을 수 있어 INSERT가 아닌 UPSERT를 사용해야 했죠.메모리 한계를 고려해 batch size를 100으로 설정했습니다. 36GB 전체를 한 번에 처리하는 것은 현실적으로 불가능했고, 실패 시 복구도 용이해야 했기 때문입니..
2025.02.16