Meme's IT

[SQLD] 분산 DB 데이터에 따른 성능 본문

공부/SQLD

[SQLD] 분산 DB 데이터에 따른 성능

Memez 2023. 10. 26. 11:29

# 분산 DB?

여러 곳으로 분산되어 있는 DB를 하나의 가상 시스템으로 사용할 수 있도록 한 DB

물리적 사이트를 분산되어 있으나 논리적으로는 동일한 시스템

과거에는 위치 중심 → 현재는 업무 필요에 따라 분산 설계

 

설계방식

  • 상향식: 지역 → 전역 스키마
  • 하향식: 전역 → 지역사상 스키마

 

장점

  • 신뢰성과 가용성 증가
  • 빠른 응답 속도와 통신비용 절감
  • 용량 확장 용이
  • 지역 자치성
  • 효용성, 융통성

 

단점

  • 관리 및 통제가 어렵다
  • 데이터 무결성 관리 어렵다
  • SW 개발 비용 및 처리 비용이 증가
  • 불규칙한 응답 속도
  • 오류의 잠재성 증대

 


# ⭐ 분산 DB의 투명성⭐

  • 분할 투명성: 하나의 논리적 관계가 분할되어 각 단편의 사본이 여러 사이트에 저장
  • 위치 투명성: 사용하려는 데이터 저장 장소가 명시되지 않아도 됨
  • 지역사상 투명성: 지역 DBMS와 물리적 DB사이의 사상이 보장됨
  • 중복 투명성: DB 객체 중복 여부를 몰라도 됨
  • 장애 투명성: 구성요소(DBMS, 컴퓨터)의 장애에 무관하게 트랜잭션의 원자성이 유지됨
  • 병행 투명성: 다수의 트랜잭션을 동시 수행했을 때 결과의 일관성이 유지됨, 병렬 아님\

 

# 분산 DB 적용 기법

  • 테이블 위치 분산: 설계된 테이블의 위치를 분산시킴
  • 테이블 분할 분산(Table Fragmentation): 테이블을 쪼개서 분산 / 수평, 수직
  • 테이블 복제 분산(Table Replication): 동일한 테이블을 다른 지역이나 서버에서 동시 생성, 원격지 조인을 내부 조인으로 변경해 성능 향상 / 부분, 광역 복제
  • 테이블 요약 분산(Tavble Summarization)
    • 분석요약: 사이트 별 요약정보를 본사에서 통합하여 전체 요약정보 산출
    • 통합요약: 사이트 별 정보를 본사에서 통합하여 전체 요약정보 산출

 

 

# 분산 DB 설계를 고려해야 하는 경우

  • 성능이 중요한 사이트
  • 공통 코드, 기준 정보, 마스터 데이터의 성능향상
  • 실시간 동기화가 요구되지 않는 경우 = Near Real Time 특징을 갖고 있는 경우
  • 특정 서버에 부하가 집중되어 부하를 분산할 때
  • 백업 사이트를 구성하는 경우

'공부 > SQLD' 카테고리의 다른 글

[SQLD] DDL(Data Definition Language)  (0) 2023.10.30
[SQLD] 관계형 DB  (0) 2023.10.30
[SQLD] DB의 구조와 성능  (0) 2023.10.23
[SQLD] 대용량 데이터에 따른 성능  (0) 2023.10.22
[SQLD]★반정규화★  (0) 2023.10.22