hello! Mingure

[SQLD] 데이터 모델링의 이해 - 개체, 속성, 관계, 식별자 본문

SQLD

[SQLD] 데이터 모델링의 이해 - 개체, 속성, 관계, 식별자

hellomingure 2023. 11. 7. 00:57

개체 (Entity) 와 속성 (Attribute)

개체 (Entity)

  • 현실 개체를 저장할 수 있으며 변별이 가능한 사물을 의미함.
  • 인스턴스의 집합. 

속성 (Attribute)

  • 엔티티 내에서 인스턴스를 설명하고 공통적으로 가지는 특성을 속성이라고 함.
  • 도메인(데이터 유형, 크기, 제약 사항 지정) 내에서만 값을 가질 수 있음.

인스턴스 (Instance)

  • 실제 데이터

속성의 도메인 (Domain)

  • 엔티티에 구성된 속성들은 그들이 가질 수 있는 특정한 값의 범위
  • 도메인 정의 - 데이터의 유형과 크기, 제약 사항 등에 대해 지정하는 것

무/유형의 엔티티

유형 엔티티 (Tangible Entity)

  • 물리적으로 확인되며 안정적으로 지속 활용이 가능한 엔티티

개념 엔티티 (Conceptual Entity)

  • 물리적으로 확인할 수 없지만 업무상 관리가 필요한 개념적 정보를 담은 엔티티

사건 엔티티 (Event Entity)

  • 업무 수행 시 발생되는 이벤트 정보를 담은 엔티티

발생 시점의 엔티티

기본 엔티티 (Basic Entity)

  • 업무에 필수로 존재하는 정보를 포함한 엔티티
  • 다른 엔티티의 관계와 무관하게 독립 생성이 가능
  • 부모 엔티티
  • 주 실별자는 상속받지 않고 고유하게 생성

중심 엔티티 (Main Entity)

  • 기본 엔티티로부터 파생된 업무 중심 정보를 포함한 엔티티
  • 가장 많은 데이트가 생성되고, 다른 엔티티와 관계가 활발하며 많은 행위 엔티티 생성

행위 엔티티 (Active Entity)

  • 두 개 이상의 부모 엔티티에 영향을 받아 생성된 엔티티
  • 데이터가 수시로 변경되고 데이터의 양이 다른 유형에 비해 가장 많이 증가
  • 실무 업무 중심의 내용을 파악할 때 드러남

 

관계 (Relationship)와 식별자 (Key)

RDB(Relationship Database)의 핵심

  • 개체 갠 관계 설정

식별자 (Key)

  • 인스턴스를 유일하게 식별해주는 속성
  • 개체 간의 관계에서 핵심적인 역할
  • 주로 PK (Primary Key) 기본키 라고 부름

식별자의 특성

1. 유일성: 엔티티의 모든 인스턴스는 주 식별자(PK)에 의해 유일하게 구분
2. 최소성: 주 식별자(PK)로 구성된 속성은 유일성을 만족할 수 있는 최소의 수가 됨. 최소 1개
3. 불변성: 엔티티 내에서 주 식별자가 지정되면 주 식별자의 값은 변하지 않는다
4. 존재성: 주 식별자로 지정되면 반드시 값을 가져야 한다.

 

식별관계 (Identifying Relationship)

부모 개체(Entity)에서 상속된 식별자가 자식 개체(Entity)에서 PK로 활용되는 경우
  • 강한 연결관계 (실선)
  • 자식 개체(Entity)에서 주 식별자로 사용
  • 부모 개체(Entity)에 종속적

비식별관계 (Non-Identifying Relationship)

부모 엔티티에서 상속된 속성이 자식 엔티티에서 일반 속성으로만 활용되는 경우
  • 약한 연결관계 (점선)
  • 자식 개체에서 일반 속성으로 사용
  • 보무 개체에 약한 종속관계

표기법 IE vs Barker

구분 IE BARKER
식별관계
실선으로 구분/
선택관계 O
수직 실선 있음/
선택관계 점선
비식별관계

점선으로 구분/
선택관계 O
수직 실선 없음/
선택관계 점선

 

 

'SQLD' 카테고리의 다른 글

[SQLD] 데이터 모델링의 이해 - 데이터 모델링  (0) 2023.11.04