본문 바로가기
자격증/정보처리기사

2021년 8월 8일 - 정보처리기사 실기 2장 데이터 입출력 구현

by 철제백조 2021. 8. 8.

● 본 기록은 '코딩하는 핑가님'의 허락을 받고 블로그에 정리된 글을 그대로 필사했음을 밝힙니다.

→  https://ss-o.tistory.com/96?category=945579

 

정보처리기사 실기) 2장 데이터 입출력 구현

* 이 글은 블로그 별랑님의 글을 참고로 작성했습니다. blog.naver.com/srang_/222055655408 1. 데이터 모델링 절차 * 개념적 데이터 모델링 -> 논리적 데이터 모델링 -> 물리적 데이터 모델링 - 개념적

ss-o.tistory.com

 


 

1. 데이터 모델링 절차

* 개념적 데이터 모델링 - 논리적 데이터 모델링 - 물리적 데이터 모델링  요개논물

- 개념적 데이터 모델링 : 현실 세계의 인식을 추상적인 개념으로 모델링

- 논리적 데이터 모델링 : 개념적 구조를 컴퓨터가 이해할 수 있는 형태로 변환

 

 

1) 논리 데이터 모델링 

- 업무영억의 업무 데이터 및 규칙을 구체적으로 표현

- 특징 : 정규화, 완정성, 독립성 포용성  정독완포

- 속성 : 개체(사각형), 속성(동그라미), 관계(마름모)  계속관

 

 

2) 정규화(서술형)

- 관계형 데이터베이스 설계 시 중복을 최소화하여 데이터를 구조화하는 과정

 

* 이상현상(서술형) : 데이터의 중복성으로 인해 테이블을 조작할 때 발생하는 비합리적인 현상  삽상갱

- 삽입이상 : 정보 저장 시 불필요한 세부사항을 입력해야 하는 경우

- 삭제이상 : 삭제시 원치않는 정보까지 삭제되지 경우

- 갱신이상 : 중복 데이터에서 특정 부분만 수정되어 중복된 값이 모순을 일으키는 경우

 

* 정규화 단계

- 1NF(제1정규화) : 테이블 내의 속성값원자값을 가져야한다.

- 2NF(제2정규화) : 부분 함수 종속성을 제거해야 한다.

- 3NF(제3정규화) : 이행 함수 종속성 제거해야 한다.

- BCNF : 결정자의 종속성을 제거하고 모든 결정자가 후보키 집합에 속한 정규형

- 4NF(제4정규화) : 다중값 종속을 제거해야 한다.

- 5NF(제5정규화) : 조인 종속성을 제거해야 한다.

 

 

3) 물리 데이터 모델링

논리 데이터 모델링을 DBMS 특성 및 성능을 고려하여 구체화시킨 모델

 

<모델링 절차>

(1) 개체 → 테이블

(2) 속성 → 칼럼 

(3) UID → PK(Primary key)

(4) 관계 → 외래키

(5) Column 길이 및 유형 정의

(6) 반정규화(2020 1회 실기 기출) : 시스템의 성능 향상을 위해 수행되는 의도적인 정규화 원칙 위배 행위

 

* 참조 무결성 제약 조건 : 릴레이션과 릴레이션 사이에 대해 참조의 일관성을 보장하기 위한 조건

 

 

* 인덱스

- 검색 연산의 최적화를 위해 키값과 포인터의 쌍으로 구성되는 데이터 구조

구조

- 적용기준 : 분포도가 10~15% 이내

특징

- 분포도가 좋은 칼럼은 단독으로 생성

- 자주 조합되어 사용되는 칼럼은 결합 인덱스로 형성 

- 지나치게 많은 인덱스는 오버헤드 발생 가능

 

 

*

- 사용자에게 허용된 정보만 보여주기 위해 하나 이상의 테이블로부터 유도된 논리적인 가상 테이블

- 속성 : REPLACE, FORCE, NOFORCE - 논리적인 독립성을 제공하고, 접근 제어를 통한 자동 보완 기능 제공

 

 

* 클러스터- 데이터에 접근 효율을 높이기 위해 동일한 성격의 데이터를 같은 데이터 블록에 저장하는 물리적 저장 방법- 특징 : 조회 속도는 향상시키지만 삽입, 삭제, 수정의 기능은 저하 - 종류 : 단일 테이블 클러스터링, 다중 테이블 클러스터링

 

 

* 파티셔닝  레해리컴

- 대용량의 테이블을 작은 논리적인 단위인 파티션으로 나누는 것- 레인지 파티셔닝 : 연속되는 숫자나 날짜 기준으로 파티셔닝- 해시 파티셔닝 : 파티션 키의 해시 함수 값으로 파티셔닝- 리스트 파티셔닝 : 데이터에 대한 명시적 제어가 가능한 파티셔닝- 컴포지트 파티셔닝 : 범위 분할 이후, 해시 함수를 적용하는 파티셔닝- 장점 : 성능 향상, 가용성 향상, 백업 기능  성가백합

 

 

4) 데이터 조작 프로시저  프함패트

- 저장된 프로시저, 저장된 함수, 저장된 패키지, 트리거

 

 

* 프로시저

- SQL을 이용해 생성된 데이터를 조작하는 프로그램

- PL/SQL : 표준 SQL을 기반으로 Oracle에서 개발한 데이터 조작 언어

- JDBD : 자바에서 DB를 사용할 수 있도록 연결해주는 인터페이스

 

* 프로시저 생성 SQL문

CREATE OR REPLACE

(name IN VARCHAR)

IS BEGIN

- DBMS_OUTPUT : 메시지를 버퍼에 저장하고 버퍼로부터 읽어 오기 위한 인터페이스

- SERVEROUTPUT ON : PL/SQL 처리 결과를 출력

- SHOW ERRORS : PL/SQL 오류 발생 출력

 

 

* APM(Application Performance Monitoring)

- 안정적인 시스템 운영을 위한 성능 모니터링 도구

 

 

5) 데이터 조작 프로시저 최적화

* 옵티마이저 : SQL을 가장 빠르고 효율적으로 수행할 수 있는 최적의 경로 생성

- 실행 계획 : 최적의 처리 경로

 

* RBO : 규칙(Rule) 기반 옵티마이저

* CBO : 비용(Cost) 기반 옵티마이저

댓글