본문 바로가기
자격증들/23) SQLD, SQLP

SQLD 1 - 데이터모델링의 이해

by tonyhan18 2023. 5. 11.
728x90

현실세계를 추상화,단순화,명확화해서 데이터 모델로 만드는 것이 데이터모델링이다.

모델링의 세 가지 관점 - 데이터/프로세스/상관 관점이 있다고 알고 있으면 된다.

 

간단하게 "가명구문다구" 만 외워주면 된다.

 

데이터 모델링을 잘 하지 못 하면 파급효과가 크다.

간결한 표현이며 데이터 품질이 좋아야 한다.

 

개념적 -> 논리적 -> 물리적 모델링 순서로 진행해주어야 한다.

 

데이터 독립성

데이터 내부간의 독립성 유지

 

결국 3단계는

 

외부 - 사용자

개념 - 통합

내부 - 물리

 

고객 - 엔터티

고객(인스턴스) : 홍길동, 이순신 등...

 

프로젝트 개발자는 데이터 모델링은 반드시 알고 있어야 한다.

 

 


1-2 엔터티

엔터티는 인스턴스들의 집합이다.

 

식별자 특정 데이터를 콕 집을 수 있어야 한다.

두 개 이상이라는 집합개념이 있어야 한다.

 

날씨의 속성이 존재하지 않아 엔터티가 될 수 없다.

출판사는 다른 엔터티와 관계가 없기에 엔터티가 될 수 없다.

 

 

 

---

 

1-6 연습문제

문제 1 - 4번

=> 데이터 모델링을 할 때 어떻게 모델링 할지가 중요하지 프로그램 구성은 나중에 해도 된다.

> 모델링의 세 가지 관점

1) 데이터 관점 :업무가 어떤 데이터와 관련이 있는지 또는 데이터간의 관계는 무엇인지 모델링하는 방법

2) 프로세스 관점 : 업무가 실제하고 있는 일은 무엇인지 또는 무엇을 해야하는지 모델링하는 방법

3) 상관 관점 : 업무가 처리하는 일의 방법에 따라 데이터는 어떻게 영향을 받고 있는지 모델링하는 방법

 

문제 2 - 2번

=> TAR 파일 

> 데이터 모델링의 세 가지 요소

- 업무가 관여하는 어떤 것(Things)

- 어떤 것이 가지는 성격(Attributes)

- 업무가 관여하는 어떤 것 간의 관계(Relationships)

 

문제 3 - 3번

=> 발생시점에 따라서는 행위, 중심, 기본이고 / 유무형에서 유형, 개념, 사건으로 나뉜다.

 

 

문제4 - 2

=> 속성들을 묶어서 파생 속성을 만들어 낼 수 있다.

> 속성의 분류

1) 특성에 따른 분류

- 속성은 업무분석을 통해 바로 정의한 속성을 기본속성(Basic Attribute)

- 원래 업무상 존재하지는 않지만 설계를 하면서 도출해내는 속성을 설계속성(Designed Attribute)

- 다른 속성으로부터 계산이나 변형이 되어 생성되는 속성을 파생속성(Derived Attribute)이라고 한다

 

2) 엔터티 구성방식에 따른 분류

- 엔터티를 식별할 수 있는 속성을 PK(Primary Key)속성,

- 다른 엔터티와의 관계에서 포함된 속성을 FK(Foreign Key)속성,

- 엔터티에 포함되어 있고 PK, FK 에 포함되지 않은 속성을 일반속성이라 한다.

 

문제 5 - 4

=> 반드시 속성이 있어야 한다.

> 엔터티의 개념

- 엔터티는 사람, 장소, 물건, 사건, 개념 등의 명사에 해당한다. 

- 엔터티는 업무상 관리가 필요한 관심사에 해당한다. 

- 엔터티는 저장이 되기 위한 어떤 것(Thing)이다.

 

> 엔터티와 인스턴스

 

> 엔터티 특징

- 반드시 해당 업무에서 필요하고 관리하고자 하는 정보이어야 한다.(예. 환자, 토익의 응시횟수, …)

- 유일한 식별자에 의해 식별이 가능해야 한다.

- 영속적으로 존재하는 인스턴스의 집합 이어야 한다.(‘한개’가 아니라 ‘두 개 이상’)

- 엔터티는 업무 프로세스에 의해 이용되어야 한다.

- 엔터티는 반드시 속성이 있어야 한다.

- 엔터티는 다른 엔터티와 최소 한 개 이상의 관계가 있어야 한다.

 

문제 6 - 1

> 도메인

- 각 속성은 가질 수 있는 값의 범위가 있는데 이를 그 속성의 도메인(Domain)이라 한다

- 학생이라는 엔터티가 있을 때 학점이라는 속성의 도메인은 0.0 에서 4.0 사이의 실수 값이며 주소라는 속성은 길이가 20 자리 이내인 문자열로 정의

- 각 속성은 도메인 이외의 값을 갖지 못한다

 

용어사전

속성사전

시스템카탈로그

문제7 - 2

=> 관계차수는 관계의 기수성을 나타내는데 1:1 / 1:M / M:M 관계가 있다.

 

문제 8 - 4

=> 명사가 아닌 동사이다.

문제 9 - 3

=> ???

 

문제 10 - 3

고객 엔터티의 식별자는 고객번호이고 고객은 주문한다.

주문에서 고객번호가 주 식별자로 사용하지 않고 주문번호 하나를 딴 다음에 식별자로 이용해서 고객번호는 FK로서 존재한다. 부모 엔터티의 식별자가 자식엔터티의 일반적인 속성으로 사용된다.

728x90