Self-Development/Study

2022년 정보처리기사 실기 - 데이터 입 출력 구현

JeongKyun 2022. 4. 19.
반응형

1. 데이터 모델에 표시할 요소 3가지

구조 (Structure)
-> 논리적으로 표현된 개체 타입들 간의 관계로서 데이터 구조 및 정적 성질을 표현한다.

연산 (Operation)
-> DB에 저장된 실제 데이터를 처리하는 작업에 대한 명세로서 DB를 조작하는 기본 도구이다.

제약 조건 (Contraint)
-> DB에 저장될 수 있는 실제 데이터의 논리적인 제약 조건

 

2. 개념적 데이터 모델

현실 세계에 대한 인간의 이해를 돕기 위해 현실 세계에 대한 인식을 추상적 개념으로 표현하는 과정이다.

대표적인 개념적 모델로는 E-R 모델이 있다.

 

3. 논리적 데이터 모델

개념적 모델링 과정에서 얻은 개념적 구조를 컴퓨터가 이해하고 처리할 수 있는 컴퓨터 세계의 환경에 맞도록 변환하는 과정이다.

 

 

4. 데이터 모델의 구성요소

개체 (Entity)
-> 개체는 데이터베이스에 표현하려는 것으로 사람이 생각하는 개념이나 정보 단위 같은 현실 세계의 대상체를 말한다.

속성 (Attribute)
-> 속성은 데이터베이스를 구성하는 가장 작은 논리적 단위를 말한다.
속성의 수를 디그리 또는 차수라고 부른다.

관계 (Relationship)
관계는 개체와 개체 사이의 논리적인 연결을 의미한다.
관계에는 개체 간의 관계와 속성 간의 관계가 있다.

 

5. 정규화

 테이블의 속성들이 상호 종속적인 관계를 갖는 특성을 이용하여 테이블을 무손실 분해하는 과정을 말한다.

목적은 가능한 한 중복을 제거하여 삽입, 삭제, 갱신 이상의 발생 가능성을 줄이는 것이다.

 

6. 반 정규화

시스템의 성능을 향상하고 개발 및 운영의 편의성 등을 높이기 위해 정규화된 데이터 모델을 의도적으로 통합, 중복, 분리하여 정규화 원칙을 위배하는 행위를 말한다.

반정규화를 수행하면 시스템의 성능이 향상되고 관리 효율성은 증가하지만, 데이터의 일관성 및 정합성이 저하될 수 있다.

과도한 반정규화는 오히려 성능을 저하시킬 수 있다.

반정규화 방법
테이블 통합
테이블 분할
중복 테이블 추가
중복 속성 추가

 

7. 트랜잭션

DB의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야 할 일련의 연산들을 의미한다.

트랜잭션의 특성 (ACID)
Atomicity(원자성)
> DB에 모두 반영되도록 완료되든지 아니면 아예 안되든지 둘 중 하나는 되야한다.

Consistency(일관성)
> 트랜잭션이 그 실행을 성공적으로 완료하면 언제나 일관성 있는 DB 상태로 변환되어야 한다.

Isolation(독립성)
> 둘 이상의 트랜잭션이 동시에 병행 실행되는 경우 어느 하나의 트랜잭션 실행중에 다른 트랜잭션의 연산이 끼어 들 수 없다.

Durability(영속성)
> 성공적으로 완료된 트랜잭션의 결과는 시스템이 고장나더라도 영구적으로 반영되어야 한다.

댓글

💲 많이 본 글