데이터베이스 시스템 2장 연습문제 - deiteobeiseu siseutem 2jang yeonseubmunje

1) 용어의 의미를 설명하시오

- 데이터베이스 : 조직에 필요한 정보를 얻기 위해 논리적으로 연관된 데이터를 모아 구조적으로 통합해 놓은 것

- DBMS : 데이터베이스 관리 시스템. 사용자와 데이터베이스를 연결시켜주는 소프트웨어로 데이터베이스 사용자가 데이터베이스를 생성, 공유, 관리할 수 있도록 지원해주는 총체적인 역할 수행

- 데이터 모델 : 데이터베이스 시스템에서 데이터를 저장하는 이론적인 방법에 관한 것으로, 데이터베이스에 데이터가 어떻게 구조화되어 저장되는지를 결정한다.

- 데이터베이스 시스템

  > 데이터의 검색과 변경작업을 주로 수행

  > DBMS, 데이터베이스, 데이터 모델로 구성되어있다.

  > 데이터를 통합 관리하는 시스템

2) 데이터베이스의 개념 네 가지를 설명하시오

 - 통합된 데이터

 - 저장된 데이터

 - 운영 데이터

 - 공용 데이터

3) 데이터베이스의 특징 네 가지를 설명하시오

 - 실시간 접근성

 - 계속적인 변화

 - 동시 공유

 - 내용에 따른 참조

4) 파일 시스템과 DBMS의 데이터 접근 방법의 차이를 설명하시오

파일시스템은 데이터가 파일 단위로 저장되어 있어 응용프로그램이 파일에 직접 접근한다.

DBMS는 응용프로그램이 DBMS에 파일 접근을 요청하여 DBMS에서 관리되는 데이터를 가져온다.

5) 파일 시스템과 DBMS의 장단점을 비교하여 설명하시오

구분 파일 시스템 DBMS
데이터 중복 중복 가능성 높음
(데이터를 파일에 저장)
중복 가능성 낮음
(DBMS를 이용하여 데이터를 공유)
데이터 일관성 데이터 중복 저장으로 일관성이 결여 데이저 중복 제거로 일관성 유지
데이터 독립성 데이터 정의와 프로그램의
독립성 유지 불가능
데이터 정의와 프로그램의 
독립성 유지 가능
관리 기능 보통 데이터 복구, 보안, 동시성 제어, 데이터 관리 기능 등을 수행
프로그램 개발 생산성 나쁨 짧은 시간에 큰 프로그램 개발 가능
기타 장점 별도의 소프트웨어 설치 필요 無 데이터 무결성 유지,
데이터 표준 준수 용이

6) 데이터 모델을 설명하고 종류를 나열하시오

데이터 모델 : 데이터베이스 시스템에서 데이터를 저장하는 이론적인 방법에 관한 것으로 데이터베이스에 데이터가 어떻게 구조화되어 저장되는지를 결정한다.

데이터 모델 종류 

- 계층 데이터 모델, 네트워크 데이터 모델 (포인터 사용)

- 관계 데이터 모델 (속성 값 사용)

- 객체 데이터 모델 (객체 식별자 사용)

7) 다음 데이터베이스 사용자들의 역할을 설명하시오.

- 일반사용자 : 은행의 창구 혹은 관공서의 민원 접수처 등에서 데이터를 다루는 업무를 하는 사람.

- 응용 프로그래머 : 일반 사용자가 사용할 수 있도록 프로그램을 만드는 사람

- SQL 사용자 : SQL을 사용하여 업무를 처리하는 부서의 담당자. 데이터 검색, 데이터 구조 변경, 데이터에 관한 통계 처리등 데이터를 모니터링하는 업무를 하거나 보고서 형태로 만들어 상부에 보고하는 업무

- DBA : 데이터베이스 운영 조직의 데이터베이스 시스템을 총괄하는 사람이다. 데이터 설계, 구현, 유지보수의 전 과정을 담당.

8) 데이터 독립성을 정의하고, 데이터베이스 시스템에서 그 중요성을 설명하시오

데이터 독립성 : 하위 단계의 내용을 추상화하여 상위 단계에서 그 세부 사항을 숨김으로써 한 단계 내의 변경에 대해서 다른 단계와 상호 간섭이 없도록 하는 것

- 논리적 데이터 독립성(logical data independence)

외부 단계와 개념 단계 사이의 독립성으로, 개념 스키마가 변경되어도 외부 스키마에는 영향을 미치지 않도록 지원

- 물리적 데이터 독립성(physical data independence)

개념 단계와 내부 단계 사이의 독립성으로, 저장장치 구조 변경과 같이 내부 스키마가 변경되어도 개념 스키마에 영향을 미치지 않도록 지원한다.

9) ANSI 의 3단계 데이터베이스 구조에 대해 설명하시오.

   1. 외부 단계

 - 일반 사용자나 응용 프로그래머가 접근하는 계층

 - 전체 데이터베이스 중에서 하나의 논리적인 부분을 의미

 - 외부 스키마 또는 서브 스키마라고도 하며 뷰(View)의 개념

   2. 개념 단계 

 - 전체 데이터베이스의 정의

 - DBA가 관리 

 - 개념 스키마라고 하며 하나의 데이터베이스에 하나의 개념 스키마가 존재

   3. 내부 단계

 - 물리적 저장장치에 데이터베이스가 실제로 저장되는 방법을 표현

 - 내부 스키마라고 하며 인덱스, 데이터 레코드의 배치 방법, 데이터 압축 등에 관한 사항이 포함

 - 실제 하드디스크에 저장되는 물리적인 구조를 뜻함

[ 연습 문제 ]


01. 다음이 설명하는 파일 시스템의 문제점은 무엇인가?

답 : 4) 데이터 종속성

풀이 : 데이터 종속성 : 응용 프로그램이 파일에 직접 접근하여 데이터를 처리해야 하므로 파일의 데이터 구성 방법이나 물리적인 저장 구조에 맞게 응용 프로그램을 작성해야 하고, 파일의 구조가 변경되면 응용 프로그램도 함께 변경해야 한다.


02. 데이터베이스 관리 시스템의 주요 기능이 아닌 것은?

답 : 4) 절차 기능

풀이 : 데이터베이스 관리 시스템의 주요 기능은 '정의, 조작, 제어' 이다.


03. 다음은 데이터베이스 관리 시스템의 주요 기능 중 무엇에 대한설명인가?

답 : 2) 조작 기능

풀이 : 조작 기능 : 사용자 요구에 따라 데이터베이스에 저장된 데이터에 접근하여 삽입, 삭제, 수정, 검색 연산을 정확하고 효율적으로 수행한다.


04. 데이터베이스 관리 시스템의 주요 기능인 제어 기능에 대한 설명으로 옳지 않은 것은?

답 : 3) 데이터베이스의 구조를 정의하거나 수정한다.

풀이 : 정의 기능에 대한 설명이다.


05. 데이터베이스 관리 시스템의 장점으로 보기 어려운 것은?

답 : 3) 백업과 회복 방법이 간단하다.

풀이 : 데이터베이스 관리 시스템의 단점 중 하나로, 백업과 회복 방법이 복잡하다.


06. 데이터베이스 관리 시스템의 단점으로 가장 적합한 것은?

답 : 4) 백업과 회복 기법이 복잡하다.

풀이 : 데이터베이스 관리 시스템의 단점은 비용이 많이 들고, 백업과 회복 방법이 복잡하며, 중앙 집중 관리로 인한 취약점이 존재한다는 것이다.


07. 다음과 같은 특징이 있는 데이터베이스 관리 시스템의 유형은?

답 : 1) 네트워크 데이터베이스 관리 시스템

풀이 : 네트워크 데이터베이스 관리 시스템에 대한 설명이다.


08. 다음은 어떤 유형의 데이터베이스 관리 시스템으로 분류할 수 있는가?

답 : 3) 관계 데이터베이스 관리 시스템

풀이 : 관계 데이터베이스 관리 시스템의 종류이다.


09. 데이터를 파일로 관리하기 위해 파일을 생성, 삭제, 수정, 검색하는 기능을 제공하는 소프트웨어를 무엇이라 하는가?

답 : 파일 시스템

풀이 : 파일 시스템에 대한 설명이다.


10. 파일 시스템의 문제점을 설명하시오.

답 : 파일 단위로 관리하기 때문에 여러 응용 프로그램에 사용할때 데이터 중복성과 데이터 종속성 문제가 발생한다.


11. 데이터베이스 관리 시스템이 무엇인지 설명하시오.

답 : 파일 시스템의 문제를 해결하기 위해 제시된 소프트웨어이며, 조직에 필요한 데이터를 데이터베이스에 통합하여 저장해두고 이를 관리한다.


12. 데이터베이스 관리 시스템의 세 가지 주요 기능을 설명하시오.

답 : 주요 기능에는 정의, 조작, 제어 기능이 있다.

정의 기능은 데이터베이스의 구조를 정의하거나 수정하는 기능이다.

조작 기능은 데이터를 삽입, 삭제, 수정, 검색하는 연산을 하는 기능이다.

제어 기능은 데이터를 항상 정확하고 안전하게 유지하는 기능이다.


13. 데이터베이스 관리 시스템을 사용함으로써 얻게 되는 장점을 설명하시오.

답 : 데이터 베이스 관리 시스템의 장점

1) 데이터 중복을 통제할 수 있다.

2) 데이터 독립성이 확보된다.

3) 데이터를 동시 공유할 수 있다.

4) 데이터 보안이 향상된다.

5) 데이터 무결성을 유지할 수 있다.

6) 표준화할 수 있다.

7) 장애 발생 시 회복이 가능하다.

8) 응용 프로그램 개발 비용이 줄어든다.


[ 기출 문제 ]


01. 데이터베이스의 등장 이유로 보기 어려운 것은?

답 : 3) 데이터의 가용성 증가를 위해 중복을 허용하고 싶었다.

풀이 : 데이터베이스는 중복을 최소화하고 제어 가능한 중복만 허용한다.


02. 데이터베이스 구성의 장점이 아닌 것은?

답 : 3) 데이터 간의 종속성 유지

풀이 : 데이터베이스 구성을 통해 데이터 간의 독립성을 유지한다.


03. 데이터베이스 관리 시스템의 기능과 그에 대한 설명이 옳게 연결된 것은?

답 : 2) 가-A, 나-C, 다-B

풀이 : A는 생성 기능, B는 정의 기능, C는 조작 기능이다.


04. DBMS의 필수 기능에 해당하지 않는 것은?

답 : 2) 관계 기능(relation facility)

풀이 : DBMS의 필수 기능은 정의, 제어, 조작 기능이다.


05. 데이터베이스 관리 시스템(DBMS)의 기본 기능에 속하는 것은?

답 : 1) 정의 기능, 조작 기능, 제어 기능

풀이 : DBMS의 필수 기능은 정의, 제어, 조작 기능이다.


06. DBMS의 필수 기능 중 모든 응용 프로그램들이 요구하는 데이터 구조를 지원하기 위해 데이터베이스에 저장될 데이터의 타입과 구조에 대한 정의, 이용 방식, 제약조건 등을 명시하는 것은?

답 : 2) Definition 기능

풀이 : 정의 기능에 대한 설명이다.


07. DBMS의 필수 기능 중 데이터베이스에 접근하여 데이터의 검색, 삽입, 삭제, 갱신 등의 연산 작업을 위한 사용자와 데이터베이스 사이의 인터페이스 수단을 제공하는 기능은?

답 : 2) 조작 기능

풀이 : 조작 기능에 대한 설명이다.


08. DBMS의 필수 기능 중 정의 기능에 해당하는 것은?

답 : 4) 데이터와 데이터의 관계를 명확하게 명세할 수 있어야 하며, 원하는 데이터 연산은 무엇이든 명세할 수 있어야 한다.

풀이 : 정의 기능은 데이터베이스의 구조를 정의하거나 수정한다. 해당 내용은 정의 기능의 요건이다.

나머지는 제어 기능에 대한 내용이다.


09. DBMS의 필수 기능 중 사용자와 데이터베이스 사이의 인터페이스 수단을 제공하는 기능은?

답 : Control 기능

풀이 : 조작 기능이 인터페이스 수단을 제공한다.


10. 데이터베이스 관리 시스템(DBMS)에서 제어 기능에 대한 설명으로 거리가 먼 것은?

답 : 2) 갱신, 삽입, 삭제 등의 연산

풀이 : 해당 내용은 조작 기능이다.


11. DBMS의 제어 기능이 갖추어야 할 요건에 해당하지 않는 것은?

답 : 1) 데이터와 데이터의 관계를 명확하게 명세할 수 있어야 하며, 원하는 데이터 연산은 무엇이든 명세할 수 있어야 한다.

풀이 : 정의 기능에 대한 내용이다.

2번의 경우 단순 연산이 아니라 정확성을 따지기 때문에 제어 기능이다.


12. DBMS의 설명으로 옳지 않은 것은?

답 : 2) 데이터 모델링을 수행하고 데이터베이스 스키마를 생성한다.

풀이 : 데이터 구조와 제약 조건을 정의한 스키마는 데이터베이스 설계자가 정의한다.


13. 파일 시스템과 데이터베이스 시스템에 대한 설명으로 옳지 않은 것은?

답 : 4) 데이터베이스 시스템은 회복 처리기, 트랜잭션 처리기 등의 오버헤드로 인해 다수의 사용자를 지원하기에 적합하지 않다.

풀이 : 파일 시스템에 대한 설명이며, 이러한 단점을 보완한 것이 데이터베이스 시스템이다.


14. 파일 시스템과 비교하여 DBMS가 갖는 장점으로 옳지 않은 것은?

답 : 3) 데이터의 일과성을 유지하기 위해 동시성 제어 기법을 제공하므로 파일 시스템에 비해 응답 시간이 단축된다.

풀이 : 응답 시간의 단축은 설명되지 않았다.


15. DBMS를 사용하는 것이 파일 시스템을 사용하는 것보다 더 적합한 경우는?

답 : 2) 예약 시스템과 같이 최신 정보를 다수의 사용자가 공유해야 하는 경우

풀이 : DBMS는 다수의 사용자에게 데이터를 공유할 수 있고, 최신 정보를 유지한다.


16. 다음은 데이터베이스 안에 있는 어떤 테이블이다. 파일 처리 방식과 대비해서 이 같은 테이블을 이용하는 데이터베이스 방식의 주요 특성으로 옳은 것은?

답 : 4) 데이터베이스 시스템이 스스로를 기술하는 성질

풀이 : 데이터베이스 시스템이 스스로 값을 기술하지 않으면, 사용자가 직접 하나하나 값을 넣어줘야 한다. 즉 형식을 지정하는 성질이 있어야 한다.