ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [데이터 모델링의 이해] 엔티티 Entity
    SQL/SQLD 2024. 12. 12. 15:34

     

    엔티티 Entity

    • 현실 세계에서 독립적으로 식별 가능한 객체나 사물
    • 모델링할 때 데이터베이스에서 관리할 필요가 있는 대상을 의미
    • 엔티티는 인스턴스(실제 데이터 레코드), 속성(엔티티의 특징), 식별자 등을 포함
    e.g. 학교 시스템을 구축한다고 하자. 이때 엔티티는 [학생] 속성은 [학번] [이름] [학과] 등이 올 수 있고, 식별자로는 [학번]을 예시로 들 수 있다. 이때 인스턴스는 특정 학생의 데이터 [학번: 2022001234]를 가리킨다.

     

     

    엔티티의 자격

    • 2개 이상의 속성 2개 이상의 인스턴스를 가져 소위 면적으로 표현될 수 있어야 비로소 기본적인 엔티티의 자격을 가짐

     


    엔티티의 특징

    1. 업무에 필요하고 관리 가치가 있어야 함
    2. 유일한 식별자에 의해 식별이 가능해야 함
    3. 영속적으로 존재하는 인스턴스의 집합이어야 함 (2개 이상의 인스턴스)
    4. 반드시 속성을 가져야 함
    5. 업무 프로세스에 의해 이용되어야 함
    6. 다른 엔터티와 최소 1개 이상의 관계가 성립해야 함
      ( 단, 통계성 엔터티나, 코드성 엔터티의 경우 관계를 생략할 수 있음 )

     

    엔티티의 분류

    ⎮ 유・무형에 따른 분류  

    1. 유형 엔티티 Tangible Entity
      - 물리적 형태가 있음
      - 지속적으로 사용됨
      - 업무에서 도출
      e.g. 사원, 강사, 물품 등

    2. 개념 엔티티 Conceptual Entity
      - 물리적 형태가 없음
      - 개념적 정보로 사용됨
      e.g. 조직, 보험 상품 등

    3. 사건 엔티티 Event Entity
      - 업무 수행에 따라 발생되는 엔티티
      - 발생량이 많음
      - 각종 통계 자료에 이용
      e.g. 주문, 청구, 미납 등

    발생 시점에 따른 분류  

    1. 기본 엔티티 Fundamental Entity
      - 그 업무에 원래 존재하는 정보. 다른 엔티티와의 관계로 생성되지 않고 독립적으로 생성
      - 타 엔티티의 부모 역할을 함. 다른 엔티티로부터 주식별자 상속받지 않음
      - 자신의 고유한 주식별자 가짐
      e.g. 사원, 부서, 고객, 상품, 자재 등

    2. 중심 엔티티 Main Entity
      - 기본 엔티티로부터 발생됨. 업무의 중심적인 역할을 함
      - 데이터 양이 많고 엔티티와의 관계를 통해 많은 행위 엔티티 생성
      e.g. 계약, 사고, 예금원장 등

    3. 행위 엔티티 Active Entity
      - 2개 이상의 부모 엔티티로부터 발생. 자주 내용이 바뀌거나 데이터양 증가
      - 분석 초기 단계에서는 잘 안 나타남. 상세 설계 단계나 프로세스와 상관 모델링 진행 시 도출될 수 있음
      e.g.  주문목록, 사원변경, 이력 등

     

    엔티티에 이름을 부여하는 방법 (명명 기준)

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

     

     

    댓글

Designed by Tistory.