본문 바로가기

데이터 사이언스/SQL

[SQLD 학습 자료 요약] 데이터 모델링의 이해 1.2. 엔터티

본 문서의 내용은 한국데이터산업진흥원에서 펴낸 SQL 전문가 가이드를 기반으로 자격증 취득에 도움이 될 개념을 정리한 것입니다.

SQL 전문가 가이드
국내도서
저자 : 한국데이터산업진흥원
출판 : 한국데이터산업진흥원 2020.05.29
상세보기

 

2. 엔터티

1. 엔터티의 개념

  • 변별할 수 있는 사물 - Peter Chen
  • 데이터베이스 내에서 변별 가능한 객체 - C.J Date
  • 정보를 저장할 수 있는 어떤 것 - James Martin
  • 정보가 저장될 수 있는 사람, 장소, 물건, 사건 그리고 개념 등 - Thomas Bruce

 

엔터티 정의의 공통점

  • 엔터티는 사람, 장소, 물건, 사건, 개념 등의 명사에 해당한다.
  • 엔터티는 업무상 관리가 필요한 관심사에 해당한다.
  • 엔터티는 저장이 되기 위한 어떤 것(Thing)이다.

 

업무에 필요하고 유용한 정보를 저장하고 관리하기 위한 집합적인 것 (Thing)

 


2. 엔터티와 인스턴스에 대한 내용과 표기법

대부분 사각형으로 표현된다.

엔터티와 인스턴스 예시 (출처: SQL 전문가 가이드)

 


3. 엔터티의 특징

  • 반드시 해당 업무에서 필요하고 관리하고자 하는 정보여야 한다.
  • 유일한 식별자에 의해 식별이 가능해야 한다.
  • 영속적으로 존재하는 인스턴스의 집합이어야 한다. ('두 개 이상')
  • 엔터티는 업무 프로세스에 의해 이용되어야 한다.
  • 엔터티는 반드시 속성이 있어야 한다.
  • 엔터티는 다른 엔터티와 최소 한 개 이상의 관계가 있어야 한다.

 

가. 업무에서 필요로 하는 정보

시스템 구축 대상인 해당 업무에서 그 엔터티를 필요로 하는가를 판단하는 것이 중요하다.

 

나. 식별이 가능해야 함

엔터티를 도출하는 경우에 각각의 업무적으로 의미를 가지는 인스턴스가 식별자에 의해 한 개씩만 존재하는지 검증해 보아야 한다.

 

다. 인스턴스의 집합

인스턴스가 한 개 밖에 없는 엔터티는 집합이 아니므로 엔터티 성립이 안된다.

 

라. 업무 프로세스에 의해 이용

고립된 엔터티의 경우는 엔터티를 제거하거나 아니면 누락된 프로세스가 존재하는지 살펴보고 해당 프로세스를 추가해야 한다.

 

마. 속성을 포함

주식별자만 존재하고 일반 속성은 전혀 없는 경우도 적절한 엔터티라고 할 수 없다. 단, 예외적으로 관계 엔터티의 경우는 주식별자 속성만 가지고 있어도 엔터티로 인정한다.

 

바. 관계의 존재

엔터티가 도출되었다는 것은 해당 업무 내에서 업무적인 연관성을 가지고 다른 엔터티와의 연관성이 있음을 나타낸다. 그러나 관계가 설정되지 않은 엔터티는 부적절한 엔터티가 도출되었거나 아니면 다른 엔터티와 적절한 관계를 찾지 못했을 가능성이 크다.

 

관계를 생략하여 표현하는 경우

  1. 통계성 엔터티
  2. 코드성 엔터티
  3. 시스템 처리시 내부 필요에 의한 엔터티 (예: 트랜잭션 로그 테이블)

 


4. 엔터티 분류

가. 유무형에 따른 분류

  1. 유형 엔터티

    물리적인 형태가 있고 안정적이며 지속적으로 활용되는 엔터티

  2. 개념 엔터티

    물리적 형태 X, 관리해야 할 개념적 정보로 구분되는 엔터티

  3. 사건 엔터티

    업무 수행에 따라 발생되는 엔터티로 비교적 발생량이 많으며 각종 통계에 이용될 수 있음

 

나. 발생시점에 따른 분류

  1. 기본/키 엔터티

    관계에 의해 생성되지 않고 독립적으로 생성이 가능하고, 타 엔터티의 부모 역할을 한다. 자신의 고유한 주식별자를 가지게 된다.

  2. 중심 엔터티

    기본 엔터티로부터 발생되고 업무에서 중심적인 역할을 한다. 데이터의 양이 많으며, 다른 엔터티와의 관계를 통해 많은 행위 엔터티를 생성한다.

  3. 행위 엔터티

    두 개 이상의 부모 엔터티로부터 발생되고, 자주 내용이 바뀌거나 데이터량이 증가된다. 상세 설계 단계나 프로세스와 상관모델링을 진행하면서 도출될 수 있다.

 

다. 엔터티 분류 방법의 예

각 분류 방법에 따른 엔터티 분류 (출처: SQL 전문가 가이드)

이 밖에도 엔터티가 스스로 생성될 수 있는지 여부에 따라 독립 엔터티 vs. 의존 엔터티로 구분할 수 있다.

 


5. 엔터티의 명명

  1. 가능하면 현업에서 사용하는 용어를 사용한다.
  2. 가능하면 약어를 사용하지 않는다.
  3. 단수명사를 사용한다.
  4. 모든 엔터티에서 유일하게 이름이 부여되어야 한다.
  5. 엔터티 생성 의미대로 이름을 부여한다.

 


↓SQL 전문가 가이드 요약 목록

더보기

 

따로 PDF 파일이 필요하신 분은 댓글을 통해 메일 주소 적어주시기 바랍니다.