이야기박스
정보처리기사 - 2과목 데이터베이스 본문
§ 데이터베이스
- 정의
: 업무를 수행하는 데 필요한 상호 관련된 데이터들의 모임
- 특징
a. 실시간 접근성
b. 계속적인 진화
c. 동시 공유
d. 내용에 의한 참조
e. 데이터의 논리적, 물리적 독립성
- 언어
a. DDL ; Data Definition Language
b. DML ; Data Manipulation Language
c. DCL ; Data Control Language
- 사용자
a. DBA ; DataBase Administrator
: 데이터베이스 관리자
b. 데이터 관리자
c. 데이터 설계자
d. 응용 프로그래머
e. 일반 사용자
§ 키의 개념 및 종류
- 키 : 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 기준이 되는 속성
- 슈퍼키 : 유일성 만족, 최소성 불만족
- 후보키 : 유일성 만족, 최소성 만족
--> 튜플을 유일하게 식별하기 위해 사용되는 속성들의 부분집합
- 기본키 : 후보키 중에서 특별히 선정된 키, 후보키의 특성을 갖음
- 대체키 : 기본키를 제외한 후보키들
- 외래키 : 다른 릴레이션의 기본키를 참조하는 속성 또는 속성들의 집합
§ 무결성
: 데이터베이스에 저장된 데이터 값과 그것이 표현하는 현실 세계의 실제 값이 일치하는 정확성
- NULL 무결성 : 특정 속성 값이 NULL이 될 수 없도록 하는 규정
- 고유 무결성 : 특정 속성에 대해 각 튜플이 갖는 속성 값들이 서로 달라야 한다는 규정
- 도메인 무결성 : 특정 속성의 값이 그 속성이 정의된 도메인에 속한 값이어야 한다는 규정
- 키 무결성 : 하나의 릴레이션에는 적어도 하나의 키가 존재해야 한다는 규정
- 관계 무결성 : 한 튜플의 삽입 가능 여부 또는 한 릴레이션과 다른 릴레이션 튜플들 사이의 관계에 대한 적절성 여부를 지정한 규정
- 참조 무결성 : 외래키 값은 NULL 또는 참조 릴레이션의 기본키
- 개체 무결성 : 기본키를 구성하는 어떤 속성도 NULL일 수 없다는 규정
§ 이상 (Anomaly)
: 종속으로 인해 데이터의 중복이 발생 --> 테이블 조작 시 문제 발생
- 삽입 이상 (Insertion Anomaly)
: 데이터 삽입할 때, 의도와는 상관없이 원하지 않은 값들로 인해 삽입할 수 없게 되는 현상
- 삭제 이상 (Deletion Anomaly)
: 튜플을 삭제할 때, 의도와는 상관없는 값들도 함께 삭제됨 --> 연쇄 삭제
- 갱신 이상 (Update Anomaly)
: 튜플에 있는 속성 값을 갱신할 때, 일부 튜플의 정보만 갱신되어 정보에 불일치성이 생기는 현상
§ 함수적 종속
: 어떤 테이블 R 속성의 부분 집합 X, Y
--> 속성 X의 값 각각에 대해 시간에 상관없이 항상 속성 Y의 값 오직 하나만 연관되어 있을 때
--> Y는 X에 함수적 종속 or X가 Y를 함수적으로 결정한다
--> 기호 : X->Y
--> X : 결정자 / Y : 종속자
- 완전 함수적 종속
: Y가 X에 함수적 종속인 경우
--> Y가 X의 어떠한 부분집합에도 함수적 종속이 아닌 경우
--> (X에 의해서만 함수적 종속이 발생할 때)
: 어떤 속성이 기본키에 대해 완전히 종속적일 때
- 부분 함수적 종속
: 완전 함수적 종속이 아닌 경우
§ 정규화 (Normalization)
: 테이블의 상호 종속적인 관계 특성을 이용
--> 테이블을 무손실 분해하는 과정
( * 무손실 분해 : 테이블 R의 프로젝션인 R1, R2가 NATURAL JOIN으로 원래의 R로 복귀되는 경우 )
- 제 1정규형
: 테이블 R에 속한 모든 속성의 도메인이 원자 값만으로 되어 있는 정규형
--> 테이블의 모든 속성 값이 원자값
- 제 2정규형
: 테이블이 제 1정규형, 기본키가 아닌 모든 속성이 기본키에 대하여 완전 함수적 종속을 만족하는 정규형
- 제 3정규형
: 테이블이 제 2정규형, 모든 속성이 기본키에 대해 이행적 함수적 종속을 만족하지 않는 정규형
( * 이행적 함수적 종속 : A->B , B->C 일 때 A->C를 만족하는 관계 )
- BCNF
: 테이블에서 모든 결정자가 후보키인 정규형
- 제 4정규형
: 테이블에 다중 값 종속 A->->B가 존재할 경우
--> 테이블의 모든 속성이 A에 함수적 종속 관계를 만족하는 정규형
- 제 5정규형
: 테이블의 모든 조인 종속이 후보키를 통해서만 성립되는 정규형
- 역 정규화 (Denormalization)
: 정규화로 인해 분해된 릴레이션에서 원하는 정보를 얻기 위해 다시 연결
--> 응답 속도가 떨어지므로 정규화에 위배되지만, 성능 향상을 위해 다시 테이블을 합침
- 과정
비정규 릴레이션 --> ( 도메인 원자값 )
1NF --> ( 부분적 함수 종속 제거 )
2NF --> ( 이행적 함수 종속 제거 )
3NF --> ( 결정자이면서 후보 키가 아닌 것 제거 )
BCNF --> ( 다치 종속 제거 )
4NF --> ( 조인 속성 이용 )
5NF
==> 외울 때; 두부이겨다줘 ~ 도부이결다조
'Other Fields > 정보처리기사' 카테고리의 다른 글
정보처리기사 - 1과목 객체지향, 설계 정리 (0) | 2017.10.13 |
---|---|
정보처리기사 - 4과목 신기술 4 (0) | 2017.10.12 |
정보처리기사 - 4과목 신기술 3 (0) | 2017.10.12 |
정보처리기사 - 4과목 신기술 2 (0) | 2017.10.10 |
정보처리기사 - 4과목 신기술 1 (0) | 2017.10.10 |