인생이 쓰다!인생쓰

공부/정보처리기사

정보처리기사 실기 정리 3일차 ( 데이터 입출력 구현 )

Johnal 2021. 3. 15. 16:54
반응형

 

*정리는 2020시나공 문제집을 참고했습니다.*

 

데이터 모델

현실 세계의 정보들을 컴퓨터에 표현하기 위해서 단순화 , 추상화하여 체계적으로 표현한 개념적 모형입니다.

 

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

- 속성 ( Atribute) : 데이터의 가장 작은 논리적 단위로서 파일 구조상의 데이터 항목 또는 데이터 필드에 해당함

- 관계 ( Relationship ) : 개체 간의 관계 또는 속성 간의 논리적인 연결을 의미함

 

데이터 모델의 종류

- 개념적 데이터 모델 : 현실 세계에 대한 인간의 이해를 돕기 위해 현실 세계에 대한 인식을 추상적 개념으로 표현하는 과정

 

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

 

- 물리적 데이터 모델 : 실제 컴퓨터에 데이터가 저장되는 방법을 정의하는 물리 데이터베이스 설계 과정

 

 

데이터 모델에 표시할 요소

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

 

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

 

- 제약 조건 ( Constraint ) : 데이터베이스에 저장될 수 있는 실제 데이터의 논리적인 제약 조건 

 

 

이상( Anomaly )

테이블에서 일부 속성들의 종속으로 인해 데이터의 중복이 발생하고 , 이 중복으로 인해 테이블 조작 시 문제가 발생하는 현상을 의미합니다.

 

*이상의 종류*

- 삽입 이상 :테이블에 데이터를 삽입할 때 의도와는 상관없이 원하지 않은 값들로 인해 삽입할 수 없게 되는 현상

- 삭제 이상 :테이블에서 한 튜플을 삭제할 때 의도와는 상관없는 값들도 함께 삭제되는, 즉 연쇄 삭제가 생기는 현상

- 갱신 이상 :테이블에서 튜플에 있는 속성 값을 갱신할 때 일부 튜플의 정보만 갱신되어 정보에 불일치성이 생기는 현상

 

 

함수적 종속성

데이터들이 어떤 기준값에 의해 종속되는 현상, 이 때, 이 기준값을 결정자(Determinant)라 하고 종속되는 값을 종속자(Dependent)라고 한다.

  X  Y  (X : Determinant, Y : Dependent)

 

-완전 함수적 종속 : 완전 함수적 종속이란, 종속자가 기본키에만 종속되며, 기본키가 여러 속성으로 구성되어 있을경우 기본키를 구성하는 모든 속성이 포함된 기본키의 부분집합에 종속된 경우입니다.

-부분 함수적 종속 : 부분 함수적 종속이란, 릴레이션에서 종속자가이 기본키가 아닌 다른 속성에 종속되거나, 기본키가 여러 속성으로 구성되어 있을경우 기본키를 구성하는 속성 중 일부만 종속되는 경우입니다.

-이행적 함수적 종속 : 한 릴레이션의 속성 X, Y, Z가 주어졌을 때 함수적 종속성 X  Y와 Y  Z가 성립되면 논리적 결과로 X  Z가 성립한다. 이 때 속성 Z는 X에 이행적 함수적 종속성이라고 한다.

 

정규화 ( Normalization )

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

 

정규화 과정

 

반정규화 ( Denormalization ) 

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

 

*반정규화 방법*

테이블 통합, 테이블 분할 , 중복 테이블 추가 ,중복 속성 추가 

 

 

 

인덱스 ( Index )  

데이터 레코드를 빠르게 접근하기 위해 ( 키 값, 포인터 ) 쌍으로 구성되는 데이터 구조이다. 

- 트리 기반 인덱스 : 인덱스르 저장하는 블록들이 트리 구조를 이루고 있음

- 비트맵 인덱스 : 인덱스 컬럼의 데이터를 Bit 값인 0 또는 1로 변환하여 인덱스 키로 사용하는 방법

- 함수 기반 인덱스 : 컬럼의 값 대신 컬럼에 특정 함수나 수식을 적용하여 산출된 값을 사용함

- 비트맵 조인 인덱스 : 다수의 조인된 객체로 구성된 인덱스로 , 단일 객체로 구성된 일반적인 인덱스와 액세스 방법이 다름

- 도메인 인덱스 : 개발자가 필요한 인덱스를 직접 만들어 사용하는 것으로 , 확장형 인덱스라고도 함 

 

뷰( View )  

사용자에게 접근이 허용된 자료만을 제한적으로 보여주기 위해 하나 이상의 기본 테이블로부터 유도된, 이름을 가지는 가상 테이블이다.  저장장치 내에 물리적으로 존재하지 않지만 사용자에게는 있는 것처럼 간주됩니다.

 

 

트랙잭션( Transaction )  

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

 

-원자성 ( Atomicity ) :  트랜잭션의 연산은 데이터베이스에 모두 반영되도록 완료되든지 아니면 전혀 반영 되지 않도록 복구되어야함

 

-일관성 ( Consistency ) : 트랜잭션이 그 실행을 성공적으로 완료하면 언제나 일관성 있는 데이터베이스 상태로 변환함

 

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

 

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

 

클러스터 ( Cluster ) 

데이터 저장 시 데이터 액세스 효율을 향상시키기 위해 동일한 성격의 데이터를 동일한 데이터 블록에 저장하는 물리적 저장 방법입니다. 

파티션 ( Patition ) 

대용량의 테이블이나 인덱스를 작은 논리적 단위로 나누는 것을 말합니다.

 

*파티셔닝 방식에 따른 파티션의 종류*

범위 분할, 해시 분할, 조합 분할

 

-인덱스 파티션 : 파티션된 테이블의 데이터를 관리하기 위해 인덱스를 나눈 것

 

 

728x90
반응형