2016. 8. 11. 13:41ㆍ자격증 공부/정보처리기사
[1]DataBase
1. 정보 시스템
1) 일괄 처리 - 순차 접근, 저렴
2) 온라인 실시간 - 사용 효율 낮음, 비쌈
3) 분산 처리 - 네트워크로 연결, 신뢰성 높음, 비쌈
2. DB
1) DB 데이터 종류 4(SOSI)
공용 Shared
운영 Operational
저장 Stored
통합 Integrated
2) DB 특징
Continuous Evolution 최신 데이터 유지
Redundancy Minimize 데이터 중복
Concurrent Sharing 동시 공유
Content Reference 내용으로 접근
+ Data Combination 자료 간 연계성
3) 스키마
(ㄱ) 개념: 전체적 논리 설계도(구성 요소 4: 객체E, 성질A, 관계R, 제약조건Constraints)
(ㄴ) 종류:
1) 외부 : 사용자, P(프로그램) 관련
2) 개념 : 시스템 전체 관련
3) 내부 : 물리 저장 장치 관련(레코드 형식, 순서)
3. DBMS
1) DB 필수 기능 3(DMC)
ㄱ) 정의 Define: 논, 물 구조 Mapping(-> D.D.)
ㄴ) 조작 Manipulate: 데이터 검색, 삽입, 삭제, 변경
ㄷ) 제어 Control: 병행 수행, 회복, 무결성, 보안(CRIS)
2) 기존 파일 처리 시스템 문제점 2
ㄱ) 데이터 종속성: 구조에 따라 응용 P(프로그램) 달라야
ㄴ) 데이터 중복성: 구조에 따라 다른 저장 -> 중복
[2]데이터 모델&DB 설계
1. 데이터 모델링
1) 과정
개체 정의 > 개체 식별(특성화) > 상세화 > 통합(개체간 관련성으로) > 검증
2) 구성요소 3
ㄱ) S: Data의 논리 구조
ㄴ) O: 연산
ㄷ) C: (논리적) 제약 사항
3) E-R 모델 기호
ㅁ : 개체E
마름모 : 관계R
타원 : 속성A
4) 논리적 데이터 모델 종류
ㄱ) 관계형 : 릴레이션 구조(기본키, 외래키로 관계 표현)
ㄴ) 계층형 : 순서 트리(1:N 관계)
ㄷ) 네트워크 : 그래프, 다 대 다(비용 높음) + 오너-멤버 관계
2. 데이터 정규화
1) 이상(Anomaly) 현상(데이터 중복으로 인한)
<종류>
ㄱ) 삭제 - 필요 있는 것까지 물귀신
ㄴ) 삽입 - 필요 없는 것까지 꼽사리
ㄷ) 갱신 - 일관성 문제
2) 정규화(중복 막기 위한 릴레이션 분해 과정)
암기 TIP: (원)래 (부)자(이)었던 여자가 성형 후 (다) (조)아졌다
제1정규형(1NF) : 도메인이 (원)자값
2NF: (부)분적 함수 종속 제거(완전 함수 종속)
3NF: (이)행적 함수 종속 제거
보이스/코드(BCNF): 결정자가 (후)보키가 아닌 것 제거
4NF: (다)치 종속 제거
5NF: (조)인 종속 제거
*Y는 X에 함수 종속적이다: X->Y로 표기
3. DB 설계
1) 순서(개논물 중요)
ㄱ) 요구 조건 분석: 사용자 식별, 범위 설정
ㄴ) 개념적 설계: 모델링
ㄷ) 논리적: 인터페이스 설계
ㄹ) 물리적: 설계 사항 3(레코드 양식, 분포 및 집중, 접근 경로)
ㅁ) 구현: 스키마 작성
[3]관계형 DB
1. 기본 용어
1) 도메인
2. 무결성 종류
1) 도메인: 값이 영역 내에 있어야
2) 개체: NO 중복, NO NULL\
3) 참조: FK는 참조 테이블(원본) 내에 있어야
2. SQL
1) 테이블 종류
기본, 뷰 : DDL에 의해 만들어지는
임시: DML
2) SQL 명령어 분류
ㄱ) DDL
CREATE: 생성
ALTER: 변경
DROP: 제거
ㄴ) DML
SELECT: Data 검색
UPDATE: Data 갱신
INSERT
DELETE
ㄷ) DCL
GRANT: 권한 부여
REVOKE: 권한 해제
COMMIT: 성공 후 종료
ROLLBACK: 실패 복귀 후 종료
[4] DB 고급 기법
1. 트랜잭션
1) 정의: 논리적 기능 단위(마지막에 COMMIT이나 ROLLBACK됨)
2) 특성 4(ACID)
ㄱ) Atomicity(원자성) : ALL OR Nothing
ㄴ) Consistency(일관성) : 무결성(트랜잭션 실행 전후 같음)
ㄷ) Isolation(독립성)
ㄹ) Durability(영속성): 트랜잭션 완료 효과 지속돼야
2. 병행 제어(Concurrency Control)
1) 목적
ㄱ) DB 공유도, 일관성 UP
ㄴ) 시스템 활용도 UP
ㄷ) 응답 시간 DOWN
2) 제약 없는 병행 처리시 문제점(두 뱃사공 비유)
ㄱ) Lost Update: 동시 갱신시 하나가 실종
ㄴ) Inconsistency(모순성): 침범 작업시 결과가 기대와 불일치
ㄷ) Cascading Rollback(연쇄 복귀): 하나만 실패해도 둘다 망함
ㄹ) Uncommited Dependancy(비완료 의존): 하나 실패시 딴 놈이 들이댐(참조함)
3) 병행 처리 제어하기 위해 로킹(Locking) 이용
ㄱ) 단위가 작으면: 병행성 높음, 관리 어려움
ㄴ) 단위가 크면: 병행성 낮음, 관리 쉬움
3. 분산 데이터 시스템
1) 목적: 투명성("몰라도 잘 돌아가도록")
(위치, 중복, 병행, 장애) 투명성
2) 장단점
장점: 공용성, 자치성, 신뢰성
단점: 구축, 개발 비용 UP, 보안성 DOWN
[5] 자료 구조의 기본
1. 분류
1) 선형 VS 비선형(트리, 그래프)
ㄱ) Stack
*LIFO(나중에 들어온 놈 먼저 나감) ex) 쌓아놓은 책 뺄 때
*포인터 1개
*한쪽으로만 입출력 가능
ㄴ) Queue
*FIFO(선입선출) ex) 편의점 음료수
*한쪽은 입력만, 다른 쪽에서는 출력만
*OS 스케쥴링이나 스풀링에 사용
ㄷ) Deque(Double Ended Queue)
*양쪽으로 입출력이 가능
ㄹ) Array(배열)
장점: access 빠르고 간단
단점: 메모리 종속적이라 삽입, 삭제가 어려움
ㅁ) 연결 리스트
장점: 배열의 단점 개선
단점: 느림, 한 번 끊어지면 다음 노드 찾기 힘듬
2. 비선형 구조
1) 트리
ㄱ) 트리의 차수: 차수(자녀 수) 중 제일 큰 것
ㄴ) 트리 운행: Root의 위치에 따라
중위: 좌>R>우
전위: R>좌>우
후위: 좌>우>R
2) 폴리쉬 표기법: 연산자 위치에 따라
중위: 1+2
전위: +1 2
후위: 1 2 +
3. 정렬(내부)
1) 삽입(Insert)
앞쪽 자료와 비교하는데 비교 범위가 한 칸 씩 늘어남
2) 선택(Select)
제일 작은 것 골라서 이동시킴(비교범위는 항상 전체?)
3) bubble
정렬을 맨 뒤부터(선택 방식으로)
4. Hashing: 참조 없이 원하는 레코드에 직접 접근
ㄱ) 해싱 함수: 키 값을 주소로 바꿔줌
ㄴ) 버킷(공간) = 주소 + 레코드
여러 개의 슬롯이 모여 만들어짐
ㄷ) collision: 계산돼 나온 홈 주소가 같은 경우
ㄹ) Synonym 충돌한 레코드의 집합
if 충돌 3번 발생: overflow
5. 파일 구조
1) 순차 파일(SAM: Squential Access Method File) : 논리적 순서 > 물리적 저장
장점: 저렴하고 빠름 -> 일괄 처리용
단점: 검색 효율이 랜덤 방식보다 낮음
2) 색인 파일(ISAM:Indexed-)
장점: 검색 효율 개선
단점: 응답 시간 UP(,색인 처리도 해야 하므로)
* 구역 3가지
ㄱ) 인덱스(마트실: 마스터, 트랙, 실린더)
ㄴ) 기본 Data
ㄷ) 오버플로
'자격증 공부 > 정보처리기사' 카테고리의 다른 글
16년 3회차 정보처리기사 필기 합격! (0) | 2016.08.21 |
---|---|
핵심 정리(시스템 분석) (0) | 2016.08.21 |
핵심 정리(정보통신) (0) | 2016.08.12 |
핵심 정리(운영체제) (1) | 2016.08.12 |
핵심 정리(전자 계산기) (0) | 2016.08.11 |