[SQLD] 2-5. 데이터 모델과 성능 - 분산DB 데이터에 따른 성능, 테이블 분할 분산, 테이블 복제 분산, 테이블 요약 분산, 통합 요약
A. 분산 데이터베이스의 개요
1. 여러 곳에 분산되어 있는 데이터베이스를 하나의 가상 시스템으로 구축
2. 논리적으로 동일한 시스템
3. 네트워크를 통해 물리적으로 분산되어 있는 데이터들의 모임
4. 물리적 Site 분산,논리적으로 사용자 통합/공유
5. 네트워크 환경을 이용하여 데이터베이스를 여러 지역 여러 노드로 위치시켜 사용성/성능 등을 극대화시킨 데이터베이스
B. 분산 데이터베이스의 투명성
- 분할투명성(단편화) - 하나의 논리적 Relation이 여러 단편으로 분할되어 사본이 여러 site에 저장
- 위치투명성 - 위치정보가 System Catalog에 유지되어야 함
- 지역사상 투명성 - 지역 DBMS와 물리적 DB사이의 Mapping이 보장되고 지역시스템 이름과 무관한 이름 사용 가능
- 중복투명성 - DB 객체가 여러 site에 중복되어 있는지 알 필요가 없는 성질
- 장애투명성 - 구성요소(DBMS, Computer)의 장애에 무관한 Transaction의 원자성 유지
- 병행투명성 - 다수 Transaction 동시 수행 시 결과의 일관성 유지,Time Stamp, 분산 2단계 Locking을 이용 구현
C. 분산 데이터베이스 장단점
D. 분산 데이터베이스의 적용 기법
【 테이블 위치 분산 】
1. 테이블 구조 변하지 않음
2. 다른 데이터베이스에 테이블이 중복 생성되지 않음
3. 설계된 테이블의 위치를 각각 다르게 위치시키는 것
【 테이블 분할 분산 】
1. 위치만 다른 곳에 두는 것이 아니라 각각의 테이블을 쪼개어 분산하는 방법
2. 로우 (Row) 단위로 분리하는 수평분할 (Horizontal Fragmentation)
3. 칼럼 (Column) 단위로 분할하는 수직분할 (Vertical Fragmentation)
【 테이블 분할 분산 - 수평분할 】
1. 특정 칼럼의 값을 기준으로 로우(Row)를 분리
2. 데이터를 한군데 집합시켜 놓아도 Primary Key에 의해 중복이 발생되지 않음
【 테이블 분할 분산 - 수직분할 】
1. 테이블 칼럼을 기준으로 칼럼(Row)을 분리한다.
2. 각각의 테이블에는 동일한 Primary Key 구조와 값을 가지고 있어야 한다
3.Primary Key 가 동일한 데이터의 조합이 가능
【 테이블 복제 분산 】
1. 동일한 테이블을 다른 지역이나 서버에서 동시에 생성하여 관리
【 테이블 복제 분산 부분복제 】
1. 메인 테이블의 일부 데이터를 다른 곳에도 관리
2. 메인 테이블은 전체 데이터 관리
3. 복제되는 테이블은 메인테이블과 일부분 데이터 중복이 존재
【 테이블 복제 분산 광역복제 】
1. 메인 테이블과 동일한 데이터를 관리
2. 배치에 의해 복제
【 테이블 요약 분산 】
1. 데이터가 비슷하지만 서로 다른 유형으로 존재
2. 동일한 내용의 데이터를 이용하는 방식의 분석요약 (Rollup Summarization)
3. 분석요약은 각 DB에 있는 데이터를 이용하여 중앙 DB에서 통합하여 요약 데이터를 산정
4. 다른 내용의 데이터를 이용하는 방식의 통합요약 (Consolidation Summarization)
5. DB 에서 요약한 정보를 중앙 DB에서 취합하여 각 DB 별로 데이터를 비교
【 분석요약 (Rollup Replication) 】
1. 분산 대상의 모든 DB는 칼럼과 로우가 동일
2. 동일한 내용에 대해 DB 별로 요약되어 있는 정보를 가지고 있음
3. 각 DB 의 요약정보를 통합하여 재산출하여 전체에 대한 요약정보를 가지고 있음
4. 통합 통계데이터에 대한 정보제공에 용이한 분산방법
【 통합요약 (Consolidation Replication) 】
1. DB 별로 존재하는 다른 내용의 정보를 중앙 DB에 통합하여 다시 전체에 대해서 요약정보를 산출하는 분산방법
2. 각 DB 에는 타 DB와 다른 요약정보를 가지고 있음
3. 중앙 DB 에는 각 DB 의 요약정보를 데이터를 같은 위치에 두는 것으로 통합