[정보처리기사] 3과목 데이터베이스 구축 - 헷갈리는 개념 정리

2022. 2. 22. 16:44정보처리기사/필기

728x90
반응형

지극히 주관적인 정리입니다. 과목 전체를 개념 정리한 것이 아닙니다.

 

상시 수정됩니다.


트랜잭션의 특성

원자성 -> 트랜잭션 연산은 DB에 모두 반영 Commit 되든 아니면 반영 안 되어 Rollback 되든 한다.

일관성 -> 트랜잭션이 그 실행을 성공적으로 완료하면 언제나 일관성 있는 DB 상태로 변환

독립성 -> 둘 이상 트랜잭션이 동시 실행될 경우 타 트랜잭션의 연산에 낄 수 없다.

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


Key

기본키 (Prime Key) -> 후보키 중에서 특별히 선정된 주키이며 한 릴레이션에서 특정 튜플을 유일하게 구별할 수 있는 속성, 중복과 NULL 금지

대체키 (Alternate Key) -> 후보키가 둘 이상일 때 기본키를 제외한 나머지 == 보조키

슈퍼 키 (Super Key) -> 한 릴레이션 내의 속성들의 집합으로 구성된 키로서, 릴레이션을 구성하는 모든 튜플에 대한 유일성은 만족시키지만 최소성은 만족시키지 못한다.

외래 키 (Foreign Key) -> 다른 릴레이션의 기본키


Locking Granularity

로킹

-> 병행 제어 기법 종류 중 하나

-> 직렬화 기법

-> DB, 파일, 레코드 등은 로킹 단위가 될 수 있음

-> 한 번에 로킹 할 수 있는 객체의 크기를 로킹 단위라고 함

 

로킹 단위가 작을경우

-> 데이터 베이스 공유도 증가

-> 로킹 오버헤드 증가

-> 로크의 수 증가

-> 병행성 수준이 높아짐

 

로킹 단위가 클 경우

-> 데이터 베이스 공유도 감소

-> 로킹 오버헤드 감소

-> 로크의 수 감소

-> 병행성 수준이 낮아짐


Anomaly

이상의 종류에는 삽입 이상, 삭제 이상, 갱신 이상만 존재


정규화

하나의 릴레이션에 하나의 의미만 존재할 수 있도록 릴레이션을 분해하는 과정

-> 정규화 함으로써 얻는 효과는 자료의 저장 공간을 최소화하고 자료 불일치를 최소화하며 자료 구조를 안정화 시킴

-> 이상 현상을 방지하는 효과

 

비정규화 

 

↓ 원자 값이 아닌 도메인 분해

 

1NF

 

↓ 부분 함수 종속 제거

 

2NF

 

↓ 이행 함수 종속 제거

 

3NF

 

↓ 결정자가 후보 키가 아닌 함수 종속 제거

 

BCNF

 

↓ 가중치 종속 제거

 

4NF

 

↓ 후보 키를 통하지 않은 조인 종속 제거

 

5NF

 

쉽게 외우기 -> 도메인 + 부분 함수 + 이행 함수 + 결정자 + 가중치 + 조인 종속 = '도 부이 결다 조'


분산 데이터 목표

위치 투명성 (location Trasparency) -> 데이터 베이스의 실제 위치를 알 필요 없이 단지 데이터 베이스의 논리적인 명칭만으로 엑세스할 수 있음

중복 투명성 (replication Trasparency) -> 데이터가 여러 곳에 중복되어 있더라도 사용자는 마치 하나의 데이터만 존재한는 것 처럼 사용 가능, 시스템은 자동으로 여러 자료에 대한 작업 수행

병행 투명성 (Concurrency Trasparency) -> 다수의 트랜잭션이 동시에 실현되더라도 그 결과는 영향을 받지 않음

장애 투명성 (failure Trasparency) -> 트랜잭션, DBMS, 네트워크, 컴퓨터 장애에도 트랜잭션을 정확히 처리함


SQL

DDL (데이터 정의어): CREATE, ALTER, DROP
DML (데이터 조작어): SELECT, INSERT, UPDATE, DELETE
DCL (데이터 제어어): GRANT, REVOKE

728x90
반응형