백업과 복구란 무엇인가?
백업(Backup)과 복구(Recovery)는 데이터 손실에 대비하여 기록을 미리 백업해 두고, 실제로 데이터가 손실되었을 때 이를 복원할 수 있도록 시스템을 구축하는 일련의 과정을 의미합니다. 데이터 백업은 컴퓨터 정보를 복사하고 아카이브하는 작업으로, 데이터가 삭제되거나 손상되는 상황에 대비할 수 있게 해줍니다.
백업의 궁극적인 목표는 기본 데이터에 장애가 발생했을 때 복원할 수 있는 데이터 사본을 확보하는 것입니다. 기본 데이터 장애는 하드웨어 또는 소프트웨어 오류, 데이터 손상, 그리고 바이러스나 멀웨어 같은 악성 공격, 혹은 실수로 인한 삭제 등 인위적인 사건으로 인해 발생할 수 있습니다. 백업 사본은 과거 특정 시점의 데이터를 다시 저장할 수 있게 하여, 예기치 못한 사건으로부터 비즈니스 연속성을 회복하도록 지원합니다.
주요 백업 유형
1. 전체 백업(Full Backup)
데이터베이스 전체를 한 번에 백업하는 방식입니다. 모든 데이터 파일, 제어 파일(control file), 저널 파일(journal file)이 포함되며, 가장 안전하지만 소요 시간과 저장 공간이 많이 필요합니다.
2. 콜드 백업(Cold Backup)
데이터베이스가 완전히 종료된 상태에서 수행하는 백업입니다. 시스템이 중단되는 동안 진행되므로 데이터 일관성이 보장되지만, 그만큼 서비스 중단 시간이 발생한다는 단점이 있습니다.
3. 핫 백업(Hot Backup)
데이터베이스 엔진이 가동 중인 상태에서 수행하는 백업입니다. '핫(hot)'이라는 명칭은 데이터베이스가 열려 있고 사용 중일 가능성이 있는 상태에서 백업이 진행되기 때문에 붙여졌습니다. 핫 백업을 수행하려면 DBMS가 백업 데이터의 일관성을 보장할 수 있는 특수 기능을 갖추고 있어야 합니다.
복구(Recovery)의 개념
복구는 데이터베이스의 일부 요소가 손실된 후 이를 재구축하는 단계입니다. 새로운 데이터베이스의 복구 구조는 생성 시점의 원본 데이터베이스 구조로부터 상속되며, 데이터베이스 모델은 생성 이후에도 변경될 수 있습니다. 효과적인 복구를 위해서는 사전에 마련된 백업 전략과 복구 절차가 체계적으로 문서화되어 있어야 합니다.
백업·복구 전략 수립 시 고려 사항
1. 백업 대상 데이터
정기적으로 백업해야 하는 데이터를 먼저 식별해야 합니다. 이는 곧 정기 백업의 크기를 결정하며, 업무상 중요도에 따라 백업 주기와 우선순위를 달리 설정하는 근거가 됩니다.
2. 웨어하우스의 배치 윈도우(Batch Window)
시스템이 온라인 상태일 때도 데이터 백업이 가능하지만, 이러한 방식은 비용이 많이 듭니다. 따라서 웨어하우스에 허용되는 최대 작업 시간을 산정하고, 그 배치 윈도우의 일부를 정기적인 리포트 생성 및 기타 유사한 배치 작업에 할당하는 계획이 필요합니다.
3. 백업 및 복구의 허용 비용
백업 메커니즘마다 요구되는 비용이 다릅니다. 기업은 예산 제약 조건으로 인해 선택할 수 있는 백업 및 복구 옵션이 제한될 수 있으므로, 비용 대비 효과를 종합적으로 평가하여 최적의 전략을 수립해야 합니다.
마무리
데이터 웨어하우스는 기업의 핵심 의사결정 자산을 담고 있으므로, 백업과 복구 전략은 선택이 아닌 필수입니다. 백업 유형별 특성을 정확히 이해하고, 백업 대상·작업 시간·비용이라는 세 가지 핵심 요소를 균형 있게 고려한다면, 예기치 못한 장애 상황에서도 신속하고 안정적으로 데이터를 복원할 수 있습니다.