본문 바로가기

CERTIFICATION/SQLD

[SQLD/데이터 모델과 성능]2-7. 분산 데이터베이스 적용 기법

2. 데이터 모델과 성능

2-7. 분산 데이터베이스 적용 기법

(1) 테이블 위치 분산 (물리적인 분산인 듯) 

  • 테이블 구조 변경 X
  • 테이블 다른 DB에 중복으로 생성 X
  • 정보를 이용하는 형태가 각 위치별로 차이가 있을 경우에만 사용(이때 위치 = 서버 컴퓨터) 
  • 테이블 위치를 파악할 수 있는 도식화된 위치별 DB 문서 필요

 


(2) 테이블 분할 분산 - 수평분할

  • 특정 칼럼 값 기준으로 “행”단위로 분리 (열, 컬럼은 분리X) 
  • Primary Key에 의해 중복 발생 X
  • 데이터 수정 : 타 지사에 있는 데이터를 수정 X,  자사의 데이터만 수정 O
  • 각 지사 테이블 통합 처리
    - 조인이 발생해 성능저하 예상됨
    - 통합 처리 프로세스가 많은지 검토 후 적으면 수평분할
  • 데이터 무결성 보장 : 데이터가 지사별로 별도로 존재하여 중복 발생 X
  • 지사별 DB를 운영하는 경우 : 어떤 경우든 간에 DB 테이블들은 수평 분할하여 존재함 

 


(3) 테이블 분할 분산 - 수직분할

  • 컬럼 단위로 분리 (행 분리 X)
  • 각 테이블은 동일한 기본키와 값을 가져야함 
  • 데이터 중복이 발생 X

 

 

(4) 테이블 복제 분산 - 부분복제

  • 마스터 DB에서 테이블의 일부 내용만 다른 서버에 위치시킴
  • 통합된 테이블은 본사에 저장하고,  지사별로 각 지사에 해당하는 로우를 가지는 형태 
  • 지사에 데이터 선 발생 후 본사는 지사 데이터 통합 (↔ 광역복제)
  • 여러 테이블을 조인하지 않고 빠른 작업 수행 가능
    - 각 지사별 처리도 가능, 전체 본사 통합 처리도 가능
  • 본사 데이터는 통계, 이동 등 수행  //  지사 데이터로는 지사별 빠른 업무!
  • 다른 지역간 데이터 복제는 실시간 처리보다 배치 처리를 이용
  • 데이터의 정합성 일치 어려움 

 


(5) 테이블 복제 분산 - 광역복제

  • 통합된 테이블은 본사에 저장,  각 지사에 동일한 데이터를 저장
  • 본사에서 데이터 입력,수정,삭제 ⇒ 이를 지사에서 이용 (↔ 부분복제) 
  • 본사 ↔ 지사 간 특별한 제약 X
  • 다른 지역간 데이터 복제는 실시간 처리보다 배치처리를 이용 

 


(6) 테이블 요약 분산 - 분석요약

  • 각 지사별 존재하는 요약정보를 본사에 통합 후 전체에 대해 “다시 요약”
  • 동일한 테이블 구조를 가지고 분산된 동일 내용의 데이터를 이용해 통합된 데이터 산출 
  • 본사와 지사가 동일한 테이블을 갖지만,
    - 지사는 동일 내용에 대해 지사별 요약정보 가짐
    - 본사는 지사의 요약정보 통합해 “재산출”한 요약정보 가짐

 


(7) 테이블 요약 분산 - 통합요약

  • 각 지사별 존재하는 “다른 내용 정보”를 본사에 통합 후 전체에 대해 “다시 요약” 
  • 각 지사는 타 지사와 다른 요약정보를 가짐
    본사는 지사의 요약정보를 통합해 “재산출”한 요약정보 가짐 

 


(8) 분산 데이터베이스를 적용하여 성능이 향상된 사례

  • 분산 환경의 원리를 이해하지 않고 DB를 설계해 성능이 저하되는 경우 多
  • 복제분산의 원리를 간단히 응용하면 성능향상 설계 가능