정보처리기사 2020 실기

[정보처리기사실기] 2. 데이터 입출력 구현 / 핵심 용어 정리

자바칩 프라푸치노 2020. 10. 12. 09:18

 

논리 데이터 저장소 확인

 

1. 논리 데이터 모델링 특성

 포용성, 정규화, 완전성, 독립성

 

2. 논리 데이터 모델링 속성

개체/ 속성/ 관계

 

3. E-R 모델

현실 세계에 존재하는 데이터와 그들 간의 관계를 사람이 이해할 수 있는 형태로 명확하게 표현하기 위해 

가장 널리 사용되고 있는 모델

 

4. E-R다이어그램 기호

개체 □

관계 ◇

속성 ○

다중 값 속성 ◎

관계- 속성 연결 -

 

5. 정규화Normalization

관계형 데이터베이스의 설계에서 중복을 최소화하여 데이터를 구조화하는 프로세스

 

5_1 반정규화Denormalization

정규화된 데이터모델을 통합, 중복, 분리하는 과정

 

 

6. 이상현상

데이터의 중복성으로 인해 릴레이션을 조작할 때 발생하는 비합리적 현상

삽입/ 삭제/ 갱신 이상

 

7. 정규화 단계

1 2 3 BC 4 5 

반부이결다조

 

1정규형 - 반복 속성, 중복 제거/ 원자값으로 구성

2정규형 - 부분함수 종속 제거

3정규형 - 이행함수 종속 제거

보이스코드 정규형 - 결정자함수이면서 후보키가 아닌 것 제거

4정규형 - 다치 종속성 제거

5정규형 - 조인 종속성 제거

 

 


 

■물리데이터 저장소 설계

 

1. 물리 데이터 모델링 

논리 모델을 적용하고자 하는 기술에 맞도록 상세화하는 과정

 

2. 물리 데이터 모델링 변환 절차

개속유관컬반

개체를 테이블로 변환

속성을 컬럼으로 변환

UID를 기본키로 변환

관계를 외래키로 변환

컬럼 유형과 길이 정의

반 정규화 수행

 

3. 테이블 제약조건 설계

참조 무결성 제약 조건 - 제한/ 연쇄 /널값

 

4. 인덱스

검색 연산의 최적화를 위해 데이터베이스 내 열에 대한 정보를 구성한 데이터구조

 

5. 인덱스 적용 기준

인덱스 분포도가 10~15% 이내인 경우 아래 수식 참고

분포도 = (1/ 컬럼값의 종류) * 100
분포도 = ( 컬럼 값의 평균 Row 수) / (테이블의 총 Row수) * 100

 

6. 인덱스 컬럼 선정

분포도가 좋은 컬럼은 단독적으로 생성한다.

자주 조합되어 사용되는 컬럼은 결합 인덱스로 생성한다.

가능한 수정이 빈번하지 않은 컬럼을 선정한다.

 

7. 인덱스 설계시 고려사항

지나치게 많은 인덱스는 오버헤드로 작용한다.

인덱스는 추가 저장 공간이 필요하다.

넓은 범위를 인덱스 처리 시 오히려 전체 처리보다 더 많은 오버헤드 발생시킨다.

 

8. 뷰 속성

REPLACE 

FORCE

NOFORCE

 

9. 클러스터 

대상이 되는 범위의 요소를 몇 개 모은 단위체이다.

 

10. 클러스터 적용 기준

인덱스의 단점을 해결한 기법으로 분포도가 넓을수록 유리하다.

액세시 효율 향상을 위한 물리적 저장 방법

저장 공간의 절약 가능

테이블이 빈번하게 조인을 일으킬때 활용

 

11. 클러스터 설계 시 고려사항

검색 효율은 높여주나 입력, 수정, 삭제 시는 부하가 증가

UNION, DISTINCT, ORDER BY, GROUP BY가 빈번한 컬럼이면 검토 대상이다.

수정이 자주 발생하지 않는 컬럼은 검토 대상이다.

조인이 많아 문제가 발생되는 경우는 다중 테이블 클러스터링을 고려한다.

 

12. 파티션의 종류

레인지/ 해시/ 리스트/ 컴포치트

 

13. 파티션의 장점

성능 향상, 가용성 향상, 백업 가능, 경합 감소

 

14. 디스크 구성 설계

정확한 용량을 산정하여 디스크 사용의 효율을 높인다.

업무량이 집중되어 있는 디스크를 분리하여 설계한다.

입출력 경합을 최소화 하여 데이터 접근 성능을 향상시킨다.

 

 

15. 프로시저

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

데이터베이스 내부에 저장되고 일정한 조건이 되면 자동으로 수행된다.

 

16. PL/SQL

표준 SQL을 기본으로 오라클에서 개발한 데이터 조작 언어

 


17. APM (Application Performance Monitoring)

안정적인 시스템 운영을 위해 부하량, 접속자 파악 및 장애 진단 등을 목적으로 하는 성능 모니터링 도구

 

18. 옵티마이저

SQL을 가장 빠르고 효율적으로 수행할 최적의 처리경로를 생성해주는 DBMS내부의 핵심 엔진

 

19. RBO/ CBO

규칙 기반 옵티마이저/ 비용 기반 옵티마이저

 

20. 힌트

실행하려는 SQL문에 사전에 정보를 주어서 SQL문 실행에 빠른 결과를 가져오는 효과를 만드는 문법

 

 

 

728x90