카디널리티
카디널리티는 두 entity type 사이 관계에서 한 종류의 entity가 다른 종류의 entity 몇 개에 대해서 관계를 맺을 수 있는지를 나타내는 개념이다.
1:1 일대일
1:N 일대다
M:N 다대다
이렇게 3가지 관계가 있다.
1:1 관계
일대일 관계는 A entity 하나가 B entity 하나에만 연결될 수 있고,
마찬가지로 B entity 하나도 A entity 하나에만 연결될 수 있는 관계를 의미 한다.
1:1 관계의 예는 법적 부부 관계, 시민과 주민등록증 관계가 있다.
1:N 관계
일대다 관계는 A entity 하나가 B entity 여러 개에 연결될 수 있고,
반대로 B entity는 A entity 하나에만 연결될 수 있는 관계를 의미한다.
1:N 관계로는 쇼핑몰 사이트에서 유저와 평가의 관계, 선생님과 수업의 관계가 있다.
M:N 관계
다대다 관계는 A entity 하나가 B entity 여러 개에 연결될 수 있고,
마찬가지로 B entity 하나도 A entity 여러 개에 연결될 수 있는 관계를 의미한다.
M:N 관계로 대표적으로는 유저와 상품 사이 찜하기 관계, 학생과 수업의 수강 관계가 있다.
최소 카디널리티
1:1, 1:N, M:N 관계는 각각 한 entity가 다른 entity에 대해서 최대 몇 개가 연결될 수 있는지를 표현한 것이다.
하지만, 특정 관계에서 각 entity가 하나도 없어도 되는지, 아니면 최소한 하나가 있어야 하는지를 나타내는 최소 카디널리티도 체크해야한다.
예를 들어 유저와 리뷰 entity가 있을 때,
유저가 아무 리뷰를 남기지 않았으면, 한 유저에 대해서 하나의 리뷰도 없어도 된다.
반면, 리뷰의 존재에는 꼭 하나라도 유저가 있어야만 한다.
이러한 내용이 최소 카디널리티다.
카디널리티 ERM에서 표현하기
ERM의 장점 중 하나는 entity들 사이의 카디널리티를 표현할 수 있다는 점이다.
1:N (일대다) 관계에서 "일"에 해당하는 entity 쪽에는 1의 의미로 수직선을 사용해서 표현하고,
"다"에 해당하는 entity 쪽에는 여러 개라는 의미로 선 세 개를 사용해서 표현한다.
각각 1:1, 1:N, M:N 관계를 이렇게 표현할 수 있다.
최소 카디널리티는 최대 카디널리티보다 선 안 쪽에 표시한다.
한 관계에서 한 개도 없어도 되는 Entity면, 0을 의미하는 동그라미를,
적어도 한 개가 꼭 있어야만 하는 Entity면 1을 의미하는 수직선을 사용한다.
'IT > 데이터 이론, 분석, 시각화' 카테고리의 다른 글
[QuickSight] 1. 쿼리문으로 데이터세트 생성하기 (0) | 2022.05.27 |
---|---|
[AWS] 데이터 아키텍처 (RDS, S3, GLUE, ATHENA, REDSHIFT) (0) | 2022.03.08 |
정규화 (1NF, 2NF, 3NF) / 비정규화 (0) | 2022.02.05 |
데이터 모델 종류 (릴레이셔널 모델, ERM) (0) | 2022.02.04 |
[태블로 Tableau Public] 데이터 대시보드 만들기 (0) | 2021.10.22 |
댓글