사적인 개발자
[DB] 백업 - Full 전체, Incremental 증분, Differential 차등 본문
배경
마이그레이션 이슈로 백업의 방식에 대해 논의하면서,
꽤 많은 양의 데이터를 어떻게하면 가장 효율적이고 안전하게 옮길 수 있을지
백업의 방식들에 대해 알아보자
백업의 종류 : 전체백업, 증분백업, 차등백업
전체백업 : 말 그대로 모든 데이터를 풀로 백업
차등백업 : 마지막 전체 백업 이후의 데이터 변경 사항만 복제
증분백업 : 마지막 백업 이후의 데이터 변경 사항을 복사
1. 전체백업
무식하지만 확실하게 간다.
데이터 변경 여부에 관계없이 전체 데이터 세트를 복사함
하지만 중복되는 부분이 많고, 데이터가 커질수록 시간도 오래 걸릴뿐더러
많은 양의 스토리지를 무의미하게 차지할 수 있어 현실적으로는 잘 쓰이지 않는다(고한다. AWS님께서)
2. 증분백업
last 백업 이후 수정된 데이터만 복사한다. 꽤나 합리적이다.
만약 마지막 백업을 1일 14:00에 했다면, 2일에 증분 백업을 실시할 경우
1일 14:00 이후 ~ 2일 현재시까지 변경된 데이터만 복사한다
3. 차등백업
last 전체 백업 이후 추가/수정된 데이터만 복사한다.
만약 마지막 전체 백업을 1일 14:00에 했다면, 2일에 차등백업을 실시할 경우
1일 14:00 이후 ~ 2일 현재시까지의 모든 변경사항이 복사된다.
그리고 3일에 다시 차등백업을 실시할 경우 2일과 마찬가지로
1일 14:00 이후 ~ 3일 현재시까지의 모든 변경사항이 복사된다.
어쨌거나 전체백업을 기준으로 백업파일의 크기가 점진적으로 증가하게 됨
백업 속도
증분 > 차등 > 전체
스토리지 공간 활용도
증분 > 차등 > 전체
데이터 복원 속도
전체 > 차등 > 증분
ex ) 1일에 전체백업, 4일에 장애발생시
증분 : 1일 전체백업 후 ~ 3일까지의 모든 백업을 검토, 변경 사항 식별 후 누적 복원 필요.
마지막 전체 백업 이후 경과 시간이 길어질수록 할게 더 많아짐
차등 : 1일 전체 백업과 3일 최신 차등백업만 있으면 됨
'TIL' 카테고리의 다른 글
[Android] Android studio 메인 파일 구조 (0) | 2024.12.31 |
---|---|
[Groovy] Default arguments 로 준 오버로딩 (1) | 2024.12.31 |
[LLM] Day2. 올라마 실행 (1) | 2024.12.20 |
[LLM] Day1. 올라마Ollama , gemma2 9b 모델 설치 (1) | 2024.12.19 |
[LLM] 머신러닝 Flow (1) | 2024.12.19 |