BDA 빅데이터 분석 학회/8기 SQL 문법 기초반

[BDA SQL 문법 기초반 5회차] 데이터 모델링에 대해 알아보자

_jinyj 2024. 5. 3. 23:35

오늘은 중간고사 휴회기간 전 마지막 수업입니다

그래서 당분간은 안 올라올 예정입니다 ..

이번주에는 저번시간에 이어 데이터 모델링에 대해 알아보았습니다!

 


개체와 관계 모델

개체-관계 다이어 그램 = E-R 다이어 그램

E-R 다이어 그램은 이런 식으로 생겼습니다


- 개체

현실 세계에서 조직을 운영하는데 꼭 필요한 사람이나 사물과 같이 구별되는 모든 것

저장할만한 가치가 있는 중요 데이터 (사람이나 사물)

개념이나 사건도 존재하는 개체가 될 수 있음

E-R 개체를 사각형으로 표현 후 개체 이름 표기

속성은 타원으로 표현

개체는 인스턴스의 집합

인스턴스: 속성에 해당하는 실제 값들

앤티티 - 인스턴스의 예

과목: 수학, 영어

강사: 이춘식, 조시형

사건: 2010-001, 2010-002

여기서 앤티티는 과목, 강사, 사건

인스턴스는 수학, 영어, 이춘식, 조시형, 2010-001, 2010-002


-속성

속성 값의 개수에 따라

단일값 속성, 다중값 속성

단일값: 이름, 적립금 등 한 명 고객의 인스턴스에 대해 하나의 값만 가지는 단일 값 속성

다중값 속성: 연락처 기준 집과 휴대폰 연락처 모두 가질 수 있음, 책의 경우 한 권의 책에 저자 여러 명 다중 값

의미의 분해 가능성에 따라

단순 속성, 복합 속성

단순 속성: 더 이상 분해 불가능 (가격, 이름)

복합속성: 우편 번호, 도, 시, 동

기존 속성 값에서 유도

유도속성: 가격*할인율 -> 판매가격 등

  • 널 null - 아직 결정되지 않은 모르는 값 (공백이나 0과는 다름)
  • 키속성 - 각 개체를 구성하는 속성들 중에서 특별하나 역할, 각 개체 인스턴스 식별하는 데 사용 (키를 두 개 이상 만들어서 사용도 가능) ex) 학회원이라면 학회원 번호, 학번과 같이 식별할 수 있는 고유한 값, null 값이 되면 안 됨

-관계

개체와 개체가 맺고 있는 의미있는 연관성

개체-관계 모델의 중요한 요소

개체들 사이의 대응 관계, 매핑 의미

‘아티스트는 앨범을 낸다’ - 앨범 속에는 아티스트와 장르가 맺는 관계를 보여줌 (앨범의 측면에서 앨범ID가 PK, 아티스의 PK와 장르의 PK는 앨범의 FK가 됨)

관계를 여러 개체 사이에서 정의되는 관계 타입

실제 개체 인스턴스 간에 맺어진 실제 관계

E-R 다이어 그램의 마름모 표현

<관계의 유형>

1:1 관계

부모와 자식은 보통 1:1이 안 됨, 남편 - 아내, 지도교수 - 학생 (지도교수가 한 명만 맡을 수 있다는 전제 하에)

일대다 1:n 관계

기업의 부서와 구성원, 마케팅 - 마케팅 구성원

다대다 n:m 관계

고객과 회사

<관계의 참여 특성>

필수 참여

개체의 모든 인스턴스가 관계에 반드시 참여해야 하는 경우, 필수적으로 꼭 다 참여

Ex) 지도교수님은 모든 학생들이 한 명씩 꼭 가지고 있음

선택 참여

회원가입은 했지만 구매를 하지 않아도 회원가입에 대한 회원은 될 수 있다

Ex) 주문 관계에서도 주문을 한 번도 하지 않은 고객군으로 분류 가능

관계의 종속성 - 구별자 or 부분키 (partial key) 강한개체와 약한 개체

존재 여부를 결정하는 개체 - 강한 개체

약한 개체를 구별해주는 속성 - 구별자 or 부분키

Ex) ’임직원 - 부양 - 부양가족’에서 강한개체는 임직원, 약한개체는 부양가족


E-R 다이어 그램 예시


논리적 데이터 모델

데이터 베이스에 있는 데이터들 간의 관계를 표현하는 방법에 다라 다양한 논리적 데이터 모델이 존재함

개체 - 관계 모델은 현실세계 사람들의 머릿속에 그릴 수 있는 개념적인 구조를 모델링

E-R 다이어 그램은 표현된 개념적인 구조를 데이터 베이스에 표현하는 형태를 결정하는 논리적 모델링에서는 데이터 베이스 관리 시스템 종류가 중요함

E-R 다이어 그램에 표현된 개념적 구조를 데이터 베이스에 어떤 형태로 저장할지 논리적 표현 한 것 -> 논리적 데이터 모델

다양한 데이터 모델들: 계층 데이터 모델, 네트워크 모델

이렇게 5주차 끝!

다음 6주차 게시물은 중간고사가 끝나고 한 1달 뒤에 올라갈 것 같네요

그동안 시험 준비 열심히 하고 .. 자격증 공부도 하고... 공부만 잔뜩하게 생겼네요

시험 기간 파이팅입니다 !!