본문 바로가기

컴퓨터/컴퓨터 시험

컴퓨터활용능력 필기 시험 [데이터베이스 일반] 문제 유형 알아보기

728x90

6. 자주 출제되는 문제 예시

  1. 데이터베이스의 3단계 스키마 구조를 설명하세요.
  2. 정규화란 무엇이며, 제2정규형과 제3정규형의 차이를 쓰세요.
  3. 트랜잭션의 ACID 특성을 설명하세요.
  4. 다음 SQL 명령문의 결과를 예측하세요.
     
    SELECT name, age FROM students WHERE age > 20 ORDER BY age DESC;
     
  5. DBMS와 파일 시스템의 차이점을 설명하세요.
  6. 데이터베이스 관리자가 수행하는 역할은 무엇인가요?

1. 데이터베이스의 3단계 스키마 구조를 설명하세요.

데이터베이스의 3단계 스키마 구조는 데이터베이스 설계에서 중요한 개념으로, 데이터베이스를 사용자 관점, 개념적 관점, 물리적 저장 관점으로 나눈 것입니다. 각각은 다음과 같습니다:

  1. 외부 스키마 (External Schema):
    • 사용자나 응용 프로그램에서 보는 데이터의 구조를 정의합니다.
    • 사용자마다 다른 뷰(View)가 있을 수 있으며, 각 사용자는 자신에게 필요한 데이터만 볼 수 있습니다.
  2. 개념적 스키마 (Conceptual Schema):
    • 데이터베이스의 전체적인 논리적 구조를 정의합니다.
    • 데이터베이스의 개체(Entity), 속성(Attribute), 관계(Relationship)를 포함한 데이터 구조를 정의합니다.
    • 사용자에게는 보여지지 않으며, 데이터의 일관성과 무결성을 관리합니다.
  3. 내부 스키마 (Internal Schema):
    • 데이터가 실제로 물리적으로 저장되는 방식과 관련된 구조를 정의합니다.
    • 디스크, 인덱스, 저장 방법 등을 포함하여 데이터베이스의 성능을 최적화하는 방식입니다.

2. 정규화란 무엇이며, 제2정규형과 제3정규형의 차이를 쓰세요.

  • 정규화(Normalization):
    • 데이터베이스에서 중복 데이터를 제거하고 무결성을 유지하기 위해 데이터를 여러 개의 테이블로 나누는 과정입니다.
    • 정규화를 통해 데이터베이스의 구조를 최적화하고, 데이터의 일관성을 보장합니다.
  • 제2정규형(2NF):
    • **제1정규형(1NF)**을 만족한 후, 부분 함수 종속을 제거한 것입니다.
    • 기본 키가 아닌 속성이 기본 키의 일부에 종속되지 않도록 테이블을 분리합니다.
    • 예를 들어, 학생의 정보와 해당 학생이 수강한 강의를 한 테이블에 저장하고 있다면, 강의 정보는 학생의 기본 키에 부분 종속되므로 분리해야 합니다.
  • 제3정규형(3NF):
    • **제2정규형(2NF)**을 만족하고, 이행 함수 종속을 제거한 것입니다.
    • 기본 키가 아닌 속성이 다른 기본 키가 아닌 속성에 종속되지 않도록 테이블을 분리합니다.
    • 예를 들어, 학생 테이블에서 학생의 주소 정보가 학생의 학번과 관련이 있지만, 학번을 통해 주소를 알 수 있다는 경우, 주소는 학생 테이블에서 분리해야 합니다.

차이점:

  • 제2정규형은 부분 종속을 제거하는 것에 중점을 두고,
  • 제3정규형은 이행 종속을 제거하는 것에 중점을 둡니다.

3. 트랜잭션의 ACID 특성을 설명하세요.

ACID는 트랜잭션의 네 가지 중요한 특성을 나타내며, 데이터베이스가 신뢰성 있게 동작하도록 보장합니다:

  1. 원자성 (Atomicity):
    • 트랜잭션은 전체가 실행되거나 전혀 실행되지 않도록 보장합니다.
    • 트랜잭션 중에 오류가 발생하면 모든 작업이 롤백되어 이전 상태로 돌아갑니다.
  2. 일관성 (Consistency):
    • 트랜잭션이 완료되면 데이터베이스는 일관된 상태로 변경되어야 합니다.
    • 데이터가 트랜잭션 전후로 유효한 상태를 유지합니다.
  3. 독립성 (Isolation):
    • 각 트랜잭션은 다른 트랜잭션과 독립적으로 실행됩니다.
    • 트랜잭션이 완료되기 전까지 다른 트랜잭션의 결과가 영향을 주지 않도록 합니다.
  4. 지속성 (Durability):
    • 트랜잭션이 완료된 후에는 결과가 영구적으로 저장되어야 합니다.
    • 시스템 장애가 발생하더라도 트랜잭션의 결과는 손실되지 않습니다.

4. 다음 SQL 명령문의 결과를 예측하세요.

 
SELECT name, age FROM students WHERE age > 20 ORDER BY age DESC;
  • 결과: students 테이블에서 **나이가 20세 이상인 학생들의 이름(name)과 나이(age)**를 선택하고, 나이순으로 내림차순(DESC) 정렬하여 출력합니다.
  • 예시 출력:
     
    name | age
    -----------------
    John  | 25
    Alice  | 22
    Bob   | 21
     
  • 이 결과는 나이가 20세 이상인 학생들을 나이순으로 내림차순 정렬한 것입니다.

5. DBMS와 파일 시스템의 차이점을 설명하세요.

구분 DBMS (데이터베이스 관리 시스템) 파일 시스템
데이터 관리 데이터베이스의 데이터를 효율적으로 관리하고 검색. 파일 형태로 데이터 저장, 관리.
데이터 무결성 트랜잭션 관리, 데이터 무결성, 보안이 제공됨. 데이터 무결성 및 보안 관리 기능이 제한적.
동시성 관리 다수 사용자가 동시에 데이터를 처리할 수 있음. 동시성 제어나 충돌 해결 기능이 부족.
백업 및 복구 자동 백업 및 복구 기능 제공. 백업과 복구는 별도의 작업이 필요.
데이터 관계 데이터를 테이블 간 관계로 관리. 관계를 관리하지 않음.

6. 데이터베이스 관리자가 수행하는 역할은 무엇인가요?

데이터베이스 관리자는 데이터베이스 시스템의 설치, 운영, 유지보수 및 관리 전반을 담당하는 역할을 합니다. 주요 업무는 다음과 같습니다:

  1. 데이터베이스 설계 및 구축:
    • 데이터베이스를 설계하고, 테이블 구조를 정의하며, 데이터 모델링을 수행합니다.
  2. 보안 관리:
    • 사용자 권한을 설정하고, 데이터의 보안 및 접근 제어를 관리합니다.
  3. 데이터 백업 및 복구:
    • 정기적인 백업을 수행하고, 데이터 손실이 발생한 경우 복구 작업을 담당합니다.
  4. 성능 관리:
    • 데이터베이스의 성능을 최적화하고, 쿼리 성능을 모니터링하여 데이터베이스가 원활하게 동작하도록 관리합니다.
  5. 트랜잭션 관리:
    • 데이터의 일관성과 무결성을 유지하기 위해 트랜잭션을 관리하고, 오류 발생 시 롤백 처리를 수행합니다.
  6. 업그레이드 및 패치 적용:
    • 데이터베이스 소프트웨어의 버전 업그레이드와 보안 패치를 관리합니다.
  7. 문제 해결 및 지원:
    • 시스템 장애 시 문제를 해결하고, 사용자 지원을 제공합니다.
728x90