함께하는 데이터 분석

[SQLD] 1과목-데이터 모델링의 이해② 본문

자격증 준비/SQLD

[SQLD] 1과목-데이터 모델링의 이해②

JEONGHEON 2022. 1. 15. 15:52

엔터티의 개념

  명사, 업무상 관리 필요한 관심사, 저장이 되기 위한 어떤 것(Thing)

 

엔터티의 특징

  업무에서 필요하고 관리하고자 하는 정보

  유일한 식별자에 의해 식별이 가능해야 함

  인스턴스 2개 이상의 집합

  업무 프로세스에 의해 이용되어야 함

  반드시 속성이 있어야 함(주식별자만 존재하고 일반속성 없어도 적절하지 않음, 관계 엔터티 예외)

  다른 엔터티와의 관계가 최소 1개 이상 존재(통계성, 코드성, 내부필요 엔터티는 예외)

 

엔터티의 분류

  유무형에 따른 분류

    유형엔터티 : ex)사원, 물품, 강사

    개념엔터티 : ex)조직, 보험상품

    사건엔터티 : ex)주문, 청구, 미납

  발생시점에 따른 분류

    기본엔터티 : ex)사원, 부서, 고객, 상품, 자재

    중심엔터티 : ex)계약, 사고, 예금원장, 청구, 주문

    행위엔터티 : ex)주문목록, 사원변경이력

 

엔터티의 명명

  가능하면 현업 업무에서 사용하는 용어 사용

  가능하면 약어 사용X

  단수명사 사용

  모든 엔터티에서 유일한 이름 부여

  생성 의미대로 자연스럽게 이름 부여

 

속성의 개념

  업무에서 필요로하는 인스턴스에서 관리하고자 하는 의미상 더 이상 분리되지 않는 최소의 데이터 단위

 

속성, 속성값, 엔터티, 인스턴스의 관계

  1개의 엔터티는 2개 이상의 인스턴스 집합이어야 함

  1개의 인스턴스는 2개 이상의 속성을 가짐

  1개의 속성은 1개의 속성값을 가짐

 

속성의 특징

  반드시 해당 업무에서 필요하고 관리하고자 하는 정보

  정규화 이론에 근간, 정해진 주식별자에 함수적 종속성을 가져야 함

  하나의 속성에는 1개의 값만을 가짐, 다중값일 경우 별도의 엔터티 이용하여 분리

 

속성의 분류

  특성에 따른 분류

    기본속성 : 업무로부터 추출한 모든 속성

    설계속성 : 새로 만들거나 정의하는 속성(코드성, 일련번호)

    파생속성 : 다른 속성의 영향 받아 발생(계산된 값)

  구성 방식에 따른 분류

    PK(기본키) / FK(외래키) / 일반속성

 

도메인

  속성이 가질 수 있는 값의 범위

 

속성의 명명

  해당 업무에서 사용하는 이름 부여

  서술식 속성명 사용X

  약어 사용 가급적X

  전체 데이터 모델에서 유일성 확보하는 것이 좋음

 

관계의 정의

  인스턴스 사이의 논리적 연관성

  존재적 관계와 행위에 의한 관계로 나눌 수 있음

 

관계의 표기법

  관계명 : 엔터티가 관계에 참여하는 형태. 각 관계는 2개의 관계명 및 관점을 가짐

  관계차수 : 1:1, 1:M, M:M

  관계선택사항 : 필수관계, 선택관계

 

관계 체크 사항

  두 개의 엔터티 사이에 관심있는 연관규칙이 존재하는가?

  두 개의 엔터티 사이에 정보의 조합이 발생되는가?

  업무기술서, 장표에 관계연결에 대한 규칙이 서술되어 있는가?

  업무기술서, 장표에 관계연결을 가능하게 하는 동사(Verb)가 있는가?

 

식별자 개념

  엔터티를 구분짓는 논리적인 이름

  엔터티를 대표할 수 있는 속성

  엔터티에는 반드시 하나의 유일한 식별자가 존재함

 

식별자 분류

  대표성 여부 : 주식별자 / 보조식별자

  스스로 생성 여부 : 내부식별자 / 외부식별자

  단일 속성으로 식별 여부 : 단일식별자 / 복합식별자

  대체 여부 : 본질식별자 / 인조식별자

 

주식별자의 특징

  유일성 : 주식별자에 의해 엔터티내에 모든 인스턴스 유일하게 구분함

  최소성 : 주식별자를 구성하는 속성의 수는 유일성을 만족하는 최소의 수가 되어야 함

  불변성 : 주식별자가 한 번 특정 엔터티에 지정되면 그 식별자의 값은 변하지 않아야 함

  존재성 : 주식별자가 지정되면 반드시 데이터 값이 존재(Null X)

 

식별자관계

  목적 : 강한 연결관계 표현

  자식 주식별자 영향 : 자식 주식별자의 구성에 포함됨

  표기법 : 실선표현

  연결 고려사항 : 반드시 부모엔터티 종속

                          자식 주식별자 구성에 부모 주식별자 포함 필요

                          상속받은 주식별자 속성을 타 엔터티에 이전 필요

 

비식별자관계

  목적 : 약한 연결관계 표현

  자식 주식별자 영향 : 자식 일반 속성에 포함됨

  표기법 : 점선표현

  연결 고려사항 : 약한 종속관계

                          자식 주식별자 구성을 독립적으로 구성

                          자식 주식별자 구성에 부모 주식별자 부분 필요

                          상속받은 주식별자 속성을 타 엔터티에 차단 필요

                          부모쪽의 관계참여가 선택관계

 

 

 

끝으로 1과목 데이터 모델링의 이해 부분이 끝났습니다!

 

다음 시간에는 1과목 2장 데이터 모델과 성능으로 찾아뵙겠습니다!!