CERTIFICATION/SQLD
[SQLD/데이터 모델과 성능]2-7. 분산 데이터베이스 적용 기법
써머레인
2024. 2. 27. 22:28
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를 설계해 성능이 저하되는 경우 多
- 복제분산의 원리를 간단히 응용하면 성능향상 설계 가능