Tiny Star

📊DataBase/📈SQL

[🪪SQLD] 1과목 - 데이터 모델링의 이해 : 속성 / 관계 (24년 개정 요약)

청크 2024. 2. 13. 18:54

[속성]

· 속성 (Attribute)

 -> 엔터티가 가지는 항목으로 업무에 필요한 데이터를 저장할 수 있음

 -> 인스턴스의 구성요소이고 의미적으로 더 이상 분리되지 않는 최소 단위

 

· 속성의 특징

 1) 업무에서 관리되는 정보로 일반적으로는 하나의 값만 가짐

 2) 주식별자에게 함수적으로 종속됨

      즉, 기본키가 변경되면 속성의 값도 변경된다는 것

 

· 속성의 종류

 1) 분해 여부에 따른 속성의 종류

   - 단일 속성 : 하나의 의미로 구성된 것

                   ex) 회원 ID, 이름 등

   - 복합 속성 : 여러 개의 의미가 있는 것

                  ex) 주소 등 - 시/군/동 등으로 분해가 가능

   - 다중값 속성 : 여러 개의 값을 가질 수 있는 것으로 엔터티로 분해됨

                  ex) 상품 리스트

 

 2) 특성에 따른 속성의 종류

   - 기본 속성 : 비즈니스 프로세스에서 도출되는 본래의 속성

                  ex) 회원 ID, 이름, 계좌번호, 주문 일자 등

   - 설계 속성 : 데이터 모델링 과정에서 발생되는 속성, 유일한 값을 부여

                  ex) 상품/지점 코드 등

   - 파생 속성 : 다른 속성에 의해서 만들어지는 속성

                  ex) 합계, 평균 등

 

· 도메인 (Domain)

 -> 속성이 가질 수 있는 값의 범위로 속성에 대한 데이터 타입, 크기 등의 제약 사항을 지정하는 것

 

[관계]

· 관계 (Relationship)

 -> 엔터티 간의 관련성을 의미 (상호 연관성이 있는 상태)

 

· 관계의 종류

 1) 존재 관계 : 두 개의 엔터티가 존재 여부의 관계가 있는 것으로 엔터티 간의 상태를 의미

 ex) 고객이 은행에 회원가입을 하면 관리점이 할당되고, 그 할당된 관리점에서 고객을 관리한다. -> 고객은 관리점에 소속됨 (존재 관계)

 

 2) 행위 관계 : 두 개의 엔터티가 어떤 행위에 의한 관련성이 있는 것

 ex) 증권회사는 계좌를 개설하고 주문을 발주하는 것 -> 계좌 - 일자 별 주문이력 (행위 관계)

 

· 관계 차수 (Relation Cardinality)

 -> 두 개의 엔터티 간에 관계에 참여하는 수를 의미

 

· 관계 차수의 종류

 1) 일대일 관계 (1:1)

   - 완전 1:1 : 하나의 엔터티에 관계되는 엔터티가 한 개로 반드시 존재

   - 선택적 1:1 : 하나의 엔터티에 관계되는 엔터티가 한 개거나 없음

2) 일대다 관계 (1:N)

   - 엔터티에 행이 하나 있을 때 다른 엔터티의 값이 여러 개 있는 관계

      ex) 고객은 여러 개의 계좌를 가질 수 있음 (일대다 관계)

 3) 다대다 관계 (M:N)

   - 두 개 엔터티가 서로 여러 개의 관계를 가지고 있는 것

     ex) 한 명의 학생이 여러 개의 과목 수강이 가능.

          한 개의 과목은 여러 명의 학생이 수강 (다대다 관계)

 4) 필수적 관계와 선택적 관계

   - 필수적 관계 : 반드시 하나는 존재해야 하는 관계, 로 구분

   - 선택적 관계 : 없을 수도 있는 관계, “ O ” 로 구분

 

* 관계형 데이터 베이스에서 M:N 관계의 조인은 카테시안 곱이 발생하기 때문에 M:N관계를 1:N, N:1로 해소해야 함

* 카테시안  곱 (Cartesian Product, 곱집합) : 각 릴레이션에 존재하는 모든 데이터를 조합하여 연산하는 것