도메인(Domain)
속성이 가질 수 있는 값의 범위
관계(Relationship)
- 엔터티 간의 관련성 의미, 존재와 행위 관계로 분류
- 존재관계 : 두 개의 엔터티가 존재 여부의 관계가 있는 것 (엔터티 간의 상태)
- 행위관계 : 두 개의 엔터티가 어떤 행위에 의한 관련성이 있는 것
▶ 표기법
- 관계명(Membership) : 관계의 이름, 명확한 문장, 현재형
- 관계차수(Cardinality) : 관계에 참여하는 수 (1:1, 1:M, M:N)
- 관계선택사양(Optionality) : 필수인지 선택인지의 여부 (필수적, 선택적 관계)
식별자(Identifiers)
엔터티를 대표할 수 있는 유일성을 만족하는 속성
▶ 주식별자 (PK: Primary Key)
하나의 속성이 주식별자가 될 수도 있고, 여러 개의 속성이 주식별자가 될 수도 있음
- 유일성(대표성) : 각 인스턴스에 유니크함을 부여하여 식별이 가능하도록 해야 함
- 최소성 : 유일성을 보장하는 최소 개수의 속성이어야 함
- 존재성 : 속성값이 NULL일 수 없음
- 불변성 : 속성값이 되도록 변하지 않아야 함
▶ 식별자의 분류
- 대표성 여부
- 주 식별자(Primary Identifier)
- 유일성, 최소성, 불변성, 존재성을 가진 대표 식별자
- 다른 엔터티와 참조 관계로 연결
- 보조 식별자(Alternate Identifier)
- 인스턴스를 식별할 수 있지만, 대표 식별자가 아님
- 다른 엔터티와 참조 관계로 연결되지 않음
- 주 식별자(Primary Identifier)
- 생성 여부
- 내부 식별자(Internal Identifier)
- 엔터티 내부에서 스스로 생성됨
- 외부 식별자(Foreign Identifier)
- 다른 엔터티에서 온 식별자 (다른 엔터티와 연결고리 역할)
- 내부 식별자(Internal Identifier)
- 단일 속성 여부
- 단일 식별자(Single Identifier)
- 하나의 속성으로 구성
- 복합 식별자(Composite Identifier)
- 두 개 이상의 속성으로 구성
- 단일 식별자(Single Identifier)
- 대체 여부
- 원조 식별자(Original Identifier)
- 업무 프로세스에 존재, 가공되지 않은 원래의 식별자 (본질 식별자)
- 대리 식별자(Surrogate Identifer)
- 주 식별자의 속성이 두 개 이상인 경우 그 속성들을 하나로 묶어 사용 (인조 식별자)
- 원조 식별자(Original Identifier)
▶ 키 종류
▶ 식별자 관계(Identification Relationship) - 실선
- 부모 엔터티의 식별자가 자식 엔터티의 주식별자가 되는 관계 (강한 연결관계)
- 주식별자는 반드시 존재해야 하므로 부모 엔터티가 있어야 생성 가능 (부모에 종속)
- NULL 없음, 단일식별자(1:1), 복합식별자(1:M)
- 문제점 : 자신의 주식별자 속성이 지속적으로 증가할 수 있음 (복잡, 오류가능성)
▶ 비식별자 관계(Non-Identification Relationship) - 점선
- 부모 엔터티의 식별자가 자식 엔터티의 주식별자가 아닌 일반 속성이 되는 관계 (약한 연결관계)
- NULL 존재
- 문제점 : 부모까지 조인하여 불필요 현상 발생 (SQL 구문이 길어져 성능 저하)
'분석가 Step 0. 자격증 > SQLD' 카테고리의 다른 글
[1장] 반정규화, 대량 데이터에 따른 성능 (0) | 2023.03.22 |
---|---|
[1장] 데이터 모델, 정규화, 반정규화 (0) | 2023.03.20 |
[1장] 데이터 모델링의 이해 3절 (0) | 2023.03.17 |
[1장] 데이터 모델링의 이해 2절 (0) | 2023.03.17 |
[1장] 데이터 모델링의 이해 1절 (0) | 2023.03.17 |