본문 바로가기
자격증/정보처리기사

분산 데이터베이스 설계

by 두두리안 2022. 7. 5.
728x90

목차

1.분산 데이터베이스 설계
2.물리 데이터베이스 설계의 종류
3.물리 데이터베이스의 분할(Fragment)
4.빅 데이터(Big Data)

1.분산 데이터베이스 설계

1-1. 분산 데이터베이스의 개념

* 물리적으로 분산되어 있는 데이터베이스를 사용자가 단일 데이터베이스로 인식할수 있도록 논리적으로 통합하여 공유되는 데이터베이스
* 물리적으로 분산되어 있는 데이터베이스를 하나로 인식시키기 위한 시스템 필요

1-2. 분산 데이터베이스 설계의 장단점

1. 분산 데이터베이스 설계의 장단점
    * 분산제어를 통해 원격 데이터에 대한 의존도를 감소시킬수 있다
    * 처리가 어렵거나 불가능한 규모의 대용량 데이터를 처리가 가능하다
    * 기존 시스템에 점진적으로 서버확장이 용이
    * 한 사이트에 문제가 발생해도 다른 사이트 사용이 가능하기 때문에 신뢰도와 가용성이 향상
    * 시스템 규모의 적절한 조절, 요구 수용량이 증대해 효용성과 융통성이 높아진다
2. 분산 데이터베이스 설계의 단점
    * 데이터베이스 설계, 관리의 복잡도와 개발 비용이 증가
    * 단일 데이터베이스에 비해 상대적으로 통제기능이 취약하고 오류의 잠재성이 증가
    * 단일 데이터베이스에 비해 데이터의 무결성을 보장하기 어렵다

1-3. 분산 데이터베이스 관리 시스템의 목표

1. 위치 투명성(Location Transparency)
    * 액세스하려는 데이터베이스의 실제위치를 알 필요없이 데이터베이스의 논리적명칭만으로 액세스할수 있는 성질
2. 중복 투명성(Replication Transparency)
    * 중복된 데이터 유무와 저장 위치등에 대한 정보를 사용자가 인지할 필요가 없어야 한다는 성질
3. 분할 투명성(Fragmentation Transparency)
    * 전역 스키마가 어떻게 분할되어 있는지 알 필요없이 전역 질의를 여러개의 단편질의로 변환해주는 성질
4. 장애 투명성(Failure Transparency)
    * 분산된 물리적 환경에서 특정시스템이나 네트워크에 장애가 발생해도 데이터무결성이 보장되는 성질
5. 병행 투명성(Concurrency Transparency)
    * 분산 데이터베이스와 관련된 다수의 트랜잭션들이 동시에 실현되더라도 그 트랜잭션의 결과는 영향을 받지 않는 성질

2.물리 데이터베이스

2-1. 설계의 종류

1. 중앙 집중형 설계
    * 중상 서버 컴퓨터만 데이터베이스를 관리하고 다른 지역의 컴퓨터는 접근만 가능하도록 설계하는 방식
2. 지역 집중형 설계
    * 지역 데이터베이스 간에 데이터를 복제하고 복사본을 실시간 또는 주기적으로 갱신하는 방식
3. 분산 논리적 설계
    * 분산환경에서 전체지역의 데이터베이스를 하나의 논리적 데이터베이스로 유지하는 방식
4. 분산 데이터베이스 설계
    * 전역 관계 네트워크를 논리적 측면에서 중복되지 않는 단일 소규모 단위로 분할하고, 분할된 결과를 복수의 사이트에 나눠 할당하여 유지하는 방식

3.물리 데이터베이스의 분할(Fragment)

3-1. 물리 데이터베이스의 분산

* 테이블을 중복되지 않게 각기 다른서버에 분산 배치하는 방법
* 테이블 위치를 분산할 때는 테이블의 구조를 변경하지 않으며, 다른 데이터베이스의 테이블과 중복되지 않게 배치
* 데이터베이스의 테이블을 각각 다른 위치에 배치하려면 해당 테이블들이 놓일서버들을 미리설정

3-2. 물리 데이터베이스의 분할

* 테이블의 데이터를 분할하여 분산시키는것
* 분할은 분산 데이터베이스에 중복되어 존재할수 있다
* 동일한 분할을 복수서버에 생성하는 분산방법

3-3. 물리 데이터베이스 분할 규칙

1. 완전성(Completeness)
    * 전 지역 테이블 내의 모든 데이터가 손실없이 분할로 사상되어야 하는것으로 전체 데이터를 대상으로 분할
2. 재구성(Reconstruction)
    * 관계 연산을 활용하여 본래의 전역 테이블로 재구성이 가능하도록 분할
3. 상호중첩배체(Dis-jointless)
    * 특정 분할에 속한 데이터가 다른 분할 데이터에 속하지 않도록 분할

3-4. 물리 데이터베이스 분할 방식

1. 수평 분할 방식
    * 각각의 분할에 포함된 레코드들이 상호 중복되지 않아야 한다
    * 속성 값으로 인해 서버 간 상호 배타적이므로 분할을 통합하는 상황에서도 중복 식별자는 발생하지 않는다
2. 수직 분할 방식
    * 식별자를 제외한 속성들이 중복되지 않아야 한다
    * 수직 분할의 경우 속성 분할로 레코드 기준의 분리가 아니므로 서버별 동일 식별자를 가진 레코드가 중첩되게 존재한다

3-5. 물리 데이터베이스 할당(Allocation) 방식

1. 비 중복 할당 방식
    * 최적의 노드를 선택해서 분산 데이터베이스의 단일 노드에서만 분할이 존재하도록 할당하는 방식
2. 중복 할당 방식
    * 비 중복 할당의 문제점을 보완하는 방식으로 동일한 테이블을 다른 서버에 복제 한다

4.빅 데이터(Big Data)

4-1. 분산 데이터베이스 설계와 데이터 통합

* 최적의 비용을 통해 분산된 데이터베이스에서 데이터 일관성을 유지하기 위한 데이터베이스 설계
* 분산 데이터베이스의 단점 보완과 정보의 적시성 등의 목적을 위해 데이터 통합 아키텍처를 구축
* 데이터 통합은 데이터웨어하우스나 EAI 활용

4-2. 데이터웨어하우스(Data Warehouse)

비교항목 데이터베이스 데이터웨어하우스
기능 업무 데이터 의사결정
데이터 형태 기능별 상세 데이터 주제별 요약 데이터
연산 명령 DML DQL
목표 신속한 처리 다양한 분석 정보
1. 데이터웨어하우스의 개념
    * 정보의 효율적인 분석과 신속한 비즈니스 의사결정을 위한 데이터베이스 환경
    * 기업의 정보 자산을 효율적으로 활용하기 위한 하나의 패러다임
2. 데이터웨어하우스의 활용
    * 데이터마트(Data Mart): 소규모 단일 주제에 대한 데이터웨어하우스 시스템
    * 온라인분석시스템(OLAP): 온라인으로 다양한 데이터 분석정보를 실시간으로 제공하는 시스템
    * 데이터마이닝(Data Mining): 데이터 웨어하우스에서 유용하고 가능성있는 정보및 정보간의 패턴을 발견하는 기법

4-3. 빅데이터 등장 배경

* 디지털 환경의 확산으로 제어할수 없는 방대한 데이터가 증가
* 문자, 음성, 이미지등의 다양한 형태와 목적의 데이터가 함께 존재
* 기존의 시스템으로는 이러한 데이터들을 분석하여 비즈니스에 활용하기 어렵다

4-4. 빅데이터의 특징

* 빅데이터 기술은 큰규모(Volume)의 다양한(Variety) 데이터를 빠른속도(Velocity)로 처리한다
* 기존의 정형화된 수치데이터를 벗어나 다양한 형태의 비정형 데이터를 포함한다
* 규모가 방대하고 다양하며, 짧은 생성주기를 가진다
* 대표적인 프레임워크: 하둡, NoSQL, R

4-5. 하둡(Hadoop)

1. 하둡의 개념
    * 오픈소스 기반의 분산 컴퓨팅 플랫폼으로, 일반 PC들로 가상화된 대형 스토리지를 형성
    * 필수 핵심 구성요소로 맵리듀스와 하둡 분산 파일 시스템등이 있다
2. 맵리듀스(MapReduce)
    * 구글에 의해 개발된 기술
    * 대용량 데이터처리를 위한 병렬처리기법을 제공
    * Map : 입력된 데이터를 64kb로 분할, 단어를 분류하여 카운트
    * Reduce: 각 텍스트에 정리된 맵을 결합하여 동일한 단어를 카운트

4-6. 빅데이터 처리과정

1. 생성
    * 내부 데이터: 데이터베이스 및 파일 시스템의 데이터
    * 외부 데이터: 인터넷상에서 생성된 다양한 데이터
2. 수집
    * 크롤링: 검색 엔진등을 이용하는 데이터 수집활동
    * ETL: 데이터추출, 변환, 수집
3. 저장
    * NoSQL: SQL을 사용하지 않는 모든 데이터베이스 시스템
4. 처리
    * 하둡
5. 분석
    * NLP(Natural Language Processing): 자연어 처리 기반 빅데이터 분석
    * 머신러닝(Machine Learning): 컴퓨터가 스스로 학습할수 있도록 하는 알고리즘 개발
6. 표현
    * 가상화(Virtualization): 데이터 분석결과를 쉽게 이해할수 있도록 표현하는 기술

참고자료 : 이기적 환상콤비 정보처리기사

728x90

'자격증 > 정보처리기사' 카테고리의 다른 글

C언어 선택 및 반복 제어문  (0) 2022.07.06
C언어 특징 및 입출력  (0) 2022.07.06
병행제어(Concurrency Control)와 로킹(Locking)  (0) 2022.07.05
인덱스(Index)와 뷰(View)  (0) 2022.07.04
정규화  (0) 2022.07.04