[정처기 필기] 「3」 | 논리 데이터베이스 설계 - (1.1) 데이터베이스 설계, 데이터 모델의 개념, E-R 모델

728x90

[정처기 필기] 3」 | 논리 데이터베이스 설계 - (1.1) 데이터베이스 설계, 데이터 모델의 개념, E-R 모델

「1」 소프트웨어 설계

「2」 소프트웨어 개발

> 「3」 데이터베이스 구축

- > 논리 데이터베이스 설계, 물리 데이터베이스 설계, SQL 응용, SQL 활용, 데이터 전환

「4」  프로그래밍 언어 활용

「5」  정보시스템 구축 관리

 

> 1 데이터베이스 설계

> 2 데이터 모델의 개념

> 3 E-R 모델

4 관계형 데이터베이스의 구조

5 관계형 데이터베이스의 제약 조건 - 키(Key)

6 관계형 데이터베이스의 제약 조건 - 무결성

7 관계대수 및 관계해석

8 정규화(Normalization)

9 반정규화(Denormalization)

10 시스템 카탈로그

1. 데이터베이스 설계

데이터베이스 설계의 개념

 

요구를 분석하여, 데이터베이스 구조에 맞게 변형 후 특정 DBMS로 데이터베이스 구현하여 사용자에게 제공

 

데이터베이스 설계 시 고려사항

 

무결성

: 삽입, 삭제, 갱신 등 연산 후 데이터베이스에 저장된 데이터의 제약 조건 항상 만족

일관성

: 데이터베이스에 저장된 데이터 사이나, 특정 질의에 대한 응답일정

회복

: 시스템에 장애 발생 시 전 상태로 복구 가능

보안

: 불법 데이터의 노출, 변경이나 손실로부터 보호

효율성

: 응답시간 단축, 시스템 생산성, 저장 공간 최적화 가능

데이터베이스 확장

: 데이터베이스 운영에 영향 주지 않으며, 지속적으로 데이터 추가 가능

 

데이터베이스 설계 순서

 

1 요구 조건 분석

: 요구 조건 명세서 작성

2 개념적 설계

: 개념 스키마, 트랜잭션 모델링, E-R 모델

3 논리적 설계

: 목표 DBMS에 맞는 논리 스키마 설계, 트랜잭션 인터페이스 설계

4 물리적 설계

: 목표 DBMS에 맞는 물리적 구조의 데이터로 변환

5 구현

: 목표 DBMS의 DDL(데이터 정의어)데이터베이스 생성, 트랜잭션 작성

 

요구 조건 분석

 

사용자의 필요한 용도를 파악

 

- 데이터베이스 사용자의 수행 업무, 필요한 데이터의 종류, 용도, 처리 형태, 흐름, 제약 조건 등 수집

- 정보를 바탕으로 요구 조건 명세 작성

 

개념적 설계(정보 모델링, 개념화)

 

정보의 구조를 얻기 위해 현실 세계의 무한성, 계속성을 이해하고 타인과 통신하기 위해 현실 세계에 대한 인식추상적 개념으로 표현

 

- 개념 스키마 모델링, 트랜잭션 모델링 병행 수행

- 요구 조건 명세를 DBMS에 독립적인 E-R 다이어그램으로 작성

- DBMS에 독립적인 개념 스키마 설계

 

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

 

현실 세계에서 발생하는 자료를 물리적 저장장치에 저장하도록 변환하기 위해 특정 DBMS가 지원하는 논리적 자료 구조로 변환

 

- 개념 세계의 데이터를 필드로 기술된 데이터 타입, 데이터 타입 간의 관계로 표현되는 논리적 구조의 데이터로 모델화

- 개념 스키마평가 / 정제, DBMS에 서로 다른 논리적 스키마 설계

- 트랜잭션의 인터페이스 설계

- 관계형 데이터베이스라면 테이블 설계

 

물리적 설계(데이터 구조화)

 

논리적 구조로 표현된 데이터를 물리적 장치에 저장하도록 물리적 구조의 데이터로 변환

 

- 다양한 데이터베이스 응용에 처리 성능을 얻기 위해 데이터베이스 파일저장 구조 / 엑세스 경로 결정

- 저장 레코드 양식, 순서, 접근 경로, 조회가 집중되는 레코드 등 사용하여 데이터가 저장되는 방법을 묘사

- 고려사항 : 트랜잭션 처리량, 응답 시간, 디스크 용량, 저장 공간의 효율화

 

데이터베이스 구현

 

논리적 설계 단계, 물리적 설계 단계에서 도출된 데이터 베이스 스키마파일로 생성

 

- 특정 DBMS의 DDL(데이터 정의어)을 이용하여 데이터베이스 스키마를 기술 후 컴파일하여 빈 데이터베이스 파일 생성하여 데이터 입력

- 응용 프로그램을 위한 트랜잭션 작성

- 데이터베이스 접근을 위한 응용 프로그램 작성

2. 데이터 모델의 개념

데이터 모델의 정의

 

현실 세계의 정보들을 컴퓨터에 표현하기 위해 단순화, 추상화하여 표현한 개념적 모형

 

- 데이터, 데이터의 관계, 데이터의 의미 / 일관성, 제약 조건 등 기술하기 위한 개념적 도구의 모임

- 현실 세계데이터베이스에 표현하는 중간 과정이며, 설계 과정에서 데이터 스키마를 논리적으로 표현하기 위해 사용하는 지능적 도구

- 데이터 모델 구성 요소 : 개체, 속성, 관계

- 데이터 모델 종류 : 개념적 데이터 모델, 논리적 데이터 모델, 물리적 데이터 모델

- 데이터 모델에 표시한 요소 : 구조, 연산, 제약 조건

 

데이터 모델의 구성 요소

 

개체(Entity) 

: 데이터베이스에 표현하려는 것, 개념이나 정보 단위같은 현실 세계의 대상체

속성(Attribute)

: 데이터의 가장 작은 논리적 단위, 데이터 항목 또는 데이터 필드에 해당

관계(Realtionship)

: 개체 간 관계, 속성 간 논리적인 연결

 

>관계의 형태<

 

일 대 일(1 : 1) : A의 원소B의 원소 한 개와 대응

일 대 다(1 : N) : A의 원소만 B의 원소 여러 개와 대응

다 대 다(N : M) : A의 원소B의 원소 서로 여러 개와 대응

 

개념적 데이터 모델

 

현실 세계에 대한 인식추상적 개념으로 표현

 

- 속성들로 기술된 개체 타입개체 타입 간 관계를 이용하여 현실 세계 표현

- 현실 세계에 존재하는 개체를 이해할 수 있는 정보 구조로 표현하므로 정보 모델이라고도 함

- 대표적 개념적 데이터 모델로 E-R 모델이 있음

 

논리적 데이터 모델

 

개념적 구조를 컴퓨터 세계의 환경에 맞도록 변환

 

- 데이터 타입데이터 타입간 관계를 이용하여 현실 세계 표현

- 단순하게 데이터 모델이라 함

- 특정 DBMS특정 논리적 데이터 모델 하나만 선정하여 사용

- 데이터 간 관계 표현 방식에 따라 관계 모델, 계층 모델, 네트워크 모델로 구분

 

데이터 모델에 표시할 요소

 

구조(Structure)

: 논리적으로 표현된 개체 타입들 간 관계테이터 구조 / 정적 성질

연산(Operation)

: 데이터베이스에 저장된 실제 데이터처리하는 작업의 명세, 데이터베이스 조작하는 기본 도구

제약 조건(Constraint)

: 데이터베이스에 저장될 수 있는 실제 데이터구조연산에서의 제약 조건

3. E-R 모델

E-R(Entity-Relationship, 개체-관계) 모델의 개요

 

피터 첸(Peter Chen)에 의해 제안되고 기본 구성 요소 정립

 

- 개체개체 간 관계기본 요소로 이용, 현실 세계의 무질서한 데이터개념적 논리 데이터로 표현

- 개체 타입, 관계 타입을 이용하여 현실 세계를 개념적으로 표현하는 개념적 설계 단계에서 제작

- 데이터개체(Entity), 관계(Relationship), 속성(Attribute)으로 묘사

- 특정 DBMS를 고려하지 않음

- E-R 다이어그램으로 표현, 관계 유형제한 없이 나타냄

- 최초에는 개체, 관계, 속성으로 구성되었지만 확장된 모델발전

 

E-R 다이어그램(Entity-Relationship Diagram)

 

E-R 모델의 기본 아이디어를 시각적으로 표현하고 실체 간 관계, 조직, 사용자, 프로그램, 데이터 등 시스템 내 역할을 가진 모든 실체를 표현

 

사각형 : 개체(Entity) 타입

마름모 : 관계(Relationship) 타입

타원 : 속성(Attribute)

이중 타원 : 다중값 속성(복합 속성)

밑줄 타원 : 기본키 속성

--

복수 타원 : 복합 속성

---○
    /  \
    
 

관계 : 개체 간 관계에 대한 대응수를 선 위에 기술

   n      m
□--◇--
 

선, 링크, 개체 타입과 속성을 연결

---------

 

 

 

 

 

 

 

 

출처 | <시나공> 정보처리기사 필기 2024 기본서 (길벗알앤디)

728x90