You are on page 1of 7

PART 1 | 데이터베이스

2.4 관계 데이터베이스의 정규화

(1) 정규화 0003

1) 이상 (anomaly) 0509

① 이상의 정의
• 관계 모델에서는 애트리뷰트들 간에 존재하는 여러 종속관계를 하나의 릴
레이션에 표현하기 때문에 릴레이션 조작 시 이상(anomaly)발생
• 데이터의 중복으로 인하여 관계연산을 처리하기 곤란한 현상 0603 0205

|오|답|쪽|지| ② 이상의 종류 9908 0005 0103 0203


이상의 종류 오답
✗검색 이상 • 삽입 이상 : 데이터를 삽입할 때 불필요한 데이터가 함께 삽입되는 현상
✗링크 이상
• 삭제 이상 : 한 튜플을 삭제함으로써 연쇄 삭제 현상으로 인한 정보의 손실
• 갱신 이상 : 튜플에 있는 속성값을 갱신할 때
일부 튜플의 정보만 갱신되어 정보에 모순이 생기는 현상
|오|답|쪽|지| 2) 정규화 개요 0109 0403 0503
정규화 개요 오답
✗데이터베이스의 개념적 설 ① 현실 세계를 정확하게 표현하는 관계 스키마를 설계하는 작업으로 개체, 속
계 단계와 논리적 설계단계
에서 수행 성, 관계성들로 릴레이션을 만드는 과정에 관한 것
✗어떠한 Relation구조가 바람
직한 것인지, 바람직하지 못 ② 정규화 되지 못한 릴레이션의 조작 시 발생하는 이상(anomaly) 현상의 근본
한 Relation을 어떻게 합쳐
야 하는지에 관한 구체적인 적인 원인은 여러 가지 종류의 사실들이 하나의 릴레이션에 표현되기 때문
판단기준을 제공
✗정규화는 데이터베이스의
③ 정규화가 잘못되면 데이터의 불필요한 중복을 야기하여 릴레이션 조작 시 문
물리적 구조나 물리적 처리 제를 일으킴
에 영향을 줌
④ 함수적 종속성 등의 종속성 이론을 이용하여 잘못 설계된 관계형 스키마를
더 작은 속성의 세트로 쪼개어 바람직한 스키마로 만들어 가는 과정
⑤ 좋은 데이터베이스 스키마를 생성해 내고 불필요한 데이터의 중복을 방지하
여 정보 검색을 용이하게 할 수 있도록 허용
⑥ 레코드들의 관련 속성들 간의 종속성을 최소화하기 위한 구성 기법
⑦ 정규화는 논리적 처리 및 품질에 큰 영향을 미침
⑧ 정규형에는 제1정규형, 제2정규형, 제3정규형, BCNF형, 제4정규형, 제5정규
형 등이 있음
|오|답|쪽|지| 3) 정규화의 목적 0303 0503
정규화 목적 오답
✗개체간의 종속성을 가급적 ① 가능하다면 모든 개체간의 관계를 표현하기 위해
피하기 위함
✗릴레이션을 분해하여 연산 ② 정보의 중복을 피하기(최소화) 위해
시간을 감소
③ 정보의 검색을 보다 용이하게 하기 위해
④ 삽입, 삭제, 갱신 이상의 발생을 방지
⑤ 효율적인 데이터를 조작

38
www.gisa79.com

4) 정규화 과정 9910 0403 |오|답|쪽|지|


정규화 과정 오답
✗정규형들은 차수가 높아질
수록(제1정규형→제5정규형)
만족시켜야 할 제약조건이
감소

① 제1정규형 9904

• 어떤 릴레이션에 속한 모든 도메인이 원자값(atomic value)만으로 되어 있


는 릴레이션
② 제2정규형 9904 0109 0605

• 릴레이션 R이 제1정규형을 만족하면서, 키가 아닌 모든 속성이 기본 키에


|오|답|쪽|지|
완전 함수 종속인 릴레이션 제3정규형 오답
✗3NF는 정규형에서 모든 이
③ 제3정규형 0103 0305 9910 0609
행(transitive)종속을 제거하
• 릴레이션 R이 제2정규형(2NF)을 만족하면서, 키가 아닌 모든 속성들이 기 지 못한 경우라도 정보의 중
복에 대한 문제가 존재하지
본 키에 이행적으로 함수 종속되지 않는 릴레이션 9904 0205 0505 않는 장점을 가지고 있음

• 무손실 조인 또는 종속성 보존을 저해하지 않고도 항상 3NF 설계를 얻을


수 있음
④ BCNF 정규형 0603

• 릴레이션의 모든 결정자가 후보키인 릴레이션 0503

• 모든 BCNF(Boyce-Codd Normal Form)가 종속성을 보존하는 것은 아님


• 모든 BCNF 스킴은 3NF에 속하게 되며, 따라서 BCNF가 3NF보다 한정적
제한이 더 많음
⑤ 제4정규형
+
• 종속성들의 집합 F에 대한 F 의 모든 의미 있는 다치 종속성 X ↠ Y에
대해, X가 릴레이션 스키마 R의 슈퍼키이면 R은 F에 대한 제4정규형, 여
기서 F는 함수적 종속성과 다치 종속성을 포함함
⑥ 제5정규형 0003 0106

• 어떤 릴레이션 R에 존재하는 모든 조인 종속성이 릴레이션 R의 후보키를


통해서만 성립

39
PART 1 | 데이터베이스

⑦ 함수적 종속성 0103 0505 0603

• 어떤 릴레이션 R에서 X와 Y를 각각 R의 애트리뷰트 집합의 부분 집합이


라고 할 경우, 애트리뷰트 X의 값 각각에 대하여 시간에 관계없이 항상 애
트리뷰트 Y의 값이 오직 하나만 연관되어 있을 때 Y는 X에 함수 종속이라
함, X → Y 로 표현함
• A → B는 애트리뷰트 A의 값 각각에 대해 애트리뷰트 B의 값이 반드시
하나만 연관된다는 뜻임
⑧ 이행적 함수 종속
• A → B 이고 B → C 일 때 A → C를 만족하는 관계
⑨ 완전 함수적 종속
• 복합 속성 X에 대하여 R.X → R.Y가 성립할 때 X에 포함된 속성 K가 R.k
→ R.Y를 만족하는 K가 존재하지 않는 것
• 만약 위를 만족하는 K가 존재하면 부분 함수 종속 이라함
|오|답|쪽|지| ⑩ 다치 종속 함수적 관계 0010
다치 종속 함수적 관계 오답
✗릴레이션 R의 다치 종속은 • A ↠ B의 의미는 R의 애트리뷰트 A가 애트리뷰트 B의 값의 집합을 결정
함수 종속 A→B의 특별한
한 형태라고 할 수 있음 한다는 것
• 릴레이션 R(A,B,C)에서 종속 A ↠ B 가 성립할 때, 릴레이션 R에서 다치
종속 A ↠ B가 성립하므로 A ↠ C도 성립함
• 릴레이션 R은 언제든지 프로젝션을 통해 R1(A, B)과 R2(A, C)로 무손실
분해할 수 있음

40
www.gisa79.com

|기|출|문|제| 0603

7. 관계 데이터 모델링 중 BCNF(Boyce-Codd


Normal Form)에 대한 옳은 설명으로만 짝지어
0603 진 것은?
1. 데이터의 중복으로 인하여 관계연산을 처리할 때
ㄱ. BCNF에 속하는 릴레이션은 반드시 제3정
곤란한 현상이 발생하는 것을 무엇이라 하는가?
가. 이상(Anomaly) 나. 제한(Restriction) 규형 (Third Normal Form)에 속한다.
다. 종속성(Dependency) 라. 변환(Translation) ㄴ. 제3정규형에 속하지만 BCNF에 속하지 않
는 릴레이션이 있다.
0303
ㄷ. 복합 속성을 허용하지 않는다.
2. 관계 데이터 모델링에서 정규화(Normalization)
를 하는 이유로 거리가 먼 것은? ㄹ. 완전 함수적 종속성 개념에 기반을 두었다.
가. 가능하다면 모든 개체간의 관계를 표현하기 가. ㄱ, ㄴ 나. ㄴ, ㄷ
위해서 다. ㄱ, ㄴ, ㄹ 라. ㄱ, ㄴ, ㄷ, ㄹ
나. 개체간의 종속성을 가급적 피하기 위해서
다. 정보의 중복을 피하기 위해서 0003 0106
라. 정보의 검색을 보다 용이하게 하기 위해서 8. 어떤 릴레이션 R에 존재하는 모든 조인 종속성
이 릴레이션 R의 후보키를 통해서만 성립된다.
0503 이 릴레이션 R은 어떤 정규형의 릴레이션인가?
3. 정규화의 목적으로 거리가 먼 것은? 가. 제 3 정규형 나. 보이스-코드 정규형
가. 삽입, 삭제, 갱신 이상의 발생을 방지한다.
다. 제 4 정규형 라. 제 5 정규형
나. 데이터의 중복성을 최소화 한다.
다. 효율적으로 데이터를 조작할 수 있다.
0103
라. 릴레이션을 분해하여 연산시간을 감소시킨다.
9. 다음과 같이 주어진 두개의 함수적 종속 관계에
서 추론될 수 없는 종속 관계는?
9910 0403
4. 제 3정규형에서 보이스코드 정규형(BCNF)으로 A→{B, C, D, E, F} F→{G, H}
정규화하기 위한 작업은?
가. 원자값이 아닌 도메인을 분해 가. B→F 나. F→G
나. 부분 함수 종속 제거 다. A→A 라. A→{G, H}
다. 이행 함수 종속 제거
라. 결정자가 후보키가 아닌 함수 종속 제거 0010

10. 릴레이션 R(A,B,C)에서 종속 A->>B 가 성립한


9904 다. 이 릴레이션에 대한 설명으로 부적합한 것
5. 어떤 릴레이션에 속한 모든 도메인이 원자값 은?
(atomic value)만으로 되어 있는 릴레이션을 무 가. 릴레이션 R에서 다치 종속 A->>B가 성립하
엇이라고 하는가? 므로 A->>C도 성립한다.
가. 제 1 정규형(1NF) 나. 제 2 정규형(2NF)
나. 릴레이션 R의 다치 종속은 함수 종속 A->B
다. BCNF 라. 제 4 정규형(4NF)
의 특별한 한 형태라고 할 수 있다.
0103 다. A->>B의 의미는 R의 애트리뷰트 A가 애트
6. 관계 데이터베이스의 정규화에 관한 설명으로 옳 리뷰트 B의 값의 집합을 결정한다는 것이다.
지 않은 것은? 라. 릴레이션 R은 언제든지 프로젝션을 통해
가. 3NF는 무손실 조인 또는 종속성 보존을 저해 R1(A, B)과 R2(A, C)로 무손실 분해할 수 있
하지 않고도 항상 3NF 설계를 얻을 수 있다.
다.
나. 3NF는 정규형에서 모든 이행(transitive)종속
을 제거하지 못한 경우라도 정보의 중복에 대
한 문제가 존재하지 않는 장점을 가지고 있
다.
다. 모든 BCNF(Boyce-Codd Normal Form)가
종속성을 보존하는 것은 아니다.
라. 모든 BCNF 스킴은 3NF에 속하게 되며, 따
라서 BCNF가 3NF보다 한정적 제한이 더 많
다.

41
PART 1 | 데이터베이스

2.5 물리적 데이터베이스 설계

(1) 데이터베이스 설계 개념
사용자의 요구를 분석하고 이를 데이터베이스의 구조에 맞게 변형한 후 특정
DBMS로 데이터베이스를 구현하여 일반 사용자들이 사용하게 하는 것

(2) 데이터베이스 설계 과정 9908 0007 0109 0209 0303 0305 0308 0403 0405 0505 0509 0603
0609 0010 0103 0106 0109 0209 0303 0305 0308 0405 0409 0509 0605 0609

|오|답|쪽|지| (3) 개념적 설계 0509 0007 0303 0503


개념적 설계 오답
✗트랜잭션 인터페이스를 설
계 1) 산출물로 ER-다이어그램이 만들어짐

2) DBMS에 독립적인 개념 스키마를 설계 0005

요구분석단계에서 나온 결과(명세)를 E-R 다이어그램과 같은 DBMS에 독립적


이고 고차원적인 표현기법으로 기술하는 것

3) 논리적 설계 단계의 앞 단계에서 수행

4) 트랜잭션 모델링

|오|답|쪽|지| (4) 논리적 설계 0109 0505 0603


논리적 설계 오답
✗목표 DBMS에 독립적인 논
리 스키마 설계 1) DBMS에 따라 서로 다른 논리적 스키마를 정의 0305
✗트랜잭션 모델링
✗저장 레코드 양식 설계 2) 현실 세계를 표현하기 위한 데이터베이스의 논리적 구조, 즉 정규화 과정을 이
용한 릴레이션의 속성을 결정하는 단계

42
www.gisa79.com

3) 논리적 설계 단계에서 수행되는 작업 0303 0609

① 논리적 데이터 모델로 변환


② 트랜잭션 인터페이스 설계
③ 스키마의 평가 및 정제

(5) 물리적 설계 0409 0605

1) 목표 DBMS에 맞는 물리적 구조 설계 9904

① 기본적인 데이터 단위는 저장 레코드


② 데이터베이스 시스템의 성능에 중대한 영향을 미침
③ 여러 가지 타입의 저장 레코드 집합이라는 면에서 단순한 파일과 다름
④ 데이터베이스에 포함될 여러 파일 타입에 대한 저장 레코드의 양식, 순서, 접
근 경로를 표현한 것
|오|답|쪽|지|
2) 물리적 설계 단계에서 수행되는 작업 0503 0609
물리적 설계 단계에서
① 저장레코드 양식 설계 수행되는 작업 오답
✗트랜잭션 인터페이스 설계
② 접근 경로 설계 ✗스키마의 평가 및 정제

③ 레코드 집중의 분석 및 설계
④ 파일의 저장 구조 및 탐색 기법
|오|답|쪽|지|
3) 물리적 설계 단계의 고려사항 0603 9910 0603 물리적 설계 단계의 고려사항
오답
① 어떤 인덱스를 만들 것인지에 대한 고려 ✗개념스키마와 외부스키마
설계
② 성능 향상을 위한 개념 스키마의 변경 여부 검토 ✗수행될 질의와 트랜잭션의
③ 빈번한 질의와 트랜잭션들의 수행속도를 높이기 위한 고려사항 9908 예상 빈도
✗스키마의 모델링 작업과 요
• 응답시간 구되는 트랜잭션 파악

• 저장 공간의 효율화 |오|답|쪽|지|


빈번한 질의와 트랜잭션들의
• 트랜잭션 처리량 수행속도를 높이기 위한
고려사항 오답
④ 레코드의 크기 ✗트랜잭션의 지속성
✗응용프로그램의 양
⑤ 파일과 구조 저장을 위한 최소한의 효율적 공간

(6) 구현 0505

1) 목표 DBMS DDL로 스키마 작성

2) 응용프로그램을 위한 트랜잭션 작성

43
PART 1 | 데이터베이스

|기|출|문|제| 9904

5. 물리적 데이터베이스 구조에 대한 설명으로 잘못


된 것은?
0007 0109 0403 0405 가. 기본적인 데이터 단위는 저장 파일이다.
1. 데이터베이스 설계 시 다음 ( ) 안의 내용으로 나. 데이터베이스 시스템의 성능에 중대한 영향을
옳은 것은?
미친다.
요구 조건 분석 → ( ) → ( ) → ( ) → 데이터베이스 구현 다. 여러 가지 타입의 저장 레코드 집합이라는 면
가. 물리적 설계 → 논리적 설계 → 개념적 설계 에서 단순한 파일과 다르다.
나. 개념적 설계 → 논리적 설계 → 물리적 설계 라. 데이터베이스에 포함될 여러 파일 타입에 대
다. 논리적 설계 → 개념적 설계 → 물리적 설계 한 저장 레코드의 양식, 순서, 접근 경로를 표
라. 논리적 설계 → 물리적 설계 → 개념적 설계 현한 것이다.

0509 0409

2. 데이터베이스 설계과정 중 개념적 설계 단계에 6. 데이터베이스의 물리적 설계 단계에서 수행되는


대한 설명으로 틀린 것은? 작업이 아닌 것은?
가. 산출물로 ER-D가 만들어진다. 가. 저장레코드 양식 설계
나. DBMS에 독립적인 개념 스키마를 설계한다. 나. 접근 경로 설계
다. 트랜잭션 인터페이스를 설계한다. 다. 레코드 집중의 분석 및 설계
라. 논리적 설계 단계의 앞 단계에서 수행된다. 라. 트랜잭션 인터페이스 설계

0505
3. 다음에서 설명하는 데이터베이스 설계 단계는? 0603

- 데이터베이스 관리시스템(DBMS)에 따라 7. 물리적 데이터베이스 설계를 수행할 때 결정할


서로 다른 논리적 스키마를 정의한다. 사항으로 거리가 먼 것은?
가. 어떤 인덱스를 만들 것인지에 대한 고려
- 현실 세계를 표현하기 위한 데이터베이
나. 성능 향상을 위한 개념 스키마의 변경 여부
스의 논리적 구조, 즉 정규화 과정을 이
검토
용한 릴레이션의 속성을 결정하는 단계
다. 빈번한 질의와 트랜잭션들의 수행속도를 높이
이다. 기 위한 고려
가. 요구사항 및 분석단계 라. 개념스키마와 외부스키마 설계
나. 개념적 설계 단계
다. 논리적 설계 단계 0603

라. 물리적 설계 단계 8. 데이터베이스 설계 단계와 그 단계에서 수행되는


결과의 연결이 잘못된 것은?
0609 가. 개념적 설계 단계 - 트랜잭션 모델링
4. 데이터베이스 설계의 논리적 설계 단계에서 수행 나. 논리적 설계 단계 - 목표 DBMS에 독립적인
하는 작업이 아닌 것은? 논리 스키마 설계
가. 논리적 데이터 모델로 변환
다. 물리적 설계 단계 - 목표 DBMS에 맞는 물
나. 트랜잭션 인터페이스 설계
리적 구조 설계
다. 스키마의 평가 및 정제
라. 구현 단계 - 목표 DBMS DDL로 스키마 작
라. 트랜잭션 모델링

44

You might also like