자격증/정보처리기사
필기 - 3. 데이터베이스 구축_ch3. 논리 DB 설계
권동동
2024. 7. 5. 10:10
1. 관계 DB 모델
(1) 관계 데이터 모델
1️⃣ 관계 데이터 모델 개념
- 실세계 데이터를 행과 열로 구성된 테이블 형태로 구성된 데이터 모델
2️⃣ 관계 데이터 모델의 구성
릴레이션 | 행과 열로 구성된 테이블 |
튜플 | 행 |
속성 | 열 |
카디널리티 | 튜플의 수 |
차수 | 열의 수 |
스키마 | 데이터베이스의 구조, 제약조건 등의 정보를 담고있는 기본적인 구조 |
인스턴스 | 정의된 스키마에 따라 생성된 테이블에 실제 저장된 데이터의 집합 |
식별자 | 여러 개의 집합체를 담고 있는 관계형 데이터베이스에서 각각의 구분 할 수 있는 논리적인 개념 |
도메인 | 하나의 애트리튜브가 취할 수 있는 같은 타입의 원자값들의 집합 |
(2) 관계 데이터 언어
1️⃣ 관계 대수
- 합집합
- 교집합
- 차집합
- 카티션 프로덕트
- 셀렉트
- 프로젝트
- 조인
- 디비전
2️⃣ 관계 해석
- 튜플 관계 해석과 도메인 관계 해석을 하는 비절차적인 언어
- 튜플 관계 해석
- 튜플 변수
- 한정 애트리뷰트
- ㅇ원자식
- 정형식
- 도메인 관계 해석
- 원하는 릴레이션을 도메인 해석식으로 정의하는 표기법
3️⃣ 관계 대수와 관계 해석 비교
구분 | 관계 대수 | 관계 해석 |
특징 | 절차적 언어(순서 명시) | 비 절차적 언어(계산 수식의 유연적 사용) |
목적 | 어떻게 유도하는가 | 무엇을 얻을 것인가 |
종류 | 순수관계 연산자, 일반 집합 연산자 | 튜플 관계 해석, 도메인 관계 해석 |
(3) 시스템 카탈로그
1️⃣ 시스템 카탈로그 개념
- DB에 저장되는 테이블, 뷰, 인덱스, 접근 권한 등에 대한 정보를 저장하는 DB
2️⃣ 시스템 카탈로그 특징
- 자료 사전(DD)
- 메타 데이터
- 테이블로 구성되어 있어 SQL을 이용하여 내용을 검색 가능
- DBMS가 스스로 생성하고 유지
2. 데이터 모델링 및 설계
(1) 데이터 모델
1️⃣ 데이터 모델 개념
- 현실 세계의 정보를 인간과 컴퓨터가 이해할 수 있도록 추상화 하여 표현한 모델
- 구연제 - 표시해야할 요소에는 논리적 데이터 구조, 연산, 제약조건
2️⃣ 데이터베이스 설계 단계 / 데이터 모델 절차
- 데이터베이스 설계 단계
단계 | 모델 | 설명 |
요구 조건 분석 | - | 도출된 요구사항 간 상충을 해결하고 범위를 파악하여 외부 환경과의 상호 작용을 분석을 통해 데이텅에 대한 요구 분석 |
개념적 설계 | 개념적 데이터 모델 | 사용자의 요구에 대한 트랜잭션을 모델링 하는 단계 현실 세계에 대한 인식을 추상적, 개념적으로 표현하여 개념적 구조를 도출하는 데이터 모델 |
논리적 설계 | 논리적 데이터 모델 | 트랜잭션의 인터페이스를 설계하는 단계 DBMS에 맞는 논리적 스키마를 설계하는 단계 |
물리적 설계 | 물리적 데이터 모델 | 물리적인 스키마를 만드는단계 실제 DB에 저장하는 단계 |
(2) 개체-관계(E-R) 모델
1️⃣ 개념
- 현실 세계에 존재하는 데이터와 그들 간의 관계를 사람이 이해할 수 있는 형태로 명확하게 표현하기 위한 모델
2️⃣ 구성요소
- 개체 : 유무형의 정보를 가지고 있는 요소
- 속성 : 개체가 갖는 속성
- 관계 : 두 개 이상의 개체 사이에 존재하는 연관성
3️⃣ E-R 다이어그램 기호
구성 | 기호 |
개체 | 사각형 |
관계 | 마름모 |
속성 | 타원 |
다중 값 속성 | 이중타원 |
관계-속성 연결 | 선 |
(3) 논리적 데이터 모델링
1️⃣ 개념
- 업무의 모습을 모델링 표기법으로 형상화하여 사람이 이해하기 쉽게 표현하는 프로세스
2️⃣ 논리적 데이터 종류
- 관계 데이터 모델
- 계층 데이터 모델
- 네트워크 데이터 모델
(4) 데이터 베이스 정규화
1️⃣ 개념
- 중복성을 제거하고 이상 현상을 방지하고, 데이터의 일관성과 정확성을 유지하기 위해 무손실 분해하는 과정
2️⃣ 데이터베이스 정규화 단계
단계 | 조건 |
1정규형 | 원자 값으로 구성 |
2정규형 | 부분 함수 종속 제거 |
3정규형 | 이행 함수 종속 제거 |
보이스-코드 정규형 | 결정자가 후보 키가 아닌 함수 종속 제거 |
4정규형 | 다중 값 종속성 제거 |
5정규형 | 조인 종속성 제거 |