수제비 2022 정보처리기사 실기 수험서를 보고 공부한 기록입니다.
[데이터 모델(Data Model) 개념]
- 데이터 모델은 현실 세계의 정보를 인간과 컴퓨터가 이해할 수 있도록 추상화하여 표현한 모델이다
- 데이터 모델에 표시해야 할 요소에는 논리적 데이터 구조, 연산, 제약 조건이 있다
연산(Operation)
- 데이터베이스에 저장된 실제 데이터를 처리하는 작업에 대한 명세
- 릴레이션을 조작하기 위한 관계 연산을 나타냄(SELECT, PROJECT, JOIN, DIVISION)
구조(Structure)
- 데이터베이스에 논리적으로 표현될 대상으로서의 개체 타입과 개체 타입 간의 관계
- 데이터 구조 및 정적 성질을 표현하는 요소
제약 조건(Constraint)
- 데이터베이스에 저장될 수 있는 실제 데이터의 논리적인 제약 조건
- 데이터 무결성 유지를 위한 DB의 보편적 방법
- 릴레이션의 특정 칼럼에 설정하는 제약을 의미(개체 무결성, 참조 무결성 등)
[데이터 모델 절차]
요구사항 분석
- 도출된 요구사항 간 상충을 해결하고 범위를 파악하여 외부 환경과의 상호 작용을 분석을 통해 데이터에 대한 요구 분석
개념적 설계(개념적 데이터 모델)
- 사용자의 요구에 대한 트랜잭션을 모데링 하는 단계
- 개념적 데이터 모델은 현실 세계에 대한 인식을 추상적, 개념적으로 표현하여 개념적 구조를 도출하는 데이터 모델
- 트랜잭션 모델링, View 통합방법 및 Attribute 합성 고려
- 개념적 데이터 모델은 DB 종류와 관계가 없음
- 주요 산출물은 개체관계 다이어그램이 있음
논리적 설계(논리적 데이터 모델)
- 트랜잭션의 인터페이스를 설계하는 단계
- DBMS에 맞는 논리적 스키마를 설계하는 단계
- 논리적 데이터 모델은 업무의 모습을 모델링 표기법으로 형상화하여 사람이 이해하기 쉽게 표현한 데이터 모델
- 논리적 설계 단계에서 정규화를 수행
- 논리적 데이터베이스 구조로 매핑(Mapping)
- 스키마의 평가 및 정제
- 논리적 데이터 모델을 통해 "관계 데이터 모델", "계층 데이터 모델", "네트워크 데이터 모델", "객체 지향 데이터 모델", "객체-관계 데이터 모델" 중 하나의 모델에 맞게 설계
- 관계형 데이터베이스에서는 테이블을 설계하는 단계
물리적 설계(물리적 데이터 모델)
- 물리적 설계는 논리 데이터 모델을 특정 DBMS의 특성 및 성능을 고려하여 물리적인 스키마를 만드는 단계
- 물리적 데이터 모델은 논리 데이터 모델을 사용하고자 하는 각 DBMS의 특성을 고려하여 데이터베이스 저장 구조(물리 데이터 모델)로 변환하는 모델
- 테이블(Table), 인덱스(Index), 뷰(View), 파티션(Partition) 등 객체를 생성
- 응답시간, 저장 공간의 효율화, 트랜잭션 처리를 고려하여 설계
- 성능 측면에서 반 정규화를 수행
- 레코드 집중의 분석 및 설계
- 저장 레코드 양식 설계
- 접근 경로(Access Path) 설계