데이터베이스 이중화 / 서버 클러스터링

0

정보처리기사

목록 보기
48/100

데이터베이스 이중화와 서버 클러스터링에 대한 개념 정리


1. 데이터베이스 이중화 (Database Redundancy)

1.1 정의

  • 데이터베이스 이중화는 시스템 오류물리적 손상으로 인해 데이터베이스 서비스가 중단되는 것을 방지하기 위해 동일한 데이터베이스를 복제하여 여러 개로 관리하는 기술.
  • 목적:
    • 데이터 서비스의 연속성 보장.
    • 장애 발생 시 빠른 복구.

1.2 주요 특징

  • 복제된 데이터베이스는 항상 같은 상태를 유지.
  • 데이터베이스에 문제가 생기면 복제본을 이용해 즉각 복구 가능.
  • 부하 분산: 여러 데이터베이스로 애플리케이션의 부하를 나눔.
  • 백업 서버 운영이 쉬워짐.

1.3 이중화 방법

  1. 즉시 기법 (Eager):

    • 트랜잭션 수행 중 변경된 데이터를 즉시 모든 복제 데이터베이스에 적용.
    • 실시간 동기화로 데이터를 일관되게 유지.
    • 장점: 높은 일관성.
    • 단점: 처리 속도 느릴 수 있음.
  2. 지연 기법 (Lazy):

    • 트랜잭션 종료 후, 변경 내용을 새로운 트랜잭션 형태로 각 데이터베이스에 전달.
    • 장점: 성능 향상.
    • 단점: 데이터 일관성 보장 어려움.

1.4 이중화 구성 방식

  1. 활동-대기 방식 (Active-Passive):

    • 하나의 데이터베이스가 활성화 상태로 서비스 제공.
    • 나머지 데이터베이스는 대기 상태로, 장애 발생 시 즉시 활성화됨.
    • 장점: 구성 간단, 많은 기업에서 사용.
    • 단점: 대기 중인 데이터베이스의 활용도가 낮음.
  2. 활동-활동 방식 (Active-Active):

    • 모든 데이터베이스가 활성화 상태로, 서로 다른 서비스를 처리.
    • 한쪽에 장애가 발생하면 나머지가 모든 서비스를 처리.
    • 장점: 처리율 높음.
    • 단점: 구성 복잡, 설정 어려움.

2. 서버 클러스터링

2.1 정의

  • 2대 이상의 서버하나의 서버처럼 운영하는 기술.
  • 고가용성(HA)병렬처리 성능을 높이기 위한 기술.

2.2 클러스터링의 목적

  • 고가용성:
    • 시스템 장애 발생 시, 다른 서버가 서비스를 대신 처리.
  • 병렬 처리:
    • 하나의 작업을 여러 서버에서 동시에 처리하여 성능 향상.
  • 부하 분산:
    • 많은 요청을 여러 서버에 나눠 처리.

2.3 클러스터링 종류

  1. 고가용성 클러스터링 (HA Clustering):

    • 장애 발생 시, 다른 서버가 장애 서버의 데이터를 자동으로 처리.
    • 서비스 중단 없이 운영 가능.
    • 예: 데이터 복구를 위한 페일오버(Failover) 기능 포함.
  2. 병렬처리 클러스터링 (Parallel Processing Clustering):

    • 하나의 작업을 여러 서버에서 병렬로 처리.
    • 처리 속도와 효율성을 극대화.
    • 대규모 데이터 처리에 적합.

3. 복구 목표 지표

3.1 RTO (Recovery Time Objective)

  • 목표 복구 시간:
    • 장애 발생 후, 시스템이 정상 가동 상태로 복구되기까지의 최대 허용 시간.
    • 짧을수록 시스템의 복구 능력이 뛰어남.

3.2 RPO (Recovery Point Objective)

  • 목표 복구 시점:
    • 장애 발생 시 복구 가능한 최신 데이터의 시점.
    • 데이터를 복구할 수 있는 최대 손실 허용 범위를 의미.

4. 데이터베이스 이중화와 클러스터링의 장단점

4.1 데이터베이스 이중화

  • 장점:

    1. 데이터 안전성 보장.
    2. 장애 발생 시 빠른 복구 가능.
    3. 부하 분산을 통한 성능 향상.
  • 단점:

    1. 운영 비용 증가 (하드웨어 및 관리 비용).
    2. 동기화 작업으로 인해 성능 저하 가능.

4.2 서버 클러스터링

  • 장점:

    1. 서비스 연속성 보장 (고가용성).
    2. 부하 분산으로 처리 속도 향상.
    3. 병렬 처리로 효율성 극대화.
  • 단점:

    1. 구축 및 관리 복잡.
    2. 초기 투자 비용 높음.

5. 정리

항목데이터베이스 이중화서버 클러스터링
정의동일한 데이터베이스 복제 및 관리여러 서버를 하나의 서버처럼 운영
목적장애 발생 시 데이터 복구, 서비스 연속성 보장고가용성, 병렬 처리, 부하 분산
구성 방식활동-대기, 활동-활동 방식고가용성 클러스터링, 병렬처리 클러스터링
장점빠른 복구, 데이터 일관성 유지, 부하 분산서비스 연속성, 처리 성능 향상
단점운영 비용 증가, 성능 저하 가능높은 초기 비용, 관리 복잡성

데이터베이스 이중화와 서버 클러스터링은 시스템 안정성과 성능을 보장하기 위한 핵심 기술입니다. 이를 통해 데이터 보호와 서비스 연속성을 유지하며, 특히 대규모 트래픽 환경에서 효율적인 처리가 가능합니다.

0개의 댓글