피드로 돌아가기
Dev.toAI/ML
원문 읽기
Shadow Deployment 기반 Zero-Downtime Vector Embedding 마이그레이션 전략
Migrating vector embeddings in production without downtime
AI 요약
Context
Embedding 모델 업데이트 시 기존 Vector 데이터와의 호환성 부재로 인한 전체 재색인 필요성 발생. 기존 Naive 마이그레이션 방식은 서비스 중단 시간을 초래하며 대규모 데이터셋 처리 시 가용성 저하 문제 보유.
Technical Solution
- Dual-column Schema 설계를 통한 기존 embedding 및 신규 embedding_v2 컬럼의 동시 운영 구조 채택
- AlloyDB의 Non-blocking Schema Change 특성을 활용한 무중단 컬럼 추가 수행
- Cloud Run Jobs 기반 Background Backfilling으로 기존 데이터의 신규 Vector 변환 처리
- WHERE embedding_v2 IS NULL 조건 쿼리를 통한 Idempotency 및 Resumability 확보
- Feature Flag를 활용한 점진적 트래픽 전환 및 A/B Test를 통한 신규 모델 정밀 검증
- 검증 완료 후 구버전 컬럼을 제거하는 점진적 Cleanup 프로세스 적용
실천 포인트
- 신규 Vector 컬럼 추가 시 DB Lock 발생 여부 및 인덱스 생성 영향도 사전 확인 - 백그라운드 작업의 멱등성 확보를 위해 처리 완료 상태를 구분하는 상태 값 또는 Null 체크 로직 구현 - 신규 모델 적용 전 Golden Dataset을 활용한 Retrieval Relevance 비교 분석 수행 - 전면 전환 전 5~10% 단위의 Canary 배포와 Feature Flag 기반의 즉각적인 Rollback 체계 구축