데이터베이스 이중화
시스템 오류로 인한 데이터베이스 서비스 중단이나 물리적 손상 발생 시 이를 복구하기 위해 동일한 데이터베이스를 복제하여 관리하는 것
데이터베이스 이중화를 수행하면 하나 이상의 데이터베이스가 항상 같은 상태를 유지하므로 데이터베이스에 문제가 발생하면 복제된 데이터베이스를 이용하여 즉시 문제를 해결할 수 있다.
여러 개의 데이터베이스를 동시에 관리하므로 사용자가 수행하는 작업은 데이터베이스 이중화 시스템에 연결된 다른 데이터베이스에도 동일하게 적용된다.
애플리케이션을 여러 개의 데이터베이스에서 분산 처리하므로 데이터베이스의 부하를 줄일 수 있다
데이터베이스 이중화를 이용하면 손쉽게 백업 서버를 운영할 수 있다.
데이터베이스 이중화의 분류
- Eager 기법
- 트랜잭션 수행 중 데이터 변경이 발생하면 이중화된 모든 데이터베이스에 즉시 전달하여 변경 내용이 즉시 적용되도록 하는 기법
- Lazy 기법
- 트랜잭션의 수행이 종료되면 변경 사실을 새로운 트랜잭션에 작성하여 각 데이터베이스에 전달되는 기법
- 데이터베이스마다 새로운 트랜잭션이 수행되는 것으로 간주됨
데이터베이스 이중화 구성 방법
- 활동-대기 방법
- 한 DB가 활성 상태로 서비스하고 있으면 다른 DB는 대기하고 있다가 활성 DB에 장애가 발생하면 대기 상태에 있던 DB가 자동으로 모든 서비스를 대신 수행함
- 구성 방법과 관리가 쉬워 많은 기업에서 이용됨
- 활동-활동 방법
- 두 개의 DB가 서로 다른 서비스를 제공하다가 둘 중 한쪽 DB에 문제가 발생하면 나머지 다른 DB가 서비스를 제공함
- 두 DB가 모두 처리를 하기 대문에 처리율이 높지만 구성 방법 및 설정이 복잡함
클러스터링
두 대 이상의 서버를 하나의 서버처럼 운영하는 기술
서버 이중화 및 공유 스토리지를 사용하여 서버의 고가용성을 제공한다
- 클러스터링 종류
- 고가용성 클러스터링
- 하나의 서버에 장애가 발생하면 다른 노드(서버)가 받아 처리하여 서비스 중단을 방지하는 방식
- 일반적으로 언급되는 클러스터링이 고가용성 클러스터링
- 병렬 처리 클러스터링
- 전체 처리율을 높이기 위해 하나의 작업을 여러 개의 서버에서 분산하여 처리하는 방식
- 고가용성 클러스터링
RTO/RPO
- RTO(Recovery Time Objective, 목표 복구 시간)
- 비상사태 또는 업무 중단 시점으로부터 복구되어 가동될 대까지의 소요 시간을 의미함
- 예) 장애 발생 후 6시간 내 복구 가능
- RPO(Recovery Point Objective, 목표 복구 시점)
- 비상사태 또는 업무 중단 시점으로부터 데이터를 복구할 수 있는 기준점을 의미함
- 예) 장애 발생 전인 지난 주 금요일에 백업시켜 둔 복원 시점으로 복원 가능
'자격증 💳 > 정처기' 카테고리의 다른 글
[정처기] 데이터 입출력 구현_데이터베이스 백업 (1) | 2024.04.15 |
---|---|
[정처기] 데이터 입출력 구현_데이터베이스 보안 (1) | 2024.04.15 |
[정처기] 데이터 입출력 구현_파티션 (0) | 2024.04.14 |
[정처기] 데이터 입출력 구현_뷰/클러스터 (0) | 2024.04.14 |
[정처기] 데이터 입출력 구현_트랜잭션 분석/CRUD 분석 (0) | 2024.04.11 |