728x90
1. 속성
1.1. 속성의 의미
- 속성이라는 것은 업무에서 필요한 정보인 엔터티가 가지는 항목이다.
- 속성은 더 이상 분리되지 않는 단위로, 업무에 필요한 데이터를 저장할 수 있다.
- 인스턴스의 구성요소이고 의미적으로 더 이상 분해되지 않는다.
1.2. 속성의 특징
- 속성은 업무에서 관리되는 정보이다.
- 속성은 일반적으로 하나의 값만 가진다.
- 주식별자에게 함수적으로 종속된다. 즉 기본키가 변경되면 속성의 값도 변경된다는 것이다.
1.3. 속성의 종류
분해 여부에 따른 속성의 종류
- 단일 속성 : 하나의 의미로 구성된 것으로 회원 ID, 이름 등이다.
- 복합 속성 : 여러 개의 의미가 있는 것으로 대표적으로 주소가 있다.
주소는 시, 군, 동 등으로 분해될 수 있다.
- 다중값 속성 : 속성에 여러 개의 값을 가질 수 있는 것으로 예를 들면 상품 리스트가 있다.
다중값 속성은 엔터티로 분해된다.
특성에 따른 속성의 종류
- 기본 속성 : 비즈니스 프로세스에서 도출되는 본래의 속성이다.
ex) 회원ID, 이름, 계좌번호, 주문 일자 등
- 설계 속성 : 데이터 모델링 과정에서 발생되는 속성이다.
유일한 값을 부여한다.
ex) 상품 코드, 지점 코드 등
- 파생 속성 : 다른 속성에 의해서 만들어지는 속성이다.
ex) 합계, 평균 등
* 도메인(Domain)
: 도메인은 속성이 가질 수 있는 값의 범위이다.
ex) 성별이라는 속성의 도메인은 남자와 여자이다.
2. 관계
2.1. 관계의 의미
- 관계는 엔터티 간의 관련성을 의미하며 존재 관계와 행위 관계로 분류된다.
- 존재 관계는 두 개의 엔터티가 존재 여부의 관계가 있는 것이고,
행위 관계는 두 개의 엔터티가 어떤 행위에 의한 관련성이 있는 것이다.
2.2. 관계의 종류
1. 존재 관계
: 존재 관계는 엔터티 간의 상태를 의미한다.
2. 행위 관계
: 행위 관계는 엔터티 간에 어떤 행위가 있는 것으로, 계좌를 사용해서 주문을 발주하는 관계가 만들어진다.
2.3. 관계 차수
- 관계 차수는 두개의 엔터티 간에 관계를 참여하는 수를 의미한다.
- 예를 들어 한 명의 고객은 여러 개의 계좌를 개설할 수 있다. 이러한 경우는 1대N 관계가 된다.
관계 차수의 종류
- 1대1 관계 : 1대1 관계는 완전 1대 1관계와 선택 1대1 관계가 있다.
완전 1대 1 : 하나의 엔터티에 관계되는 엔터티의 관계가 하나인 경우로, 반드시 존재한다.
선택적 1대 1 : 하나의 엔터티에 관계되는 엔터티의 관계가 하나이거나 없을 수도 있다.
- 1대 N 관계 : 1 대 N 관계는 엔터티에 행이 하나 있을 때 다른 엔터티의 값이 여러개 있는 관계이다.
예를 들어 고객은 여러 개의 계좌를 가질 수 있다.
- M대 N 관계 : M대 N 관계는 두 개 엔터티가 서로 여러개의 관계를 가지고 있는 것이다.
예를 들어 한명의 학생이 여러 개의 과목을 수강할 수 있다. 반대로 한 개의 과목은 여러 명의 학생이 수강한다.
그래서 M대 N 관계가 발생한다.
* 관계형 데이터베이스에서 M대 N관계의 조인은 카테시안 곱이 발생한다. 그래서 M대 N관계를 1대 N, N대 1로 해소해야 한다.
* 카테시안 곱 : 각 릴레이션에 존재하는 모든 데이터를 조합하여 연산하는 것을 말한다.
'DB' 카테고리의 다른 글
[SQL] 데이터 모델링의 이해 (2) (0) | 2024.03.08 |
---|---|
[SQL] 데이터 모델링의 이해 (1) (0) | 2024.03.08 |
[DB] Raw Device란? (0) | 2024.01.23 |