안녕하세요
노리터 밍띠입니다
요번 게시물은 서술형 + 단답형 문제 대비
정보처리기사 실기
데이터베이스 파트 부분입니다.
이번 정보처리기사 실기 18년 2회 시험에는
서술형 문제가 출제되지 않았으나,
COMMIT,ROLLBACK 등의 명령어가
실제 답안으로 출제되었습니다.
참고하시어 준비하시는데 도움 되시길 바랍니다.
인쇄용 pdf 파일을 제공하고 있으니
원하시는 분들은 댓글에 이메일 남겨주세요!
(pdf 파일은 모든 파트가 포함되어 있습니다.)
(더이상 배포하지 않습니다!)
<데이터베이스>
[기출]
1. 데이터베이스에서 데이터 마이닝과 군집화에 대하여 간략히 설명하시오
-
데이터 마이닝(Data Mining)은 데이터 웨어하우스에서 통계적 규칙이나 패턴을 분석하여 실제로 존재하지 않는 정보를 얻어내기 위해 각 데이터의 상관관계를 분석하는 기법으로 지식발견프로세스라고도 한다.
-
군집화(Clustering)는 데이터들을 유사한 특성을 지닌 몇 개의 소그룹으로 분할하는 작업을 뜻한다. 다른 데이터 마이닝 작업을 위한 선행 작업으로서의 역할을 수행하는 경우가 많다.
2. 데이터베이스에서 동시에 여러 개의 트랜잭션이 실행 되는 경우를 병행 실행이라고 한다. 이와 관련된 병행 제어의 개념에 대해 간략히 설명하고 대표적인 병행 제어의 방법인 로킹 기법에 대해 설명하시오.
-
병행 제어(Concurrency Control) : 동시에 수행되는 트랜 잭션 들을 일관성있게 처리하기 위해 제어하는 것으로 데이터베이스 공유, 일관성, 시스템 활용도를 최대화하고 사용자에 대한 응답시간을 최소화 하는데 목적이 있다. 대표적인 병행 제어 기법의 종류로는 로킹기법, 낙관적기법, 타임스태프기법이 있다.
-
로킹 기법(Locking) : 트랜잭션의 병행 실행 시 하나의 트랜잭션이 사용하는 데이터베이스 내의 데이터를 다른 트랜잭션이 접근하지 못하게 하는 것을 말한다. 하나의 트랜잭션이 실행될 때에는 ‘LOCK’을 설정해 다른 트랜잭션이 데이터에 접근하지 못하도록 잠근 후 실행하고, 실행이 완료되면 ‘UNLOCK’을 통해 해제한다.
3. 데이터베이스의 논리적 데이터 모델링 과정에서 종속으로 인한 이상 문제를 해결하고, 무결성을 유지하면서 릴레이션을 분해하는 정규화를 수행한다. 이와 관련하여 물리적 데이터 모델링 과정에서의 비정규화에 대하여 간략히 설명하시오.
-
데이터베이스를 설계하는 과정에서 여러 개의 릴레이션으로 나뉘어 있는 릴레이션은 실제 정보 검색시 필요한 자료를 자주 참조함으로 인해 성능의 저하를 초래하기도한다. 이와 같이 분리된 릴레이션을 물리적 모델링 과정에서 실제 작업의 처리성능을 향상시키기 위하여 중복을 허용하고라도 다시 통합하거나 분할하여 구조를 재조정하는 것을 말한다.
-
비정규화(Denormalization) 는 정규화의 원칙을 반하여 중복데이터를 허용해 주는 방식이다. 정규화 작업은 유지보수를 효율적이고 쉽게 해주는 반면 테이블에 과한 조인을 발생시켜 성능을 떨어뜨리는 요인이 되기도 하기 때문에 구현 시스템의 성능을 고려하여 분석 단계에서 실시한 정규화 작업을 역으로 비정규화 하는 작업을 실행해야한다. 비정규화는 데이터의 접근 속도를 향상시키기 위해 실행된다.
4. 데이터베이스에서 이상현상의 발생 원인에 대해 간략히 설명하고, 이상의 종류 세가지를 쓰시오.
-
원인 : 이상현상은 데이터베이스의 논리적 설계시 하나의 릴레이션에 많은 속성들이 존재하여, 데이터 중복과 종속으로 인해 발생되는 문제점을 말한다. 이상현상은 릴레이션을 처리하는데 여러가지 문제를 초래하게된다.
-
종류 : 삽입이상, 삭제이상, 갱신이상
5. 데이터베이스에서 작업의 논리적 단위인 트랜잭션은 COMMIT 되거나 ROLLBACK 되어야한다. COMMIT 개념에 대하여 간략히 설명하시오.
-
트랜잭션의 실행을 성공적으로 완료되었음을 선언하는 SQL명령어이다.
-
SQL명령어로 수행된 결과를 실제 물리적 디스크로 저장하는 SQL 명령어이다.
-
한 작업의 논리적 단위가 성공적으로 끝났고, 데이터베이스가 다시 일관된 상태에 있으며 이 트랜잭션이 행한 갱신 연상이 완료된 것을 트랜잭션 관리자에게 알려주는 연산이다.
6. 데이터베이스에서 트랜잭션은 원자성, 일관성, 격리성, 영속성의 특징을 가지고 있다. 트랜잭션의 특징인 ACID의 개념 중 일관성과 영속성 개념에 대하여 간략히 설명하시오.
-
일관성(Consistency)은 데이터의 내용은 트랜잭션의 무수한 성공과 실패가 반복되더라도 그 일관성이 유지되어야한다는 트랜잭션의 특징이다.
-
영속성(Durability)은 트랜잭션 종료 후 논리적 장애 또는 오류 등으로 데이터의 내용이 변하지 않아야 한다는 트랜잭션의 특징이다.
7. 데이터베이스의 뷰(VIEW)의 개념과 장점에 대하여 간략히 설명하시오.
-
개념 : 뷰는 하나이상의 테이블로부터 유도되어 만들어진 가상 테이블로 처리 과정중의 중간 내용이나 기본 테이블 중 일부 내용을 검색해 보여주거나 별도로 관리하고자 하는 임시 테이블이다.
-
장점 : 뷰는 실제 물리적으로 기억공간을 차지하고 있지 않으며, 논리적 독립성을 제공하고, 데이터 접근제어로 보안성을 향상시킨다.
8. 다음 데이터베이스의 OLAP에서 사용되는 일부 연산에 대하여 간략히 설명하시오.
-
Roll-up : 분석 대상 항목에 대해 한 차원의 계층 구조를 단계적으로 구체적인 내용으로 구분하여 구분된 세부 데이터로부터 요약된 형태의 데이터로 접근하는 기능이다.
-
Drill-down : 분석할 대상 항목에 대해 한차원의 계층 구조를 단계적으로 요약된 형태의 데이터로부터 구체적인 세부 데이터로 접근하는 기능이다.
-
Pivoting : 보고서의 행과 열, 페이지 차원들을 서로 바꾸어 볼 수 있는 기능이다.
-
Slicing : 다차원 데이터의 항목들을 더욱 다양한 각도에서 조회하고 자유롭게 비교하는 기능이다.
9. 데이터 베이스 사용자 중 데이터 베이스 관리자(DBA)의 역할에 대하여 간략히 설명하시오
-
데이터베이스의 스키마를 정의한다.
-
데이터베이스 시스템의 설계 및 조작을 한다.
-
시스템 감시 및 성능의 종합적인 분석과 성능을 개선한다.
-
데이터의 접근 권한과 회복절차를 수립한다.
-
데이터베이스의 구성요소 결정과 내장 저장구조의 정의 및 수정 한다.
-
보안 검사와 무결성 검사 규칙을 정의한다.
-
데이터 사전의 유지 및 관리를 한다
10. 데이터베이스에서 병행 제어기법의 대표적인 기법 중 하나인 2단계 로킹 기법(Two-Phase Locking Protocol)에서의 축소 단계에 대하여 간략히 설명하시오.
-
확장단계 : 트랜잭션 수행에 필요한 데이터 들에 대해 ‘LOCK’을 설정하는 단계이다.
-
축소단계 : 트랜잭션 수행에 사용되었던 데이터들에 대해 더 이상 필요 없이 설정된 ‘LOCK’을 해제하는 단계이다.
11. 데이터베이스에서 병행 제어기법의 타임스태프 기법에 대하여 간략히 설명하시오.
- 타임스태프 기법은 각 트랜잭션이 데이터에 접근할 시간을 미리 지정하여 기억시킨뒤 그 시간의 순서에 따라 순서대로 데이터에 접근하여 수행하는 방법을 말한다. 모든 트랜잭션은 데이터의 접근 시간에 맞춰 수행하므로 교착상태가 발생하지 않는다.
[모의고사]
1. 데이터베이스의 릴레이션의 대표적인 특징 4가지를 간략히 설명하시오
-
튜플들이 모두 상이
-
튜플들은 유일하며 순서는 의미 없다
-
속성간 순서 의미 없음
-
속성은 원자값으로 구성, 분해 불가능
2. 데이터베이스의 대표적인 특징 4가지를 간략히 설명 하시오.
-
계속적인 변화 : 데이터베이스의 내용은 시간이 지남에 따라 항상 최신정보를 유지 할 수 있도록 삽입, 삭제, 갱신이 이루어져 Continuous Evolution의 특성을 가져야한다.
-
동시 공유 : 데이터베이스의 내용은 여러 사용자가 동시에 접근하여 이용 할 수 있도록 Concurrent Sharing이 가능해야 한다.
-
실시간 접근성 : 데이터베이스의 내용은 사용자가 원하면 언제든지 접근할 수 있는 Real-Time Accessibility가 가능하도록 해야 한다.
-
내용에 의한 참조 : 데이터베이스에서 데이터 참조는 데이터베이스에 저장된 위치나 주소가 아닌 보다 쉬운 검색을 위해 데이터 내용, Content Reference 가 가능 해야 한다.
3. 관계데이터 베이스 설계시 고려해야할 중요한 요소로 함수적 종속의 문제로 인한 이상 현상이 있다. 대표적인 이상 현상을 3가지 쓰고, 설명하시오.
-
삭제이상 : 테이블에서 하나의 자료를 삭제하는 경우 그 자료가 포함된 튜플이 삭제됨으로 인해 원하지 않은 자료까지 함께 삭제되어 발생
-
삽입이상 : 삽입하는 과정에서 원하지 않은 데이터가 삽입 된다던지, 삽입하는데 자료가 부족해 삽입이 되지 않아 발생하는 문제
-
갱신이상 : 관계 데이터 베이스의 자료를 갱신하는 과정에서 정확하지 않거나 일부의 튜플만 갱신됨으로 인해 정보가 보호되지 않거나 일관성이 없어져 정확한 정보 파악이 안되는 현상
4. 관계 데이터 베이스에서 릴레이션을 대상으로 하는 연산인 관계 대수와 관계 해석에 대하여 간략히 설명하시오.
-
관계 대수 : 릴레이션에서 사용자가 원하는 결과를 얻기 위해 연산자를 이용하여 표현하는 방법, 결과를 얻기 위한 절차를 표현하기 대문에 절차적 언어라고 한다.
-
관계 해석 : 릴레이션에서 결과를 얻기위한 과정을 표현하는 것으로 연산자 없이 정의하는 방법을 이용하는 비절차적 언어이다.
5. 관계 데이터 베이스에서 튜플을 식별하기 위해 사용하는 속성이나 속성의 집합인 키중 후보키, 기본키, 대체키, 외래키에 대하여 간략히 설명하시오.
-
후보키 : 릴레이션(테이블)에서 각 튜플을 유일하게 식별할 수 있는 속성이나 속성의 집합을 말한다. 후보키가 될 수 있는 조건은 유일성과 최소성을 모두 만족해야한다.
-
기본키 : 후보키 중에서 튜플을 식별하기 위해 특별히 선택된 키를 말한다.
-
대체키 : 후보키 중에서 기본키를 제외한 속성을 말한다.
-
외래키 : 하나의 테이블에서 원하는 자료를 얻지 못하는 경우 다른 테이블을 참조(이용)하기 위해 사용되는 속성을 말하며, 외래 식별자라고도 한다.
6. 통계적인 요약 정보를 분석하여 의사결정에 활용 될 수 있는 OLAP의 대표적인 종류인 ROLAP, MOLAP, HOLAP에 대하여 간략히 설명하시오
-
ROLAP : Relation OLAP은 관계형 데이터 베이스를 기초로한 OLAP구조로 검색어 질의 처리에 드는 시간을 줄이기위해 집계 테이블을 생성,저장 하여 두는 방식의 시스템이며, 대량의 데이터 처리와, 빠른 로딩, 원시데이터 조회가 가능하다.
-
MOLAP : Multidimensional OLAP은 다차원 데이터 베이스를 기초로 한 OLAP 구조로 결과값을 다차원 배열로 저장하여, 다차원의 데이터 베이스를 큐브 형태의 데이터 뷰로 구성하여 다양한 분석을 할 수 있도록 지원한다.
-
HOLAP : 다차원 데이터 베이스와 관계형 데이터베이스가 함께 사용될 수 있도록 MOLAP과 ROLAP의 장점을 혼용한 방식의 OLAP 기술이다.
7. 데이터베이스에 보안 사고가 발생하면… 데이터베이스 보안 위협에 대비하기 위한 기술에 대하여 설명하시오.
답 : 데이터 베이스에 대한 보안 위협을 대비하기 위하여 사용하는 데이터베이스 보안기술에는 3가지가 있다.
-
접근통제 : 허가받은 사용자만 DB에 접근 가능하게 한다.
-
가상테이블 : CREATE VIEW이용하여 가상테이블을 만들어 허가 받은 데이터만 접근 할수 있게 한다.
-
암호화 : 중요 데이터는 암호화 시킨다.
8. 데이터베이스에서 트리거(Trigger)의 개념과 장점을 설명하시오.
-
개념 : 트리거는 참조 관계에 있는 두 테이블에서 하나의 테이블에 삽입,삭제,갱신 등의 연산으로 테이블의 내용이 바뀌었을 때 데이터의 일관성과 무결성 유지를 위해서 이와 관련된 테이블도 연쇄적으로 변경이 이루어질 수 있도록 하는 것을 말한다.
-
장점 : 참조 관계에 있는 테이블을 연속적으로 수정할 수 있으며, 일반적으로 CHECK 제약 보다 더 복잡한 데이터 무결성을 지원 할 수 있는 장점이 있다.
9. 분산 데이터 베이스(Distributed Database)의 장점을 쓰시오.
-
자체적인 처리 능력으로 신속한 서비스 제공
-
점진적 시스템 용량 확장성이 용이
-
신뢰성과 가용성이 높다
-
효율성과 융통성이 있다.
-
지역 자치성이 높다.
10. 데이터베이스에서 트랜젝션이 수행되는 과정 중의 상태도 중 현재 실행중인 실행 상태 이외의 상태들에 대해 간략히 설명하시오.
-
부분완료 : 실행을 모두 마치고, 데이터 베이스에 결과를 저장하기 직전 상태
-
완료 : 트랜잭션의 연산을 정상적으로 마치고, 연산결과를 데이터 베이스에 저장한 상태
-
실패 : 트랜잭션의 실행 중 오류에 인해 더 이상 진행될 수 없는 상태
-
철회 : 트랜잭션의 실행이 실패되어 복귀되는 상태
'다달이 공부 > [18-6] 정보처리기사 실기' 카테고리의 다른 글
[정보처리기사 실기] 소프트웨어/어플리케이션 개발 서술형 정리 (0) | 2018.06.30 |
---|---|
[정보처리기사 실기] 정보 보안 서술형 정리 (1) | 2018.06.30 |
[정보처리기사 실기] 신기술 동향 용어 정리 (2) | 2018.06.30 |
[18년 2회] 정보처리기사 실기 기출문제 공유 (34) | 2018.06.30 |
[18년 1회] 정보처리산업기사 실기 기출문제 (4) | 2018.06.30 |