제 6절 분산 데이터베이스와 성능
1. 분산 데이터베이스의 개요
* 여러 곳으로 분산되어 있는 데이터베이스를 하나의 가상시스템으로 사용
* 논리적으로 동일한 시스템에 속하지만, 컴퓨터 네트워크를 통해 물리적으로 분산되어 있는 데이터들의 모임, 물리적 Site분산, 논리적으로 사용자 통합.공유
2. 분산 데이터베이스의 투명성
1) 분할투명성(단편화) : 하나의 논리적인 Relation이 여러 단편으로 분할되어 각 단편의 사본이 여러 site에 저장
2) 위치투명성 : 사용하려는 데이터의 저장장소 명시 불필요, 위치정보가 System Catalog에 유지
3) 지역사상투명성 : 지역 DBMS와 물리적 DB사이의 Mapping 보장, 각 지역시스템이 이름과 무관한 이름 사용가능
4) 중복투명성 : DB객체가 여러 SITE에 중복되어 있는지 알 필요가 없는 성질
5) 장애투명성 : 구성요소의 상태에 무관한 트랜잭션의 원자성 유지
6) 병행투명성 : 다수 트랜잭션 동시 수행 시 결과의 일관성 유지, Time Stamp, 분산 2단계 Locking을 이용구현
3. 분산 데이터베이스의 적용방법 및 장단점
가. 분산 데이터베이스 적용방법
: 업무의 흐름을 보고 업무구성에 따른 아키택처 특징에 따라 구성
나. 분산 데이터베이스의 장단점
- 장점 : 지역자치성, 점증적 시스템용량확장, 신뢰성과 가용성, 효용성과 융통성, 빠른 응답속도와 통신비용절감, 데이터의 가용성과 신뢰성 증가, 시스템 규모의 적절한 조절, 각 지역 사용자의 요구수용 증대
- 단점 : 소프트웨어 개발비용, 오류의 잠재성 증대, 처리비용의 증대, 설계.관리의 복잡성과 비용, 불규칙한 응답속도, 통제의 어려움, 데이터 무결성에 대한 위협
4. 분산 데이터베이스의 활용 방향성
: 업부적인 기능이 다양해지고 데이터의 양이 기하급수적으로 증가하는 최근 데이터베이스 환경에서 적용하는 고급화된 기술, 업무적인 특징에 따라 분산 데이터베이스를 활용하는 기술이 필요.
5. 데이터베이스 분산구성의 가치
: 통합된 데이터베이스에서 제공할 수 없는 빠른 성능을 제공, 발생되는 네트워크 부하 및 트랜잭션 집중에 따른 성능저하의 원인을 분산하여 성능 향상
6. 분산 데이터베이스의 적용기법
가. 테이블 위치 분산
: 설계된 테이블 각각이 지역별로 분산되어 생성되는 경우, 테이블의 위치를 파악할 수 있는 도식화된 위치 별 데이터베이스 문서 필요
나. 테이블 분할 분산
- 수평분할 : 로우 단위로 분리, 지사 별로 사용하는 로우가 다를 때 이용, 데이터를 한군데 집합시켜도 중복발생X
- 수직분할 : 칼럼단위로 분리, 각각의 테이블에는 동일한 Primary Key구조와 값은 가지고 있어야함
다. 테이블 부분 복제
: 동일한 테이블을 다른 지역이나 서버에서 동시에 생성하여 관리
- 부분복제 : 통합된 테이블을 한군데(본사)에 가지고 있으며 각각의 지사별로 해당된 로우를 가지는 형태
- 광역복제 : 통합된 테이블을 한군데(본사)에 가지고 있으며 각 지사에도 본사와 동일한 데이터를 모두 가지고 있는 형태
라. 테이블 요약 분산
: 지역 간에 또는 서버 간에 데이터가 비슷하지만 다른 유형으로 존재하는 경우
- 분석요약
: 각 지사별로 존재하는 요약정보를 본사에 통합하여 다시 전체에 대해서 요약정보를 산출하는 분산 방법
- 통합요약
: 각 지사별로 존재하는 다른 내용의 정보를 본사에 통합하여 다시 전체에 대해서 요약정보를 산출하는 방식
7. 분산 데이터베이스를 적용하여 성능이 향상된 사례
- 성능이 중요한 사이트에 적용
- 공통코드, 기준정보, 마스터데이터 등에 대해 분산환경을 구성하면 성능이 좋아진다.
- 실시간 동기화 요구되지 않을 때 좋다. 거의 실시간(Near Real Time)의 업무적인 특징을 가지고 있을 때도 분산환경을 구성
- 특정 서버에 부하가 집중될 때 부하를 분산할 때도 좋다.
- 백업사이트를 구성할 때 간단하게 분산기능을 적용하여 구성할 수 있다.
'자격증 > SQLD' 카테고리의 다른 글
| [#SQLD] 제 2절 DDL (0) | 2023.02.20 |
|---|---|
| [#SQLD] 제 1절 관계형 데이터베이스 개요 (0) | 2023.02.20 |
| [#SQLD] 제 5절 데이터베이스 구조와 성능 (0) | 2023.02.13 |
| [#SQLD] 제 4절 대량 데이터에 따른 성능 (0) | 2023.02.13 |
| [#SQLD] 제 2절 정규화와 성능 (0) | 2023.02.09 |
댓글