티스토리 뷰



정보처리기사 필기 기출문제 풀이 포스팅을 시작하겠습니다. 12년도 3월에 있었던 정보처리기사 필기 1차 기출문제부터 시작하여 기출문제 풀이 포스팅을 계속해나갈 예정이니 참고하시고 함께 공부하시기 바랍니다. :)

이번 포스팅에서는 12년도 1차 필기 시험의 1과목 데이터베이스 기출문제를 다루도록 하겠습니다. 문제를 풀며 관련된 개념도 함께 정리할것입니다.






1. 속성(Attribute)에 대한 설명으로 틀린 것은?

① 속성은 개체의 특성을 기술한다.

② 속성은 데이터베이스를 구성하는 가장 작은 논리적 단위이다.

③ 속성은 파일 구조상 데이터 항목 또는 데이터 필드에 해당한다.

속성의 수를 'Cardinality'라고 한다.


☞ 정답은 ④번입니다. 데이터베이스에서 속성(Attribute)과 튜플(Tuple)을 기억하셔야 합니다. 속성은 '열'을 의미하고, 튜플은 '행'을 의미합니다. 속성의 개수를 Degree라고 부르며, 튜플(행)의 개수를 Cardinality라고 합니다. 이렇게 가장 기본적인 내용만 알고서도 이 문제는 정답이 ④번임을 쉽게 알 수 있습니다. 속성의 수는 Degree이기 때문에 속성의 수를 'Cardinality'라고 서술한 ④번 선지가 틀린 선지로 판명됩니다.


2. 시스템 카탈로그에 대한 설명으로 틀린 것은?


① 시스템 카탈로그에 저장된 정보를 슈퍼 데이터(Super Data)라고 한다.
② 시스템 자신이 필요로 하는 스키마 및 여러 가지 객체에 관한 정보를 포함하고 있는 시스템 데이터베이스이다.
③ 카탈로그들이 생성되면 자료 사전에 저장되기 때문에 좁은 의미로 자료 사전이라고 한다.
④ 시스템 카탈로그에 대한 사용자의 접근은 읽기 전용으로만 허용된다.

☞ 정답은 ①번입니다. 이 문제는 시스템 카탈로그에 저장된 정보의 형태만 알면 해결할 수 있는 문제입니다. 시스템 카탈로그는 시스템이 필요로 하는 가장 기본적인 데이터베이스, 테이블, 접근 권한 등의 정보를 메타 데이터 형태로 포함하고 있는 시스템 데이터베이스입니다. 따라서 시스템 카탈로그에 저장된 정보를 슈퍼 데이터라고 서술한 ①번 선지는 틀린 선지입니다. 옳게 고치려면 슈퍼 데이터가 아니라 메타 데이터(Meta Data)라고 해야합니다. 나머지 선지는 모두 시스템 카탈로그에 대해 옳게 서술하였습니다.

3. 릴레이션의 특징으로 옳지 않은 것은?


① 모든 튜플은 서로 다른 값을 갖는다.

② 각 속성은 릴레이션 내에서 유일한 이름을 가지며, 속성의 순서는 큰 의미가 없다.

③ 하나의 릴레이션에서 튜플의 순서는 없다.

한 릴레이션에 나타난 속성 값은 논리적으로 더 이상 분해할 수 없는 원자값이어서는 안된다. 


☞ 정답은 ④번 입니다. ④번 선지를 옳게 고치려면 '한 릴레이션에 나타난 속성 값은 논리적으로 더 이상 분해할 수 없는 원자값이어야 한다.'로 바꿔야 합니다. 릴레이션의 속성 값은 반드시 원자 값만을 사용해야하며 이러한 특성을 속성의 원자성이라고 부릅니다. 또한 하나의 릴레이션에서 속성 사이의 순서나 튜플 사이의 순서는 의미가 없으며 이를 가리켜 속성의 무순서성, 그리고 튜플의 무순서성이라고 합니다. ①번 선지와 관련한 개념은 한 개의 릴레이션에서 튜플은 유일한 것이어야 한다는 튜플의 유일성입니다. 즉 릴레이션에 같은 튜플이 존재할 수 없다는 성질입니다.




4. 정규형에 대한 설명으로 옳지 않은 것은?


① 제 2정규형은 반드시 제 1정규형을 만족해야 한다.

② 정규화하는 것은 테이블을 결합하여 종속성을 제거하는 것이다.

③ 제 1정규형은 릴레이션에 속한 모든 도메인의 원자값만으로 되어 있는 릴레이션이다.

④ BCNF는 강한 제 3정규형이라고도 한다.


☞ 정답은 ②번 입니다. ②번이 틀린 이유는 정규화(Normalization)란 테이블을 결합하여 종속성을 제거하는 것이 아니라 테이블을 더 작게 분해하며 종속성을 제거하기 때문입니다. 데이터베이스에서 정규화를 하는 목적은 데이터베이스 설계를 일차적으로 마친 뒤 데이터베이스 결과를 검증하는 것입니다. 설계된 데이터베이스의 이상현상(Anomaly)를 제거해나가면서 데이터베이스를 검증하는 작업입니다. ①번은 맞는 설명으로 제 2정규형(Second Normal Form)은 릴레이션이 제 1정규형에 속하며, 제 1정규형의 릴레이션을 분해하는 정규화 과정을 거쳐 제 2정규형 릴레이션이 형성됩니다. ④번 선지의 BCNF는 Boyce-Codd Normal Form의 약자입니다. BCNF는 3.5 NF라고도 불리는데 이유는 제 3유형에 속하지만 제 3유형보다 강력한 제약을 가지고 있기 때문입니다. 즉 더 강력한 제약조건으로 인해 보이스-코드 정규형을 만족하면 제 3유형에 당연히 속하지만, 제 3유형에 속하는 모든 것들이 보이스-코드 정규형에 속하는 것은 아닙니다.


5. 데이터베이스의 정의로 적합하지 않은 것은?


① Integrated Data

② Individual Data

③ Stored Data

④ Operational Data


☞ 정답은 ②번 입니다. ②번 선지의 Individual Data와 반대로 Shared Data가 데이터베이스의 정의로 적합합니다. 데이터베이스는 한 개인을 위한 정보가 아니라 여러 사람이 공유하며 사용될 데이터들이 통합되어 저장된 형태를 말하기 때문입니다. 


6. 데이터베이스 무결성과 보안의 차이점에 대한 설명으로 가장 적합한 것은?


① 무결성은 권한이 있는 사용자로부터 데이터베이스를 보호하는 것이고, 보안은 권한이 없는 사용자로부터 데이터베이스를 보호하는 것이다.

② 무결성은 권한이 없는 사용자로부터 데이터베이스를 보호하는 것이고, 보안은 권한이 있는 사용자로부터 데이터베이스를 보호하는 것이다.

③ 무결성과 보안은 모두 권한이 있는 사용자로부터 데이터베이스를 보호하는 것이지만, 보안은 사용자 계정과 비밀번호로 관리한다.

④ 무결성과 보안은 모두 권한이 없는 사용자로부터 데이터베이스를 보호하는 것이지만, 무결성은 DBMS가 자동적으로 보장해 준다.


☞ 정답은 ①번 입니다. 데이터베이스의 무결성이란 말그대로 데이터베이스 자체의 내용에 모순이 없고 정확한 데이터를 유지하는 성질을 의미합니다. 따라서 사용자로부터도 데이터베이스의 무결성을 위해 데이터베이스를 보호하는 것을 말합니다. 이와는 반대로 데이터베이스의 보안은 데이터베이스를 권한 없는 사용자로부터 보호하여 데이터베이스 자체의 안전을 지키는 성질을 말합니다.




7. 계층형 데이터 모델에 대한 설명으로 옳지 않은 것은?


① 링크를 사용하여 자료와 자료 사이의 관계성을 나타낸다.

② CODASYL DBTG 모델이라고도 한다.

③ 각 레코드가 트리 구조 형태로 구성된다.

④ 데이터의 독립성이 보장된다.


☞ 정답은 ②번 입니다. CODASYL(코다실) 모델은 그래프 형태로 다 대 다의 관계를 나타내는 네트워크 데이터 모델입니다. 따라서 계층형 데이터 모델(Hierarchical Data Model)에 속하는 것이 아니므로 옳지 않은 선지 입니다. 계층형 데이터베이스 모델은 데이터베이스의 논리적 구조를 트리(Tree) 구조 형태로 구성되어 있으며, 두 레코드 간에 순환(Cycle)은 허용되지 않고 링크만 허용되어 일 대 다의 관계를 맺습니다.


8. Which of the following is not a component of Entity-Relationship diagram?


① Rectangles, which represent entity sets

② Ellipses, which represent database operations

③ Diamond, Which represent relationships among entity sets

④ Lines, which link attributes to entity sets and entity sets to relationships


☞ 정답은 ②번 입니다. ②번의 Ellipses는 타원으로 타원은 데이터베이스 연산을 표현하는 형태가 아니라 E-R 다이어그램에서 속성을 표현하는 도구입니다. ①번의 사각형은 개체들 사이의 관계를 표현합니다. ③번의 마름모 형태는 개체 집합들 사이의 관련성을 표현합니다. ④번 선 형태는 속성과 개체 사이의 연결, 그리고 개체 집합과 관계성 사이의 연결을 표현하는 도구입니다.


9. 순차 파일에 대한 설명으로 옳지 않은 것은?


① 일괄처리에 적합한 구조이다.

② 기억장치에 대한 순차 접근만 가능하다.

③ 필요한 레코드의 삽입, 삭제, 수정 시 파일을 재구성해야 한다.

파일 탐색 시 효율이 좋다.


☞ 정답은 ④번 입니다. 순차 파일에서 파일을 탐색하려면 순차적으로 모든 파일을 탐색해나가야 하므로 파일 탐색 시 효율이 낮습니다. 첫 번째 파일부터 순차적으로 모든 파일을 비교해나가므로 일괄 처리에 적합한 구조이며, 중간에 필요한 레코드를 삽입하거나 삭제하는 등 수정할 때 파일 자체를 재구성해야 합니다.




10. 동시성 제어를 위한 직렬화 기법으로 트랜잭션 간의 순서를 미리 정하는 방법은?


① 로킹 기법

② 타임 스탬프 기법

③ 검증 기법

④ 다중 버전 기법


☞ 정답은 ②번 타임 스탬프 기법입니다. 동시성 제어(Concurrency Control)에서 동시성이란 서로 다른 작업들이 번갈아 가며 빠르게 전환되어 실행되어 겉으로 보기에 동시에 실행하는 것처럼 보이는 성질을 말합니다. 이러한 동시성을 제어하는 방법 중 트랜잭션 간의 순서를 미리 정하는 방법은 '타임 스탬프 기법'입니다. ④번의 다중 버전 기법(Multiversion Concurrency Control, MVCC, MCC) 또는 다중 버전 병행 수행 제어는 데이터베이스에서 주로 사용하는 동시성 제어 방식입니다.



댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday