AngelPlayer`s Diary


해당 포스트는 제가 정보처리기사를 준비하면서 공부한 내용을 요약한 문서입니다.

요약한 내용은 대체적으로 이전 기출문제를 풀기 위해서 알아야 할 중요한 개념 중심으로 정리하였습니다.

일부 임의로 요약한 내용이나 암기를 쉽게 하기 위해서 개념이 조금 틀리지만 수정한 내용이 있을 수 있습니다.

각 개인마다 공부 방식이 다르니 해당 포스트의 내용을 무조건 맹신하기보다는 참고하시는 방법을 권장 드립니다. 

오늘도 공부하시느라 애쓰시는 모든 분들에게 좋은 결과가 있으시길 바랍니다.


(해당 포스트는 시나공, 수제비 정보처리기사 실기 책을 참고하여 작성하였습니다.)

(포스트 내용을 개인 공부를 위해서 로컬 저장소에 저장하는 것은 가능하나,

내용을 그대로 복사하여 다른 곳에 재업로드하는 것은 자제해주시면 감사하겠습니다.)

 

 

 

정규형 : 도부이걸다조

도메인이 원자값

부분적 함수 종속 제거

이행적 함수 종속 제거

결정자 모두 후보키

다치 종속 제거

조인 종속성 이용

 

정규화는 논리적 설계 단계에서 수행함

 

 

릴레이션 :

Attribute(속성) :

튜플 :

 

 

트랜잭션 속성

Atom(원자성) : 모두 반영되거나, 아무것도 반영되지 않거나

Consist(일관성) : 시스템의 고정 요소는 항상 일정해야 함

Isolation(독립성) : 하나가 연산중이면 끼어들 수 없음

Durability(영속성) : 완료된 결과는 영구적으로 반영됨

 

 

병행 제어 : 로킹(lock), 타임 스탬프(시간표), 최적 병행 수행(read를 제어), 다중 버전 기법(시간표를 갱신하여 사용)

 

 

로킹 제어

병행 제어에서 한 번에 로킹할 수 있는 객체의 크기

DB, 파일, 레코드, 필드 등이 로킹 단위가 될 수 있음

크기가 크면 병행수준이 떨어져 DB 공유도가 줄어듦

단위가 작아지면 로킹 오버헤드가 증가함

 

 

개체 무결성 : 기본키가 Null이 아니어야 함

도메인 무결성 : 특정 속성의 값이 도메인에 속한 값이어야 함

 

 

자체 인덱스를 가질 수 없음

정의를 변경할 수 없음

삽입, 갱신, 삭제 연산 시 제약이 따름

 

 

연기 갱신 기법 : 완료 시 DB에 반영, log에 기록, redo 작업만 가능함

즉시 갱신 기법 : 즉시 DB 반영, log 기록, redo, undo 작업 가능

순수 관계 연산자 : Select(σ : 조건), Project(π : 추출), Join(: 공통 속성 중심으로 묶음), Division(÷)

 

 

CRUD : 생산, 읽기, 갱신, 연산으로 프로세스와 테이블간에 매트릭스를 만들어서 트랜잭션을 분석하는 것

분석을 통해 과부하 채널 탐지 및 분산으로 타임아웃 오류를 방지

 

 

반정규화 : 정규화 데이터를 중복, 통합, 분리시켜 시스템의 성능 향상 및 개발 운영 단순화

 

 

DLL : CREATE, ALTER, DROP

DML : SELECT, INSERT, DELETE, UPDATE

DCL : GRANT, REVOKE, COMMIT, ROLLBACK

 

 

슈퍼키 : 속성들의 집합으로 이루어짐 (학번 + 주민번호), 유일성 o, 최소성 x

학번과 주민번호는 각각 유일성을 만족하여 구분이 가능하기 때문에, 최소성은 만족하지 못함

 

 

: E-R 다이어그램

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

: 레코드

 

 

외부 스키마 : 서브스키마, 사용자 입장의 DB, 논리적 구조

개념 스키마 : 하나만 존재, 권한 규칙 등을 정의, DBA가 관리

내부 스키마 : 물리적 구조, 시스템 설계자, 프로그래머가 관리

 

 

스키마 : 속성의 모음

차수 : 속성의 수

카디널리티 : 튜플의 수

도메인 : 속성에 해당하는 원자들의 집합

카티션 프로덕트 시 : 차수는 더하고, 카디널리티는 곱함

 

 

시스템 카탈로그

시스템에 있는 객체에 관한 정보를 포함하는 데이터베이스

DBMS가 스스로 유지 관리

저장된 정보를 메타 데이터라고 함

내용을 일반 사용자가 볼 수는 있으나, 변경은 불가능함

 

 

분할

범위 분할, 목록 분할, 해시 분할, 조합 분할, 라운드로빈 분할

 

 

NULL 찾을 때 : IS NULL / NULL

NULL이 아닌 것 찾을 때 : IS NOT NULL

 

 

YX에 함수종속이다 == X Y

 

 

DB 실습

SELECT~ FROM~;

INSERT~ INTO~ VALUES~;

DELECT~ FROM~ WHERE~;

UPDATE~ SET~ WHERE~;

 

 

DISTINCT : 중복 제거 (SELECT 뒤에서 사용함)

SELECT DISTINCT 학년 FROM R1;

 

DIVISION : 분해하는 속성을 포함하는 컬럼을 출력 (분해 요소도 제외함)

 

BETWEEN a AND b;

 

 

GRANT UPDATE ON 개체 TO 사용자;

 

 

INTERSECT : 공통된 행만 출력하는 집합 연산자

 

 

 

 

공유하기

facebook twitter kakaoTalk kakaostory naver band