ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 데이터 모델링의 주요 개념
    DB/Oracle 2021. 5. 10. 15:59

    개인 공부 후 정리 목적인 글입니다.

     

     

     

    데이터 모델링(=논리적 데이터베이스 설계)

     

    데이터 모델링의 목적 

     - 정보 시스템을 구축하는데 필요한 정보(데이터)를 약속된 표기법에 의해 표현함으로써

       시스템 구축 대상이 되는 업무 내용을 정확하게 분석하고자 함

     - 분석된 모델을 가지고 실제 데이터베이스를 생성하여 개발 및 관리에 이용하고자 함

     

    데이터 모델링의 세가지 개념 

    1. 엔티티

    2. 관계

    3. 속성

     

     

    데이터베이스 용어 vs 모델링 용어

    데이터베이스 용어 모델링 용어
    테이블(table) 엔티티(entity)
    컬럼(column), 열 속성(attribute)
    튜플(tuple), 행(row) 인스턴스(instance)
    기본키(primary key) 주식별자(primary identifier)
    외래키(foreign key) 외래 식별자(foreign identifier)

     

     

    엔티티(entity)

     : 업무의 관심 대상이 되는 정보를 갖고 있거나 그에 대한 정보를 알아야하는 유형, 무형의 사물이나 객체

    • 유형 엔티티 : 물리적인 형태가 있고 쉽게 엔티티임을 알 수 있다.
    • 무형 엔티티 : 물리적인 형태가 없고 개념적으로 존재하는 엔티티
    • 문서 엔티티 : 업무 절차상에서 사용되는 문서나 장부, 전표에 대한 엔티티
    • 이력 엔티티 : 업무상 반복적으로 이루어지는 행위사건의 내용을 일자별, 시간별로 저장하기 위한 엔티티
    • 코드 엔티티 : 무형 엔티티의 일종으로 각종 코드를 관리하기 위한 엔티티

     

    엔티티의 특징

     - 시스템 구축 대상이 되는 업무에서 필요하고 관리하고자 하는 정보이여야 한다.

     - 일반적으로 엔티티는 2개 이상의 인스턴스(instance)가 존재해야 의미가 있다.

     - 반드시 하나 이상의 속성을 가져야 한다.

     

    엔티티의 일반적인 명명 기준

     - 현업 업무에서 사용하는 용어를 사용한다

     - 약어를 가능하면 사용하지 않는다

     - 단수명사를 사용한다

     - 모든 엔티티명은 유일해야 된다

     - 엔티티 생성 의미대로 이름을 부여한다

     

     

    속성(Attribute)

    : 엔티티에서 관리하고자 하는 더 이상 분리되지 않는 최소 단위의 데이터로 엔티티는 '속성들의 집합'으로 정의될 수 있다. 엔티티는 한 개 혹은 한 개 이상의 속성을 가진다.

    • 기본 속성 : 업무분석을 통해 현실세계로부터 얻어낸 속성
    • 설계 속성 : 원래 현실세계에는 존재하지 않지만 설계 과정에서 만들어진 속성
    • 유도 속성 : 다른 속성으로부터 계산이나 변형에 의해 나온 속성

     

    속성의 명명 기준

     - 속성의 의미가 분명하게 드러나는 이름을 부여한다.

     - 해당 업무에서 사용하는 이름을 부여한다.

     - 서술식 속성명은 사용하지 않는다. 

     - 약어 사용은 가급적 피하도록 한다.

     - 엔티티에서 유일하게 식별 가능하도록 지정한다.

     

     

    관계(Relationship)

     : 두 개 혹은 그 이상의 엔티티들 간의 의미있는 연결로 엔티티와 엔티티가 존재의 형태나 행위로 서로에게 영향을 주는 형태이다. 두 엔티티가 관계가 있다는 의미는 상호 공유하는 속성이 있다는 의미이다.

     

    관계의 명명 기준

     - 두 엔티티 사이의 관계에 대해 이름을 붙이는 것으로 어느 관점에서 보느냐에 따라 이름이 다르다.

     

    관계의 카디널리티(Cardinality)

     - 두 개의 엔티티간의 관계에서 참여자(인스턴스)의 수를 표현한 것(1 : 1 관계, 1 : N 관계, M : N 관계)

    • 단일 : |
    • 다중 : <

     

     관계의 참여도 

     - 관계가 있는 두 엔티티의 인스턴스들이 항상 관계에 참여 하는지, 아니면 경우에 따라 관계에 참여하는지의 여부 

    • 필수 : |
    • 선택 : o

     

    부모 엔티티와 자식 엔티티

     - 상호 관계가 있는 두 엔티티는 부모 - 자식의 관계에 있는 경우가 많다.

     - 무조, 자식 여부는 어느쪽에 정보가 먼저 생성이 되는가에 따라 결정 된다.

       (정보가 먼저 생성되는 쪽이 부모, 가져다 쓰는 쪽이 자식)

     - 두 엔티티가 부모 - 자식의 관계가 있다면 일반적으로 부모 엔티티와 자식 엔티티의 카디낼러티는 1:N이고 
       참여도는 부모쪽이 필수, 자식쪽이 선택으로 나타난다.

     

     

    'DB > Oracle' 카테고리의 다른 글

    DB  (2) 2021.05.10
Designed by Tistory.