'데이터베이스시스템'에 해당되는 글 3건

  1. 2009.03.09 [DataBase] 문제풀이 3장
  2. 2009.03.05 [DataBase] 문제풀이 2장
  3. 2009.03.04 [DataBase] 문제풀이 1장

[DataBase] 문제풀이 3장

DB 2009. 3. 9. 23:56

3.1 데이터베이스 설계 과정에서 고수준 데이터 모델의 역할을 설명하라.
데이터베이스에 대한 개념 스키마를 만든다. 개념적 설계라고 부르는데 개념 스키마는 사용자들의 데이터 요구사항들을 간단히 기술한 것으로서 데이터 타입, 관계, 제약조건들을 자세하게 설명한 것이다. 이것들은 고수준의 데이터 모델이 제공하는 개념들을 사용하여 표현된다.

3.2 널값을 사용하는 것이 적합한 경우들을 나열하라.
한 애트리뷰트에 적용할 값이 없을 때.
한 엔티티의 특정 애트리뷰트 값을 모를 때.
- 애트리뷰트 값이 존재하지만 누락되었을 때.
- 애트리뷰트 값이 존재하는지의 여부를 알지 못할 때.

3.3 다음의 용어들을 정의하라.
엔티티 - ER 모델을 나타내는 기본 객체. 실세계에서 독립적으로 존재하는 실체.
애트리뷰트 - 엔티티를 기술하는 속성.
애트리뷰트 값 - 특정 엔티티를 설명.
관계 인스턴스 - 엔티티들의 연관.
복합 애트리뷰트 - 속성을 작은 구성요소로 나누어 계층을 형성한다. 복합 애트리뷰트의 값은 계층을 구성하는 단순 애트리뷰트들의 값을 연결한 것이다.
다치 애트리뷰트 - 한 엔티티에서 애트리뷰트가 여러 값을 가지는 경우, 이런 애트리뷰트를 다치 애트리뷰트라 한다. 다치 애트리뷰트는 각 엔티티가 가질 수 있는 값의 개수를 제한하기 위해 하한과 상한의 범위를 가질 수 있다.
유도된 애트리뷰트 - 두 개 이상의 애트리뷰트 값들이 서로 연관을 가지고 있는 경우, 관련 엔티티로부터 애트리뷰트의 값이 유도될 수 있다.
복잡한 애트리뷰트 - 복합 애트리뷰트와 다치 애트리뷰트가 임의의 방식으로 중첩되어 그것을 표현할 때 이를 복잡한 애트리뷰트라고 한다.
키 애트리뷰트 - 엔티티 집합 내에서 각 엔티티마다 서로 다른 값을 가지는 하나의 애트리뷰트.
값 집합(도메인) - 각 엔티티에서 해당 애트리뷰트가 가질 수 있는 값들의 집합.

3.4 엔티티 타입과 엔티티 집합이 무엇인가? 엔티티, 엔티티 타입, 엔티티 집합의 서로 다른 점을 설명하라.
엔티티 - 실세계에서 독립적으로 존재하는 실체, 개념적으로 존재하는 객체.
엔티티 타입 - 같은 애트리뷰트를 갖는 엔티티들의 집합, 이름과 애트리뷰트들의 리스트로 기술된다.
엔티티 집합 - 임의의 시점에 데이터베이스 내의 특정 엔티티 타입과 모든 엔티티의 모임, 엔티티 집합은 엔티티 타입과 같은 이름을 사용하여 부른다.

3.5 애트리뷰트와 값 집합의 차이점을 설명하라.
애트리뷰트는 각 엔티티가 갖는 속성을 말한다.
값 집합은 각 엔티티에서 해당 애트리뷰트가 가질 수 있는 값들의 집합을 말한다.

3.6 관계 타입이 무엇인가? 관계 인스턴스, 관계 타입, 관계 집합의 차이점을 설명하라.
엔티티 타입들에 속하는 엔티티 간의 연관들의 집합을 정의, 수학적으로 관계 타입은 관계 인스턴스들의 집합이다.
관계 타입은 각각의 엔티티를 연결하는 속성을 의미한다. 즉, 서로의 관계가 어떠한가에 대한 기술이다. 예를 들어 교수, 학생, 강의 라는 엔티티들이 있다. 교수 - 강의의 관계 타입은 강의를 한다는 타입이며 학생 - 강의는 강의를 듣는다는 타입을 갖게 되는 것이다. 관계 인스턴스는 관계가 있는 두 엔티티의 요소들을 연관시키는 역할을 하는데 학생 {A, B, C, D} 와 강의 {1, 2, 3} 을 A - r1 - 1(학생 A는 1번 강의를 듣는다.), B - r2 - 2(학생 B는 2번 강의를 듣는다.), ...식으로 표현할 수 있다. 관계 집합은 이러한 관계 인스턴스의 집합을 말한다.

3.7. 참여 역할이 무엇인가? 관계 타입을 기술하는데 언제 역할 이름이 필요한가?
관계 타입에 참여하는 각 엔티티 타입은 관계 내에서 특정 한 역할을 담당한다. 역할 이름은 엔티티 타입에 속한 한 엔티티가 각 관계 인스턴스에서 가지는 역할을 강조하고 관계가 무엇을 의미하는지 설명하는 데 도움이 된다. 같은 엔티티 타입이 어떤 관계 타입에 두 번 이상 참여하는 경우에는 각 참여의 의미를 구분하기 위해 역할 이름이 필수적이다.(이러한 관계 타입을 순환적 관계라고 한다.)

3.8 관계 타입에 대한 구조적 제약조건을 명시하는 두 가지 방법을 설명하라. 또한 각각의 장단점을 논의하라.
카디날리티 비율 - 엔티티가 참여할 수 있는 최대 관계 인스턴스들의 수를 명시한다.
참여 제약조건 -  한 엔티티의 존재가 관계 타입을 통해 연관되어 있는 다른 엔티티에 의존하는지의 여부를 명시한다. 이 제약 조건은 각 엔티티가 참여할 수 있는 관계 인스턴스의 최소 수를 명시하며 최소 카디널리티 제약조건이라고도 한다.

3.9 어떤 조건하에서, 이진 관계 타입의 애트리뷰트가 참여하는 엔티티 타입들 중 한 엔티티 타입의 애트리뷰트로 옮겨질 수 있는지 설명하라.
1:1 관계 타입의 애트리뷰트들은 참여하고 있는 엔티티 타입들 중의 하나로 이동될 수 있다.

3.10 관계를 애트리뷰트들로 표현하는 경우에 이런 애트리뷰트의 값 집합은 무엇인가? 어떤 데이터 모델이 이런 개념을 사용하는가?
애트리뷰트에 대한 값 집합은 모든 엔티티들의 집합이다. 이는 고수준의 개념적 데이터 모델에서 사용한다.

3.11 순환적 관계 타입이 무엇인가? 순환적 관계 타입의 예를 몇 개 보여라.
같은 엔티티 타입이 어떤 관계 타입에 두번 이상 참여하는 경우 그 관계 타입을 순환적 관계 타입이라고 한다. 예를 들어 사원 엔티티에서 그 원소들은 사원과 상사의 역할을 가지고 있다. 이럴 때 관계는 [사원 엔티티] - [상사관계] - [사원 엔티티] 로 나타낼 수 있다.

3.12 데이터 모델링에서 약한 엔티티 개념이 필요한 경우는? 또한 다음의 용어들을 설명하라.
한 엔티티 타입이 다른 엔티티 타입과 연관되어 있을 때 이 개념이 필요하다.
소유 엔티티 타입 - 약한 엔티티 타입의 어떤 속성으로 연계된 다른 엔티티 타입.
약한 엔티티 타입 - 자신의 키 애트리뷰트가 없는 엔티티 타입.
식별 관계 타입 - 약한 엔티티 타입과 강한 엔티티 타입을 연관시키는 타입.
부분키 - 동일한 소유엔티티에 연관되는 약한 엔티티들을 서로 구분할 수 있는 애트리뷰트들의 집합.

3.13 약한 엔티티 타입의 식별 관계가 삼진 이상일 수 있는지 설명하고, 있다면 그 예들을 보여라.
삼진 식별 관계 타입을 갖는 약한 엔티티 타입도 가능한다. 이 경우, 약한 엔티티 타입은 몇 개의 소유 엔티티 타입들을 가질 수 있다.

3.14 ER 스키마를 ER 다이어그램으로 도식화하기 위해 사용하는 표기법을 설명하라.
엔티티 타입은 사각 상자로 표기한다. 관계 타입들은 다이아몬드 상자로 표기하며 이 관계에 참여하는 엔티티 타입들과는 직선으로 연결한다. 애트리뷰트들은 타원으로 표기하며 각 애트리뷰트는 해당되는 엔티티 타입 또는 관계 타입에 직선으로 연결한다. 복합 애트리뷰트의 구성 요소 애트리뷰트들은 타원형의 복합 애트리뷰트에 연결한다. 다치 애트리뷰트는 이중 타원으로 나타낸다. 키 애트리뷰트는 애트리뷰트 이름에 밑줄을 그어 표현한다. 유도된 애트리뷰트들은 점선으로 된 타원으로 표기한다. 약한 엔티티 타입은 이중 상자로 엔티티 타입을 표시하고 식별 관계를 이중 다이아몬드로 표기한다. 약한 엔티티 타입의 부분키는 점선으로 밑줄을 그어 표기한다. 이진 관계 타입의 카디날리티 비율은 참여를 표시하는 선에 1, M 또는 N을 명시함으로써 표현한다. 참여 제약조건은 부분 참여에 대해서는 단일선으로, 전체 참여에 대해서는 이중선으로 나타낸다.

3.15 ER 스키마 다이어그램에서의 이름 지정 규칙을 설명하라.
엔티티 타입의 이름은 그 엔티티 타입에 속하는 각 엔티티에 적용되기 때문에 복수 이름보다는 단수 이름을 선택한다. ER 다이어그램에서는 엔티티 타입과 관계  타입의 이름은 대문자로, 애트리뷰트의 이름은 첫 글자만 대문자로, 역할 이름은 소문자로 표기한다. ER다이어그램을 왼쪽에서 오른쪽, 위에서 아래로 읽기 쉽게 관계 이름을 선택한다.

Posted by zeide
,

[DataBase] 문제풀이 2장

DB 2009. 3. 5. 20:50

2.1 다음 용어들을 정의하라.
데이터 모델 - 데이터베이스의 구조를 명시하기 위해 사용할 수 있는 개념들의 집합으로서 이와 같은 추상화를 달성하기 위해 필요한 수단을 제공.
데이터베이스 스키마 - 데이터베이스의 기술.
데이터베이스 상태 - 어떤 특정 시점에 데이터베이스에 들어 있는 데이터.
내부 스키마 - 데이터베이스의 물리적 저장구조, 물리적 데이터 모델을 사용하여 데이터 저장구조의 세부사항과 데이터베이스에 대한 접근경로들을 기술.
개념 스키마 - 모든 사용자들을 위한 전체 데이터베이스의 구조를 기술. 물리적 저장구조의 세부 사항을 은폐시키고 엔티티, 데이터타입, 관계, 사용자 연산, 제약조건들을 나타내는 데 중점.
외부 스키마 - 특정 사용자 그룹이 관심들 갖는 데이터베이스의 부분을 기술하고 그 사용자 그룹에게 데이터베이스의 나머지 부분을 은폐.
데이터 독립성 - 고수준의 스키마를 변경할 필요없이 데이터베이스 시스템의 어떤 단계에서 스키마를 변경할 수 있는 능력.
데이터 정의어 - 데이터베이스에서 데이터와 데이터간의 관계를 정의하여 데이터베이스 구조를 설정하는 SQL문.
데이터 조작어 - 데이터베이스 내의 데이터를 검색, 수정, 삭제, 저장할 수 있는 SQL문.
저장구조 정의어 - 내부 스키마를 지정하는데 사용된다.
뷰 정의어 - 사용자 뷰를 명시하고 개념 스키마 사이의 사상을 나타낸다.
질의어 - 고수준 데이터 조작어가 그 자체로 대화식으로 사용될 때.
호스트 언어 - 고수준이든 저수준이든 범용 프로그래밍 언어 내에 데이터 조작어 명령이 삽입된 경우의 프로그래밍 언어.
데이터 부속어 - 범용 프로그래밍 언어 내에 데이터 조작어 명령이 삽입된 경우의 데이터 조작어.
데이터베이스 유틸리티 -  데이터베이스 관리자가 데이터베이스 시스템을 관리하는 것을 도와준다.
카탈로그 - DBMS 모듈들이 필요로 하는 파일의 이름과 크기, 데이터 항목의 이름과 데이터 타입, 각 파일의 자세한 저장 형태, 스키마 사이의 사상 정보, 제약조건들에 대한 정보 등을 포함한다.
클라이언트/서버 아키텍처 - 많은 수의 PC, 워크스테이션, 파일 서버, 프린터, 데이터베이스 서버, 웹 서버, 기타 구성 요소들이 네트워크를 통해서 서로 연결되어 있는 컴퓨팅 환경을 다루기 위해 개발. 각각의 서비스를 제공하는 서버들이 네트워크로 연결되어 이와 연결된 클라이언트 컴퓨터에 그 서비스를 제공한다.
3-층 아키텍처 - 클라이언트와 데이터베이스 서버 사이에 중간 단계-응용서버 혹은 웹서버-를 하나 더 추가한 것.
n-층 아키텍처 - 사용자와 저장된 데이터 사이를 좀 더 세밀하게 나누어 층을 추가한 것.

2.2 데이터 모델들을 분류하라.
물리적 데이터 모델(저수준)
개념적 데이터 모델(고수준)
표현 데이터 모델(구현)

2.3 데이터베이스 스키마와 데이터베이스 상태의 차이점은 무엇인가?
데이터베이스 스키마는 데이터베이스의 기술을 말하는데 데이터베이스 설계 과정에서 명시하며 자주 변경되지 않는다. 데이터베이스 설계시 각각의 사용자 집단들의 요구사항들을 도출하면서 변경된다.
데이터베이스는 실제로 변경이 자주 일어난다. 데이터의 변경이 일어나면 데이터베이스의 내용도 변경된다. 이 때 특정 시점에 데이터베이스에 들어 있는 데이터를 데이터베이스 상태(스냅샷)라고 한다. 

2.4 3단계-스키마 아키텍처를 설명하라. 왜 스키마 단계들 사이에 사상이 필요한가? 어떻게 상이한 스키마 정의어들이 이 아키텍처를 지원하는가?
사용자 응용들과 물리적 데이터베이스를 분리시키는 것을 목적으로 하며 내부 스키마, 개념 스키마, 외부 스키마 이렇게 세 단계로 정의된다. 3단계-스키마 아키텍처는 사용자가 데이터베이스 시스템 내에서 스키마 단계들을 시각화하는 데 편리한 수단으로 사용되나 스키마는 단지 데이터데 대한 기술임을 주의해야 한다.
3단계-스키마 아키텍처에 기반을 둔 DBMS는 각 사용자 그룹은 단지 각자의 외부 스키마만을 참조한다. 따라서 DBMS는 외부 스키마상에서 표현된 요구를 개념 스키마에 대한 요구로 변환시키고 다시 내부 스키마에 대한 요구로 변환 시켜서 저장된 데이터베이스를 접근한다.
이 때 단계들 간의 요구와 접근 결과를 변환하는 과정을 사상이라고 한다.

2.5 논리적 데이터 독립성과 물리적 데이터 독립성의 차이점은 무엇인가? 어느 독립성을 달성하는 것이 더 어려운가? 그 이유는 무엇인가?
논리적 데이터 독립성 - 외부 스키마나 응용 프로그램들을 변경하지 않으면서 개념 스키마를 변경하는 능력. 데이터베이스의 확장, 제약조건의 갱신, 데이터베이스의 축소 등. 변경시 남아있는 데이터만 참조하는 외부 스키마들이 영향을 받아서는 안 된다. 외부/개념 스키마간의 사상에 의해 제공된다.
물리적 데이터 독립성 - 개념 스키마를 변경하지 않으면서 내부 스키마를 변경할 수 있음을 말한다. 따라서 외부 스키마도 변경할 필요가 없다. 개념/내부 스키마간의 사상에 의해 제공된다.(데이터의 물리적 저장방법과 그 구성 변경의 투명성을 제공)
논리적 데이터 독립성이 달성하기 더 어려운데 왜냐하면 데이터의 물리적 저장방법이 변경되었을 경우 데이터 표현방식의 변화로 프로그램을 수정하면 되지만 프로그래머가 생각하는 논리적 구조가 변경되면 그에 따른 프로그램의 구조가 변경되기 때문에 전체적인 수정을 필요로 하기 때문이다.

2.6 절차적 데이터 조작어와 비절차적 데이터 조작어의 차이점은 무엇인가?
절차적 데이터 조작어 - 저수준 데이터 조작어, 반드시 범용 프로그래밍 언어 내에 삽입해서 사용한다. 이 유형은 데이터베이스로부터 각 레코드 또는 객체 단위로 검색하여 처리하기 때문에 프로그래밍 언어의 반복문 등을 이용한다. 한 번에 한 레코드 데이터 조작어라고도 부른다.
비절차적 데이터 조작어 - 고수준 데이터 조작어, 복잡한 데이터베이스 연산들을 간결하게 나타내는 데 사용한다. 한 데이터 조작어 명령으로 여러 개의 레코드들을 검색할 수 있기 때문에 한 번에 레코드 집합 조작어 또는 집합지향 데이터 조작어라고 부른다.

2.7 여러 가지 편리한 사용자 인터페이스 유형들과 각 유형을 주로 사용하는 사용자의 부류에 대해서 설명하라.
브라우징을 위한 메뉴 기반 인터페이스
폼 기반 인터페이스
그래식 사용자 인터페이스
자연어 인터페이스
음성 입력과 출력
초보자를 위한 인터페이스
데이터베이스 관리자를 위한 인터페이스

2.8 DBMS는 컴퓨터 시스템 소프트웨어들과 상호 작용하는가?
DBMS는 컴파일러와 인터페이스하면서 범용 호스트 프로그래밍 언어를 지원하고 시스템 네트워크 인터페이스를 통하여 별도의 컴퓨터에서 수행되는 클라이언트 및 응용 서버와 상호 작용한다.

2.9 2-층과 3-층 클라이언트/서버 아키텍처의 차이점이 무엇인가?
2-tier 아키텍처는 소프트웨어의 구성 요소들이 클라이언트와 서버에 분산되어 있다. 사용자 인터페이스 프로그램과 응용 프로그램들은 클라이언트 쪽에서 수행되며 SQL처리와 관련된 질의와 트랜잭션 기능은 서버(데이터 서버) 측에서 수행한다.
3-tier 아키텍처는 웹의 등장으로 개발되었는데 클라이언트와 데이터베이스 서버 사이에 미들 티어를 하나 더 추가한 것이다. 클라이언트는 정보를 사용자에게 보여주고 데이터를 입력받으며 미들 티어(웹서버 또는 응용서버)에서는 데이터를 사용자에 전달하거나 DBMS에게 보내기 전에 중간의 규칙과 제약조건들을 다룬다. 데이터베이스 서버에서는 데이터 관리의 모든 서비스를 수행한다.

2.10 데이터베이스 유틸리티의 유형과 기능들에 대해서 설명하라.
적재 - 텍스트 파일이나 순차 파일과 같은 기존의 데이터 파일들을 데이터베이스에 적재하기 위해 사용하는 유틸리티.
백업 - 전체 데이터베이스를 테이프에 복사해서 데이터베이스의 백업 사본을 만든다.
파일 재조직 - 성능을 향상시키기 위하여 데이터베이스 파일들의 구조를 다른 파일 구조로 재조직하는 유틸리티.
성능 모니터링 - 데이터베이스의 사용을 모니터링해서 사용 통계를 데이터베이스 관리자에게 제공.

2.11 어떤 기능이 n-층 아키텍처에 추가되었는가(n>3)?
n-층 아키텍처에서 비즈니스 논리 층은 다수의 층으로 나누어지는데 네트워크를 통해서 프로그램과 데이터를 분산시키는 것 외에 한 개의 층이 적절한 프로세서나 운영체제에서 동작할 수 있다는 장점이 있다. ERP나 CRM 패키지 업체들은 주로 미들웨어 층을 사용한다. 미들웨어 층은 뒷단의 데이터베이스들과 통진하는 앞단의 모듈을 맡는다.

*커드의 12규칙
http://ko.wikipedia.org/wiki/%EC%BB%A4%EB%93%9C%EC%9D%98_12_%EA%B7%9C%EC%B9%99

Posted by zeide
,

[DataBase] 문제풀이 1장

DB 2009. 3. 4. 23:16
1.1 다음 용어들을 정의하라.
데이터 - 알려진 사실, 의미를 가지고 기록될 수 있는 것들.
데이터베이스 - 어떤 특정한 의미를 가지는 데이터의 모임.
DBMS - 데이터베이스 관리 시스템, 다양한 응용들에서 필요로 하는 데이터베이스를 정의, 생성, 조작, 공유할 수 있도록 편리한 기능을 제공하는 범용 소프트웨어 시스템.
데이터베이스 시스템 - 데이터베이스와 DBMS.
데이터베이스 카탈로그 - 데이터베이스의 정의(데이터베이스에 속하는 각 파일들의 구조, 각 데이터 항목의 타입과 저장 형식, 데이터에 대한 다양한 제약조건 등)가 저장된 것.
프로그램-데이터 독립성 - 데이터 파일의 구조가 변경되어도 응용 프로그램은 거의 변하지 않는 성질.
사용자 뷰 - 데이터베이스의 일부이거나 데이터베이스로부터 유도되는 가상 데이터, 뷰의 데이터는 실제로 데이터베이스에 저장되지 않는다.
데이터베이스 관리자 - DBA, 데이터베이스나 DBMS, 관련 소프트웨어를 관리하고 감독. 데이터베이스에 대한 접근을 감독하며 자원의 사용을 모니터링하고 조정한다. 필요한 경우에 소프트웨어나 하드웨어 자원을 구입, 데이터베이스의 보안이나 시스템의 성능 문제를 책임진다.
최종 사용자 - 데이터베이스에 대하여 질의하고, 변경하고, 보고서를 작성하는 사람. 캐주얼 사용자, 초보 사용자, 전문 사용자, 독자적인 사용자로 분류.
미리 작성된 트랜잭션 - 초보 사용자가 데이터베이스에 제한적으로 접근하게 하기 위해 사용.
연역 데이터베이스 시스템 - 데이터베이스에 저장되어 있는 사실로부터 새로운 정보를 추론하는 연역적 규칙을 정의할 수 있는 기능을 가진 시스템.
지속성 객체 - 데이터베이스에 저장된 객체, 프로그램의 수행이 끝난 후에도 데이터베이스에 영구적으로 남아 필요하면 언제든지 다른 프로그램들에 접근이 가능.
메타데이터 - 카탈로그에 저장된 정보, 기본 데이터베이스의 구조를 기술.
트랜잭션 처리 응용 - 동시에 수행되는 트랜잭션들이 상호 방해를 받지 않고 효율적으로 수행되도록 보장.

1.2 데이터베이스를 사용하는 데 수반되는 중요한 세 가지 작업은 무엇인가? 각각을 간단하게 설명하라.
데이터베이스 정의 - 데이터베이스에 저장되는 데이터에 대한 데이터 타입, 구조, 제약조건들을 명세하는 과정.
데이터베이스 구축 - DBMS가 관리하는 기억 장치에 데이터를 저장하는 과정.
데이터베이스 조작 - 특정한 데이터를 검색하기 위한 질의, 데이터베이스의 갱신, 데이터로부터 리포트를 생성하는 기능.

1.3 데이터베이스의 방식의 중요한 특징을 설명하고, 기존의 파일처리 시스템을 사용하는 경우에 비하여 다른 점을 논의하라.
파일처리 방식에서는 소프트웨어 응용을 프로그래밍하는 작업의 일환으로 사용자가 특정한 소프트웨어 응용을 위하여 필요한 파일들을 별도로 정의하고 구현한다. 각각의 응용 프로그램들은 자유롭게 데이터 항목들을 독립적으로 명명할 수 있다.
데이터베이스 방식에서는, 데이터는 한 번만 저장되며 여러 사용자가 공유하게 된다. 데이터의 이름은 한 번만 정의되고, 정의와 트랜잭션 및 응용프로그램에서 반복해서 사용된다. 중요한 특징은 다음과 같다.
- 데이터베이스 시스템의 자기 기술성
- 프로그램과 데이터의 격리 및 데이터 추상화
- 데이터에 대한 다중 뷰의 제공
- 데이터의 공유와 다수 사용자 트랜잭션 처리

1.4 데이터베이스 관리자와 데이터베이스 설계자의 역할을 무엇인가?
데이터베이스 관리자는 데이터베이스나 DBMS, 관련 소프트웨어를 관리하고 감독한다. 즉, 데이터베이스에 대한 접근을 감독하며 자원의 사용을 모니터링하고 조정한다. 데이터베이스의 보안이나 시스템의 성능 문제를 책임지며 소프트웨어나 하드웨어 자원을 구입한다.
데이터베이스 설계자는 데이터베이스에 저장될 데이터를 선정하고 데이터를 나타내고 저장하는 구조를 정의하는 역할을 담당한다. 사용자 그룹들과 만나서 요구사항들을 도출하고 그것을 만족하는 데이터베이스 뷰를 개발한다.

1.5 데이터베이스의 최종 사용자들을 분류하고 각자의 주요 업무를 논하라.
캐주얼 사용자 - 데이터베이스에 가끔 접근하지만 매전 다른 정보를 찾는다. 정교한 데이터베이스 질의어를 사용하여 데이터를 요구한다. 중상급의 관리자.
초보 사용자 - 미리 잘 프로그램되고 테스트된 기작성 트랜잭션들을 사용하여 데이터베이스를 검색하고 변경하는 사용자.
전문 사용자 - 복잡한 요구사항을 가진 엔지니어, 과학자, 비즈니스 분석가 등.
독자적인 사용자 - 메뉴나 그래픽 사용자 인터페이스를 제공하는, 편리한 패키지를 사용하여 개인 데이터베이스를 유지하는 사용자.

1.6 DBMS가 제공해야 할 기능들을 설명하라.
중복성의 제어
권한이 없는 접근의 통제
프로그램 객체를 위한 지속성 기억 공간 제공
효율적인 질의처리를 위한 저장 구조 제공
백업과 회복 제공
다수의 사용자 인터페이스 제공
데이터 간의 복잡한 관계의 표현
무결성 제약조건의 시행
규칙을 사용한 추론과 수행
표준 강화
응용 개발 시간의 단축
융통성
최신 정보의 가용성
규모의 경제성

1.7 데이터베이스 시스템과 정보 검색 시스템 사이의 차이점을 논하라.
정보 검색 시스템 - 데이터베이스 시스템을 사용하는 한 분야. 키워드를 사용하여 데이터를 색인하고 카탈로그화 한다. 이러한 키워드에 기반하여 문서들을 찾는 것을 다루며 문서처리와 자유로운 비정형 텍스트 처리를 다룬다.
데이터베이스 시스템- 사용자의 질의를 처리, 수행하는 과정과 데이터베이스의 저장, 조작 등에 관한 모든 처리를 다룬다.
Posted by zeide
,