[SQLD]엔터티,인스턴스,속성

Libra·2022년 7월 7일
1

📌1.엔터티(Entity)

1-1.엔터티(Entity)란?

엔터티실체, 객체라고 할 수 있다.
엔터티사람, 사물, 장소와 같이 여러 특징(속성)을 가진 집합체를 의미한다.
즉, 업무에 필요하고 유용한 정보를 저장,관리하기 위한 것이다.

예)학생이라는 엔터티는 학번,이름,전공과 같은 속성을 가진다.

엔터티의 정의는 다음과 같다.

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

1-2.엔터티 특징

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

1-3.엔터티 분류

  • "실체유형(유무형)"에 따른 분류

1. 유형 엔터티(Tangible Entity)

  • 물리적인 형태가 존재하며 안정적이고 지속적으로 활용되는 엔터티이다.
    (업무로부터 엔터티를 구분하기가 가장 용이하다)

2. 개념 엔터티(Conceptual Entity)

  • 물리적인 형태는 존재하지 않고 관리해야 할 개념적인 정보로 구분이 되는 엔터티이다.

3. 사건 엔터티(Event Entity)

  • 업무를 수행함에 따라 발생되는 엔터티이다.
    (비교적 발생량이 많으며 각종 통계 자료에 이용될 수 있다.)
  • "발생시점"에 따른 분류

1. 기본/키 엔터티(Fundamental/Key Entity)

  • 해당 업무에 원래 존재하는 정보로 다른 엔터티와의 관계에 의해 발생 또는 생성되지 않고
    독립적으로 존재하는 엔터티이다.
  • 독립적으로 생성이 가능
  • 다른 엔터티의 부모역할을 한다.
  • 다른 엔터디로부터 주식별자를 상속받지 않고 자신의 고유한 주식별자를 가진다.

2. 중심 엔터티(Main Entity)

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

3. 행위 엔터티(Active Entity)

- 두 개이상의 부모엔터티로 부터 주로 발생된다

  • 자주 엔터티의 내용이 바뀌거나 데이터양이 증감한다.
  • 분석초기 단계보다는 상세 설계단계나 프로세스와 상관모델링을 진행하면서 도출될 수 있다.

1-4.엔터티 이름 부여(명명) 방법

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




📌2.인스턴스(Instance)

2-1.인스턴스란?

인스턴스는 데이터베이스에 저장된 데이터 내용의 전체 집합을 의미한다.





📌3.속성(Attribute)

3-1.속성이란?

사전적 의미
사물의 성질,특징 또는 본질적인 성질이다.

데이터 모델링관점
더 이상 분리되지 않는 최소의 데이터 단위이다.


3-2.속성의 특징

  • 해당 업무에서 필요하고 관리하고자 하는 정보이어야 한다.
  • 주 식별자에 함수적 종속성을 가져야 한다.(주식별자를 통해서 식별될 수 있어야 한다.)
  • 하나의 속성에는 단 한개의 값만을 가진다

3-3.속성의 분류

  • 속성의 특성에 따른 분류

    • 기본 속성(Basic Attribute)
      - 업무 분석을 통해 바로 정의한 속성
      - 가장 일반적이고 많은 속성을 차지

    • 설계 속성(Designed Attribute)
      - 업무를 규칙화하기 위해 새로 만들어지거나 변형된 속성
      - 일련번호와 같은 속성
      - 단일한 식별자를 부여하기 위해 새롭게 정의하는 속성

    • 파생 속성(Derived Attribute)
      - 다른 속성에 영향을 받아 발생한다
      - 일반적으로 계산된 값들이 이에 해당한다.
      - 가급적 적게 정의한다.

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

    • PK(Primary Key) 속성
      - 엔터티를 유일하게 구분할 수 있는 속성
    • FK(Foreign Key) 속성
      - 다른 엔터티와의 관계에 있어서 포함된 속성
    • 일반 속성
      - PK,FK에 포함되지 않는 속성

3-4.도메인(Domain)

속성이 가질 수 있는 범위(원자값)을 그 속성의 도메인 이라고 한다.
속성값이 가질 수 있는 데이터 타입과 크기 등 제약사항 이라고 보면 된다.


3-5.속성의 이름 부여(명명) 방법

엔터티 명명 방법과 유사하다.

  • 해당 업무에서 사용하는 이름 부여
  • 약어 사용 지양
  • 전체 데이터 모델에서 유일성 확보
  • 서술식 속성명은 사용하지 않는다




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

  • 한 개의 엔터티는 두개 이상의 인스턴스의 집합이다.
  • 한 개의 엔터티는 두 개 이상의 속성을 갖는다.
  • 한 개의 속성은 한 개의 속성값을 가진다





📝5.실제 테이블에서...

  • 엔터티 -> 테이블
  • 속성 -> 열(colum)
  • 인스턴스 -> 행(row)
  • 관계 -> 테이블간의 관계
  • 식별자 -> KEY

출처: https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=ssuya0328&logNo=221204880484


참조한 블로그
https://doorbw.tistory.com/227
https://brunch.co.kr/@ambler/55
https://antkdi.github.io/posts/post-license-sqld-attribute/

0개의 댓글