마이그레이션 (Migration)
- 데이터를 다른 시스템으로 이동하거나 구조를 변경하는 과정을 의미
- 새로운 환경에 맞게 기존 데이터를 변환하거나, 시스템의 업데이트에 따라 데이터베이스 구조를 변경하는 작업을 포함
마이그레이션의 주요 유형
- 데이터 마이그레이션(Data Migration) : 데이터를 다른 종류의 저장소로 이동.
예: 로컬 파일에서 클라우드 데이터베이스로 이동.
- 데이터베이스 마이그레이션(Database Migration) : 데이터베이스의 구조를 변경하거나, 다른 시스템으로 데이터와 스키마를 이동.
예: MySQL에서 PostgreSQL로 전환.
- 애플리케이션 마이그레이션(Application Migration) : 애플리케이션과 관련된 데이터 및 코드를 새로운 플랫폼으로 이동
마이그레이션의 주요 단계
1. 계획 단계
현재 시스템 분석 및 마이그레이션 요구사항 정의.
이동 대상 플랫폼 및 데이터베이스 선택.
리스크 평가 및 대처 방안 마련.
2. 준비 단계
데이터 백업 및 정리.
스키마 설계 및 변환 규칙 설정.
3. 마이그레이션 실행
데이터 변환 및 이동.
데이터베이스 스키마를 새로운 시스템으로 이전.
4. 테스트 단계
데이터 무결성 및 정확성 검증.
성능 테스트 및 새로운 시스템의 작동 확인.
5. 완료 및 유지보수
새 시스템으로 전환 후 모니터링.
사용자의 피드백 반영 및 최적화 작업 수행.
마이그레이션 시 고려 사항
- 데이터 무결성: 데이터 손실 없이 정확하게 이동하는지 확인.
- 다운타임 최소화: 애플리케이션 가동 중단 시간을 최소화.
- 성능 최적화: 마이그레이션 후 새로운 시스템이 최적의 성능을 발휘하도록 설계.
- 호환성: 새 시스템과 기존 애플리케이션 간의 호환성 보장.
- 보안: 민감한 데이터의 암호화 및 보안 전송.
마이그레이션의 장단점
- 장점
- 유연성 향상: 새로운 시스템이나 기술로 전환하여 성능과 기능을 강화.
- 확장성: 미래의 데이터 요구사항을 수용하기 쉬워짐.
- 기술 비용 절감: 클라우드 서비스로 전환 시 하드웨어 비용 절감.
- 단점
- 리스크: 데이터 손실, 중단 위험.
- 복잡성:시스템 간 호환성 및 데이터 변환 문제.
- 시간 및 비용: 마이그레이션 과정에서 추가적인 개발 및 테스트 비용 발생.
'공부' 카테고리의 다른 글
[Database] PK : 대체키(Surrogate key) vs 자연키(Natural key) (0) | 2024.11.18 |
---|---|
[Java] 빌더 패턴과 @Builder에 대해서 (0) | 2024.11.08 |
[Database] RDBMS vs NoSQL (0) | 2024.11.02 |
엘라스틱서치(Elasticsearch)가 빠른 검색이 가능한 이유 (0) | 2024.10.29 |
ORM(Object-Relational Mapping)이란 (0) | 2024.10.14 |