1-1 데이터모델링의 이해

민첩한곰돌이·2023년 5월 14일
0

sqld

목록 보기
1/1
post-thumbnail

Section 01. 데이터 모델의 이해

1. 데이터 모델링의 이해

1) 모델링의 개념

  • 가설적 또는 양식에 맞춘 표현
  • 예비표현으로 최종 대상이 구축되도록 하는 계획으로 기여
  • 단순화하여 표현
  • 연관된 사람이나 그룹을 위하여 명확하게 하는 것
  • 현실세계를 추상화한 반영

2) 모델링의 특징

  • 추상화, 단순화, 명확화 -> 일정한 표기법으로 표기
    - 단순화: 약속된 규약, 제한된 표기법이나 언어를 이용하여 누구나 쉽게 이해할 수 있도록 표현
    - 추상화: 일정한 형식에 맞추어 표현, 일정한 양식인 표기법, 현실세계를 간략히 표현
    - 명확화: 애매모호함을 제거하고 정확하게 현상을 기술, 한 가지의 의미를 가짐

3) 모델링의 3가지 관점

  • 데이터 관점(What, Data): 데이터 관련, 데이터 간의 관계는 무엇인지에 대하여 모델링(구조분석, 정적분석)
  • 프로세스 관점(How Process): 무엇을 해야하는지 모델링(시나리오분석, 도메인분석, 동적분석)
  • 데이터와 프로세스의 상관 관점(Interaction): 일의 방법에 따라 데이터는 어떻게 영향을 받고 있는지 모델링(Create, Read, Update, Delete)

2. 데이터 모델의 기본 개념 이해

1) 데이터 모델링의 개념

  • 현실 세계 -> 컴퓨터 세계의 데이터 베이스로 옮기는 과정
  • 약속된 표기법에 의해 표현하는 과정
  • 어떤 데이터가 존재하는지, 필요로하는 정보는 무엇인지 분석하는 방법
  • 시스템 구축 방법론에 따라 분석하고 설계하여 정보시스템을 구축하는 과정

2) 데이터 모델이 제공하는 기능

  • 가시화(시각), 명세화(정의), 구조화(틀제공), 문서화(기록보관), 다양한 관점, 표현방법 제공

3. 데이터 모델링의 중요성과 유의점

1) 데이터 모델링의 중요성

  • 파급효과: 완성시점에서 데이터 모델 변경시 큰 위험요소
  • 간결한 표현: 정보 요구 사항과 한계 정확 -> 데이터 모델이 필요
  • 데이터 품질: 데이터 품질 문제 발생 (중보데이터 미정의, 비지니스 정의 불충분, 데이터 불일치 등)

2) 데이터 모델링의 유의점(데이터 품질과 관련된 유의점)

  • 중복(Duplication): 같은 데이터 사용자 파악에 용이, 여러 자오에 같은 정보 저장하지 않도록 함
  • 비유연성(Inflexibility): 사소한 업무 변화에 따른 수시 변경은 유지보수의 어려움을 가중
  • 비일관성(Inconsistency): 데이트와 데이터간 상호연관 관계에 대한 명확한 정의 요구

4. 데이터 모델링의 3단계 진행

1) 데이터 모델링의 필수 요소

  • 대상(Entity): 업무가 관리하고자 하는 복수의 대상
  • 속성(Attribute): 대상들이 갖는 속성
  • 관계(Relationship): 대상들 간의 관계

2) 데이터 모델링의 3단계

  • 개념적 모델링: 업무 중심적이고 포괄적인 수준의 모델링, 핵심 엔터티 추출, ERD 작성, 포괄적이고 전사적.
  • 논리적 모델링: 관계를 이용하여 세부속성, 식별자, 관계 등을 표현, 모델링 최종적 완료, 정규화 작업, 재사용이 높음.
  • 물리적 모델링: 물리적 성능, 저장 고려 설계, 가장 구체적인 데이터 모델링, 추상화 수중이 가장 낮음.

5. 데이터의 독립성과 데이터베이스 3단계 구조

1) 데이터 독립성

  • 데이터 독립성: 구조 변경되더라도 상위 단계 영향을 미치지 않는 속성
  • 논리적 독립성: 개념 스키마, 통합 논리적 구조가 외부 스키마, 응용프로그램에는 영향을 미치지 않음
  • 물리적 독립성: 외부/개념 스키마에는 영향을 미치지 않음

2) 데이터베이스 3단계 구조

  • 외부 단계(스키마): 사용자 관점, 개별 사용자 관점, 여러개 존재
  • 개념 단계(스키마): 관리자 관점, 규칙과 구조 표현, 전체 논리 구조, 일반적 스키마 = 개념스키마
  • 내부 단계(스키마): 시스템 설계자 관점, 저장장치 관점, 물지적 데이터베이스 어떻게 저장되는지 확인

6. 데이터모델의 표기법

1) ERD(Entity Relationship Diagra)

  • 1976년 피터 첸, 데이터 모델링의 표준으로 사용

2) ERD 표기법의 종류

3) ERD 작성절차

  1. 엔터티를 그린다.
  2. 엔터티를 적절하게 배치한다.
  3. 엔터티 간의 관계를 설정한다.
  4. 관계명을 기술한다.
  5. 관계의 참여도를 기술한다.
  6. 관계의 필수 여부를 기술한다.

Section 02. 엔터티(Entity)

1. 엔터티의 개념

  • 업무상 분석해야하는 대상
  • 분석 대상은 동질성을 가짐
  • 대상(Instance)의 집합이고, 대상은 엔터티의 하나의 값

2. 엔터티의 특징

  • 식별여부: 식별자에 의해 식별 가능, 유일한 식별자가 필수
  • 인트턴스들의 집합: 영속적으로 존재, 2개 이상의 인스턴트 존재해야함
  • 속성: 반드시 속성을 가짐, 2개 이상 속성을 가짐. 인스턴트는 1개의 속성값만 가짐.
  • 업무: 관리되어야 하는 집합, 업무 프로세스에 의해 이용
  • 관계: 1개 이상의 관계가 있어야 함

3. 엔터티의 분류

1) 유형과 무형에 따른 분류

  • 유형 엔터티(Tangible Entity): 물리적 형태 있음. 사원, 강사 등
  • 개념 엔터티(Conceptual Entity): 관리 개념적 정보 구분. 조직, 보험상품 등
  • 사건 엔터티(Event Entity): 수행에 따라 발생하며 통계자료에 이용. 주문, 미납 등.

2) 발생 시점에 따른 분류

  • 기본 엔터티: 원래 존재하는 정보, 독집적 생성, 부모역할, 고유 주식별자 가짐. 사원, 상품 등
  • 중심 엔터티: 업무 중심적인 역할, 행위 엔터티 생성. 계약, 주문 등
  • 행위 엔터티: 2개 이상 부모 엔터티로부터 발생, 수시 변경 데이터 양 증가. 주문목록, 사원변경이력 등

4. 속성(Attribute)

1. 속성의 개념

  • 고유한 성질, 특징, 인트턴트 관리 시 최소의 데이터 단위

2. 엔터티, 인스턴스, 속성, 속성값에 대한 내용과 표기법

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

  • 1개 엔터티 = 2개 인스턴스 집합 = 2개 속성
  • 1개 엔터티 = 1개 속성값

2) 속성표기법

3. 속성의 특징

  • 업무에 필요하고 관리하고자 하는 정보
  • 주식별자에 함수적 종속성을 가져야함
  • 1개 속성 = 1개 속성값
  • 다중값일 경우 별도 엔터티를 이용하여 분리

4. 속성의 분류

1) 속성의 특성에 따른 분류

  • 기본 속성: 업무 추출된 속성. 원금, 예치기간 등
  • 설계 속성: 기본 속성을 변형하여 만들어진 속성. 상품코드, 예금분류 등
  • 파생 속성: 다른 속성에 의해 만들어진 속성. 합계, 이자 등

2) 엔터티 구성방식에 따른 분류

  • PK(Primary Key, 기본키) 속성: 인스턴스 식별 속성
  • FK(FOREIGN KEY, 외래키) 속성: 관계 포함 속성
  • 일반 속성: 엔터티 포함, PK/FK 미포함 속성

3) 분해 여부에 따른 분류

  • 단일 속성: 하나의 의미. 이름, 회원ID 등
  • 복합 속성: 여러개 의미. 주소(시, 구, 동 분해 가능)
  • 다중값 속성: 속성에 여러개 값을 가질 수 있는 경우. 엔터티로 분해. 상품 리스트 등

5. 식별자

1. 식별자 개념

  • 하나의 엔터티 = 유일한 식별자
  • 엔터티 대표 속성

2. 식별자 특징

1) 주식별자의 특징

  • 최소성: 최수의 수
  • 존재성: 빈드시 값 존재 (NULL 안됨)
  • 유일성: 인스턴스 유일하게 구분
  • 불변성: 특정 엔터티 지정 -> 식별자 값 불변

2) 키의 종류

  • 기본키: 엔터티 대표키
  • 후보키: 유일성과 최소성 만족 키
  • 슈퍼키: 유일성 만족, 최소성 만족X 키
  • 대체키: 기본키 선정하고 남은 키
  • 외래키: 참조무결성 확인하기 위해 사용되는 키, 허용된 데이터값 db 저장하기 위해 사용

3. 식별자 분류

1) 대표성 여부에 따른 식별자 종류

  • 주식별자: 유일성 최소성 만족, 인스턴트 구분, 침조관계를 연결할 수 있는 식별자
  • 보조식별자: 인스턴트 구분자, 참조 관계 연결 할 수 없는 식별자, 유일성, 최소성 만족, 대표성 만족X

2) 생성 여부에 따른 식별자 종류

  • 내부식별자: 스스로 생성되는 식별자
  • 외부식별자: 관계로 만들어지는 식별자

3) 속성 수에 따른 식별자 종류

  • 단일 식별자: 하나 속성
  • 복합 식별자: 2개 이상 속성으로 구성

대체 여부에 따른 식별자 종류

  • 본질 식별자: 비지니스 프로세스에서 만들어지는 식별자
  • 인조 식별자: 인위적으로 만들어지는 식별자

4. 주식별자 도출 기준

  • 자주 이용되는 속성 주식별자로 지정
  • 명칭 내역 등 이름으로 기술되는 것은 주식별지로 지정하지 않음
  • 복합으로 구성할 경우 많은 속성 포함되지 않도록

5. 식별자 관계와 비식별자 관계

1) 식별자 관계와 비식별자 관계

  • 식별자 관계: 주식별자로 상속되는 경우, 실선 표현
  • 비식별자 관계 일반 속성으로 상속, 점선 표현, 자식 주식별자 별도 구성
profile
체육을 전공하고 IT 산업에 뛰어들어 산전수전 겪는중

0개의 댓글