1. 데이터 모델링
- 데이터의 의미를 파악하고 데이터와 관여하는 업무 프로세스를 개념적으로 정의하고 분석하는 작업
실세계의 일부분을 DBMS가 지원하는 데이터 모델의 형태로 나타내는 과정
* 데이터 모델 : 의미, 데이터 타입, 연산 등을 명시하기 위해 사용할 수 있는 개념들의 집합
- 모델링의 단계
: 사용자 요구사항 분석 -(데이터 및 없무)-> 개념적 데이터 모델링 -(ER 모델)-> 논리적 데이터 모델링
-(관계형 모델)-> 물리적 데이터 모델링 -(물리적 세부사항)-> 내부스키마
1) 개념적 데이터 모델링
- 요구사항의 해석 오류를 방지
- 실세계의 데이터를 개념적으로 일반화시켜 데이터 구조, 데이터 타입, 속성, 관계, 제약조건 등을 이끌어내는 과정
2) 논리적 데이터 모델링
- 특정 DBMS의 구현 모델에 맞춰 데이터를 표현하는 과정
- 데이터 정의 언어로 기술된 개념 스키마 생성
3) 물리적 데이터 모델링
- 데이터베이스 파일의 내부 저장구조, 파일구성, 인덱스, 접근 경로 등을 결정하는 과정
2. 사용자 요구사항 분석
- 사용자 요구사항의 개념
1) 시스템의 대상이 되는 업무를 분석
- 정보 시스템의 데이터베이스가 신속하고 효과적으로 업무 처리를 지원
- 필요한 데이터를 저장 및 운용할 수 있는 구조 개발
2) 도출, 분석, 기록 단계로 수행
- (제안요청서) > "요구사항 도출" > (요구사항 명세서) > "요구사항 분석" > (요구사항 정의서) > "요구사항 기록"
3. ER 모델
- 실세계의 속성들로 이루어진 개체(entity)와 개체 사이의 관계(relationship)를 정형화시킨 모델
- 개념적 모델링 단계에서 사용되는 데이터 모델
- 구성요소 : 개체 집합, 관계 집합, 속성
1) 개체 집합
- 개체 (entity) : 실세계에 존재하는 다른 객체와 구별되는 유무형의 사물, 개체를 설명하는 여러 속성들로 구성
- 개체 집합 (entity set) : 같은 속성을 공유하는 개체들의 모임
=> ER 모델에서는 실제 여러 개체들을 추상화시켜 표현
ex) 여러 학생이 모인 학생 집합 -> 학생을 학생번호, 학생이름, 성별, 나이 값을 가진 개체 집합으로 표현
2) 관계 집합
- 관계 : 개체와 개체 사이의 연관성
- 관계 집합 : 개체 집합 간의 연결 관계
=> 학생번호, ...., 나이 값으로 표현된 학생 개체 집합 -> 학과 개체 집합과의 사이에서 전공 관계 집합으로 연결
3) 속성
- 개체를 구체적으로 설명, 속성에 포함될 수 있는 값의 특성에 따라 여러 종류로 구분
- 속성의 종류
1) 단순 속성 : 더 작은 구성요소로 나눌 수 없는 속성 ex) 학생- 학생이름,성별,나이,...
2) 복합 속성 : 더 작은 구성요소로 나눌 수 있는 속성 ex) 학생- 생년월일- 년,월,일
------------------------------------------------------
3) 단일값 속성 : 한 개체에 대해 단 하나의 값만을 갖는 속성
4) 다중값 속성 : 한 개체에 대해 여러 개의 값을 갖는 속성
------------------------------------------------------
5) 유도 속성 : 다른 속성의 값으로부터 값이 유추될 수 있는 속성
6) 저장 속성 : 유도 속성을 위해 사용될 수 있는 속성
=> 나이는 단순 속성, 단일값 속성, 유도 속성
- 제약조건
1) 사상수(mapping cardinality)
: 관계 집합에 참가한 개체 집합에 대해 한 개체가 다른 개체와 관계를 맺을 수 있는 수량을 명시
(사상수 비율은 1:1(일대일), 1:N(일대다), N:1(다대일), M:N(다대다)의 형태가 있다)
2) 참가 제약조건
: 특정 개체집합이 관계 집합에 참여할 때 모든 개체가 관계에 참여한다면 전체적 참여,
일부만 참가한다면 부분적 참여
구조적 제약조건을 통해 개체가 최소 몇 번, 최대 몇 번까지 관계에 참여할 수 있는지 정의 가능
3) 키(key) 속성
: 각 개체를 구별하는데 사용되는 유일한 값을 가지는 속성의 집합
- 특수 속성과 특수 관계
- 관계 집합의 속성 : 두 개체 집합의 관계에서 생성되는 값을 저장하는 속성
- 재귀적 관계 : 한 개체 집합이 자기 자신과 관계 집합을 형성하는 관계
- 약한 개체 집합 : 개체의 존재 유무가 관계를 맺고 있는 개체의 존재에 종속되는 개체 집합
- 강한 개체 집합 : 약한 개체 집합과 연결되는 일반 개체 집합
'{"CODING": undefind}; > DataBase' 카테고리의 다른 글
6. SELECT문(select 처리순서, Null값 처리방법, NVL) (0) | 2021.02.17 |
---|---|
5. INSERT, UPDATE, DELETE, SELECT (0) | 2021.02.16 |
4. SQL 개요 (0) | 2021.02.15 |
3. 데이터베이스 관계형 모델 (0) | 2021.02.14 |
1. 데이터베이스 개요 (0) | 2021.02.10 |