티스토리 뷰

4과목은 DAP 40문항 / DAsP 20문항 으로 가장 많이 출제되는 영역으로 가장 중요한 파트입니다.


과목 Ⅳ. 데이터 모델링

 

추상화

유형화 (Classification)

집단화 (Aggregation)

일반화 (Generalization)


논리 데이터 모델링

주제영역 도출

상향식 vs 하향식

 

★ ERD 표기법

ER-Win의 IDEF1X 또는 정보공학 표기법 (IE 표기법)

독립 엔터티 : 각진 사각형

종속 엔터티 : 모서리가 둥근 사각형

식별관계 : 실선

선택관계 : 동그라미 / 필수관계 : 동그라미 없이

동그라미의 반대쪽 엔터티가 선택 / 동그라미가 없으면 그 반대쪽 엔터티가 필수 엔터티

 

CASE*Method 표기법

엔터티 : 모서리가 둥근 사각형

# 주 키 속성

* 필수 속성

º 일반(선택) 속성

식별 관계 : UID Bar 로 표시

필수 관계 : 실선, 선택관계 : 점선? (위치 확인)

점선 쪽이 선택 엔터티 / 실선 쪽이 필수 엔터티


엔터티

 

엔터티 분류

유형(Tangible) 엔터티 / 활동(Active) 엔터티 / 개념(Concept) 엔터티

특성엔터티 / 연관엔터티 / 서브타입 엔터티

 

★ 엔터티 정의 사항

엔터티 명 명명 규칙을 준수해야 한다.
포함하는 모든 속성을 정확히 표현하는 엔터티 명을 부여한다.
엔터티 설명 엔터티가 무엇인지를 표현해야 한다.
엔터티가 업무에서 왜 중요한가를 설명해야 한다.
엔터티 분류 방법론 종속적으로 반드시 해야하는 것은 아니다.
업무를 파악하는 데 좋은 분류 기준을 수립하는 것이 중요하다.
현재 발생 건수 설계 및 구축 단계를 위하여 현재 발생 건수를 파악한다.
발생 건수 변화 설계 및 구축 단계를 위하여 예상되는 변화율을 파악한다.
권한 엔터티를 생성·수정·삭제하는 메타 데이터 권한을 정의한다.
엔터티의 데이터를 생성·수정·삭제하는 권한을 정의한다.
식별자 속성 엔터티 내 하나의 인스턴스를 식별할 수 있는 속성을 표현한다.
외래 식별자 속성 다른 엔터티로부터 참조되는 식별자 속성을 표현한다.
식별자 이외 속성 정규화 규칙에 따라 식별자에 종속되는 속성을 표현한다.

 

속성명 정의

엔터티 + 수식어 + 도메인

ex ) 사원입사날짜


속성 정의 사항

  • 속성 명
  • 속성 설명
  • 선택성 및 선택성 조건
  • 속성 유형 : 기본 속성, 유도 속성, 설계 속성
  • 도메인
  • 허용 값
  • 기본 값
  • 소유 권한

관계 정의 사항

  • 관계명
  • 관계요약 설명
  • 외래 키
  • 관계 유형 : 관계 식별성
  • 관계 기수성(Cardinality, Degree)
  • 관계 선택성 

 

특수 관계

  • 자기 참조 관계(BOM)
  • 다대다 관계 : 연결(연관) 엔터티로 다대다 관계 해소
  • 배타적 관계

식별자 (Identifier)

본질 식별자 (Natural Identifier)

업무에서 사용하는 속성을 이용하여 유일성을 보장

 

인조 식별자 (Artificial Identifier)

업무에서 사용하는 속성이 아닌 인위적으로 만든 속성으로 유일성을 보장

  • 최대한 범용적인 값을 사용한다.
  • 유일한 값을 만들기 위한 인조 식별자를 사용한다.
  • 하나의 인조 식별자 속성으로 대체할 수 없는 형태를 주의한다
  • 편의성·단순성 확보를 위한 인조 식별자를 사용할 수 있다.
  • 의미의 체계화를 위한 인조 식별자를 사용할 수 있다.
  • 내부적으로만 사용하는 인조 식별자

보조 식별자 (Alternate Identifier)

유일하게 식별할 수 있는 속성이지만, 대표성을 갖지 못하는 속성

 

후보 식별자 (Candidate Identifier)

  • 널이 될 수 없다.
  • 각 인스턴스를 유일하게 식별할 수 있어야 한다
  • 나머지 속성들을 직접 식별할 수 있어야 한다
  • 후보 식별자로 속성 집합을 선택하는 경우에는 개념적으로 유일해야 한다
  • 후보 식별자의 데이터는 자주 변경되지 않는 것이어야 한다

관계형(집합) 이론 논리 데이터 모델 관계형 데이터베이스 파일(File) 시스템
릴레이션 (Relation) 엔터티 (Entity) 테이블 (Table) 파일 (File)
튜플 (Tuple) 인스턴스 (Instance) 로우 (Row) 레코드 (Record)
애트리뷰트 (Attribute) 속성 (Atttribute) 컬럼 (Column) 필드 (Field)

관계형 데이터 모델 이론

데이터 구조

  • 각 열은 하나의 값을 가진다
  • 각 열의 값은 동일한 종류이다
  • 각 행은 유일하다
  • 열의 순서는 의미가 없다
  • 행의 순서는 의미가 없다
  • 각 열은 유일한 이름을 가진다

데이터 조작

데이터 무결성

  • 엔터티 무결성 : 주키는 널을 포함하지 않는다.
  • 참조 무결성 : 관계 엔터티의 모든 외래 키 값은 관련 있는 관계 엔터티의 모든 주 키 값이 존재해야 한다. 
    입력 규칙, 삭제 규칙
  • 도메인 무결성 
  • 연쇄작용 또는 업무규칙

★ 정규화

제1 정규형

  • 모든 속성은 하나의 값을 가져야 한다.
  • 각 속성의 모든 값은 동일한 형식이어야 한다.
  • 각 속성들은 유일한 이름을 가져야 한다.
  • 행(Row)들은 서로 간에 식별 가능해야 한다.

제2 정규형

  • 식별자가 아닌 모든 속성은 식별자 전체 속성에 완전 종속되어야 한다.

제3 정규형

  • 식별자를 제외한 나머지 속성들 간의 종속이 존재하면 안된다.

★ 이력관리

이력 데이터 종류

  • 발생 이력 데이터
  • 변경 이력 데이터
  • 진행 이력 데이터

이력 관리 형태

  • 시점 이력
  • 선분 이력

★ 선분 이력 관리 유형

  • 인스턴스 레벨 이력 관리
  • 속성 레벨 이력 관리
  • 주제 레벨 이력 관리

물리 데이터 모델링

 

서브타입 변환

  • 슈퍼타입 기준 테이블 변환
  • 서브타입 기준 테이블 변환
  • 개별타입 기준 테이블 변환

 

배타적 관계 변환

1) 외래키 분리 방법

  • 각각의 관계를 관계 칼럼으로 생성
  • 외래키 제약조건을 생성할 수 있다.
  • 각각의 키 칼럼들이 선택적이어야 한다.

2) 외래키 결합 방법

  • 각각의 관계를 하나의 관계 칼럼으로 생성하는 방법
  • 외래키 제약조건을 생성 할 수 없다
  • 각가의 관계를 선택적으로 구분할 수 있는 추가적인 칼럼이 필요하다.

★ 반정규화

테이블 분할

1) 수평분할

2) 수직분할

  • 조회 위주의 칼럼과 갱신 위주의 칼럼을 나뉘는 경우
  • 특별히 자주 조회되는 칼럼이 있는 경우
  • 특정 칼럼 크기가 아주 큰 경우
  • 특정 칼럼에 보안을 적용해야 하는 경우

중복 테이블 생성

1) 집계 테이블 추가

 

2) 진행 테이블 추가

  • 여러 테이블의 조인이 빈번히 발생하며 처리 범위도 넓은 경우
  • M:M 관계가 포함된 처리의 과정을 추적, 관리하는 경우
  • 검색 조건이 여러 테이블에 걸쳐 다양하게 사용되며 복잡하고 처리량이 많은 경우

 

중복 칼럼 생성


참고문헌

  • 한국데이터산업진흥원, 데이터아키텍처 전문가 가이드 (한국데이터산업진흥원, 2020)
댓글
반응형
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함