3주차 (1)

Suhyeon Lee·2024년 9월 7일
0

수업 목표

  • 데이터 모델링 구성 요소 4가지에 대해 학습
    1. 엔터티
    2. 속성
    3. 관계
    4. 식별자

엔터티(Entity)

엔터티의 개념

엔터티의 개념

  • 엔터티: 데이터 모델의 핵심 구성 요소
  • ‘개체’라고 표현하며 정보의 세계에서 의미 있는 하나의 정보 단위를 뜻함
    • 개체: 관련 있는 속성(사물의 본질적인 성질)들이 모여서 의미 있는 하나의 정보 단위를 이룬 것
    • 데이터베이스에서는 레코드가 개체에 해당
  • 개체 관계 모델(Entity-Relationship model): 개체와 관계를 나타넨 모달
    • 관계: 개체 사이의 연관성
  • 엔터티의 사전적 의미는 ‘독립체’
    • 쉽게 말해 업무에서 쓰이는 데이터들을 분류한 그룹이라 할 수 있음

엔터티와 인스턴스

  • 엔터티와 인스턴스의 관계는 여러 가지 방법으로 표현 가능
    • ERD, 표 등
    • 표현하는 바는 같지만 다른 형태로 표현할 수 있음

  • 예시
    • 사원 정보를 담고 있는 테이블 == Entity
      • 엔터티는 업무에서 필요로 하는 정보를 저장하기 위한 무언가를 의미
      • 사원에 대한 정보를 행과 열을 2차원 구조로 저장하여 관리하고 업무에서 활용 가능하기 때문에 엔터티라고 할 수 있음
    • 인스턴스: 데이터베이스 테이블에 저장된 특정한 데이터 내용의 전체 집합
      • 즉, 하나의 row(행) == 인스턴스
      • 한 명의 사원이 가질 수 있는 모든 내용을 포함한 요소
    • 속성(attribute): 하나의 인스턴스가 갖는 각각의 특징
      • 테이블의 세로(column) 영역에 해당
      • 하나의 엔터티(사원 테이블)는 여러 인스턴스(하나의 행)를 가질 수 있고, 하나의 인스턴스는 1개 이상의 속성(이름, 사번, 부서, 직책 등)을 가질 수 있음

엔터티의 특징

  1. 업무에서 필요로 하는 정보
  • 엔터티는 특정한 업무에서 필요로 하는지를 파악하는 것이 중요함
  • 데이터를 수집하고 관리하는 목적이 기본적으로 업무에서 활용하기 위해서이기 때문
  1. 식별 가능 여부
  • 엔터티를 도출하는 경우 업무적으로 의미를 갖는 인스턴스가 식별자에 의해 한 개씩만 존재하는지 검증해야 함
  1. 인스턴스의 집합
  • 엔터티는 기본적으로 2개 이상의 인스턴스로 구성되어 있어야 함
  • 인스턴스가 한 개 밖에 없는 엔터티는 집합이 아니기 때문에 엔터티가 아님
  1. 업무 프로세스에 의해 활용되어야 함
  • 엔터티는 업무 프로세스에 활용되어야 함
  • 만약 활용되지 않는 엔터티가 있을 경우 해당 엔터티를 제거하거나 프로세스에서 놓치고 있는 부분은 없는지 확인해야 함
  1. 속성을 포함해야 함
  • 엔터티가 도출되었다는 건 해당 업무에서 어떠한 연관성을 갖고 다른 엔터티와의 연관성이 있다는 의미
  • 엔터티는 엔터티를 설명할 수 있는 속성이 존재해야 의미를 가짐
  1. 관계의 존재
  • 엔터티가 도출되었다는 것은 해당 업무에서 어떠한 연관성을 갖고 다른 엔터티와의 연관성이 있음을 나타냄
  • 관계가 설정되지 않은 엔터티는 부적절한 엔터티가 도출되었거나 다른 엔터티와의 직접적인 연결 관계를 찾지 못했을 수 있음

엔터티의 분류

  • 유·무형에 따른 분류
    • 유형 엔터티
      • 물리적인 형태가 존재하는 엔터티이며 안정적이고 지속적
        예) 상품, 강사, 병장
    • 개념 엔터티
      • 물리적인 형태가 아닌 관리해야 할 개념적인 정보로 구분되는 엔터티
        예) 학과, 코스닥 종목
    • 사건 엔터티
      • 특정한 이벤트에 종속되는 엔터티
      • 업무 수행에 따라 발생되는 엔터티로 비교적 발생량이 많으며 각종 통계에 이용되는 엔터티
        예) 이벤트 응모, 주문
  • 발생 시점에 따른 분류
    • 기본·키 엔터티(Basic Entity)
      • 관계가 아닌 독립적인 생성이 가능하고 다른 엔터티의 부모 엔터티 역할을 함
      • 고유한 주식별자를 가짐
        예) 고객, 상품
    • 중심 엔터티(Main Entity)
      • 기본 엔터티로부터 발생하고 업무에서 중심적인 역할을 함
      • 처리해야 하는 데이터의 양이 많으며 다른 엔터티와의 관계를 통해 많은 행위 엔터티를 생성함
        예) 주문, 취소
    • 행위 엔터티(Activie Entity)
      • 두 개 이상의 부모 엔터티로부터 발생
      • 자주 내용이 바뀌거나 데이터의 양이 증가함
        예) 주문 내역, 취소 내역
  • 엔터티 분류 방법의 예시

엔터티의 이름짓기 방식

  • 엔터티는 고유한 이름을 가짐
  • 이 때 특정한 규칙을 기반으로 이름 짓기(네이밍) 함
  1. 가능하면 업무에서 사용하는 용어 쓰기
  2. (가능하면) 축약어(shortcut) 쓰지 않기
  • 의미가 온전하게 드러날 수 있도록 작성
  1. 단수 명사를 사용하고 띄어쓰기 하지 않기
  2. 모든 엔터티에서 유일한 이름이 부여되어야 함
  • 즉, 엔터티 이름은 중복되지 않아야 함
  1. 엔터티 생성 의미대로 이름 부여

속성(Attribute)

속성의 개념

속성의 개념

  • 인스턴스가 가진 어떠한 성질(성격)
  • 인스턴스가 갖는 개별 특징
  • 하나의 인스턴스는 최소 하나 이상의 속성을 가짐
  • 업무에서 필요로 하는 인스턴스로 관리하고자 하는 의미상 더 이상 분리되지 않는 최소의 데이터 단위
  • 테이블로 예를 들면:
    테이블 전체 → 엔티티
    행(row) → 개별 인스턴스
    행은 테이블에서 하나의 데이터 집합을 의미
  • 엔터티는
    1. 사람, 장소, 물건, 사건, 개념 등의 명사
    2. 업무상 관리가 필요한 관심사
    3. 저장이 되기 위한 어떤 것(Thing)

엔터티, 인스턴스, 속성, 속성값의 관계

  • 한 개의 엔터티는 두 개 이상의 인스턴스의 집합이어야 함
  • 한 개의 엔터티는 두 개 이상의 속성으로 구성
  • 한 개의 속성은 한 개의 속성값을 가짐

속성 표기법

  1. IE 표기법

  2. Barker 표기법

속성의 특징 및 분류

속성의 특징

  1. 업무에서 필요로 함
    • 아무 요소나 모두 속성이 되는 게 아님
    • 업무에 관련된 특징이 속성이 될 수 있음
    • 해당 업무에서 관리하고자 하는 정보여야 함
  2. 의미상 더 이상 분리되지 않는 그 자체로 독립성 유지
    • 가장 작은 단위로 의미를 지님
  3. 엔터티를 설명하고 인스턴스의 구성요소가 됨
    • 속성을 통해 인스턴스가 구성되며 인스턴스가 모여 엔터티가 되기 때문에 결과적으로 엔터티를 설명한다 볼 수 있음
  4. 정규화 이론에 기반을 두고 정해진 주식별자에 함수적 종속성을 가짐
    • 함수적 종속성(Functional Dependency)
      • X(결정자) → Y(종속자)
        : X의 값을 알면 Y의 값을 바로 알 수 있고 X값에 의해 Y값이 달라지는 경우 "Y는 X에 함수적 종속"이라 함
        (예) 학생 테이블에서 학번 - 이름, 학번 - 전공
      • 종류: 완전 함수 종속, 부분 함수 종속, 이행 함수 종속
  5. 하나의 속성은 한 개의 값만 가짐
profile
2 B R 0 2 B

0개의 댓글