본문 바로가기

자격증/정보처리기사 자격증 공부

(실기) Section 034. 관계형 데이터베이스의 구조 / 관계형 데이터 모델

반응형

1. 관계형 데이터베이스

  • 관계형 데이터베이스는 2차우너적인 표(Table)를 이용해서 데이터 상호 관계를 정의하는 데이터베이스이다.
  • 1970년 IBM에 근무하던 코드(E. F. Codd)에 의해 처음 제안되었다.
  • 개체와 관계를 모두 릴레이션이라는 표로 표현하기 때문에 개체를 표현하는 개체 릴레이션과 관계를 표현하는 관계 릴레이션이 존재한다.
  • 장점: 간결하고 보기 편리하며, 다른 데이터베이스로의 변환이 용이하다.
  • 단점: 성능이 다소 떨어진다.

2. 관계형 데이터베이스의 릴레이션 구조

릴레이션은 데이터들을 표의 형태로 표현한 것으로, 구조를 나타내는 릴레이션 스키마와 실제 값들인 릴레이션 인스턴스로 구성된다.

3. 튜플

  • 튜플은 릴레이션을 구성하는 각각의 행을 말한다.
  • 튜플은 속성의 모임으로 구성된다.
  • 파일 구조에서 레코드와 같은 의미이다.
  • 튜플의 수를 카디널리티 또는 기수, 대응수라고 한다.

4. 속성

  • 속성은 데이터베이스를 구성하는 가장 작은 논리적 단위이다.
  • 파일 구조상의 데이터 항목 또는 데이터 필드에 해당된다.
  • 속성은 개체의 특성을 기술한다.
  • 속성의 수를 디그리 또는 차수라고 한다.

5. 도메인

  • 도메인은 하나의 애트리뷰트가 취할 수 있는 같은 타입의 원자값들의 집합이다.
  • 도메인은 실제 애트리뷰트 값이 나타날 때 그 값의 합법 여부를 시스템이 검사하는데에도 이용된다.

6. 릴레이션의 특징

  • 한 릴레이션에는 똑같은 튜플이 포함될 수 없으므로 릴레이션에 포함된 튜플들은 모두 상이하다.
  • 한 릴레이션에 포함된 튜플 사이에는 순서가 없다.
  • 튜플들의 삽입, 삭제 등의 작업으로 인해 릴레이션은 시간에 따라 변한다.
  • 릴레이션 스키마를 구성하는 속성들 간의 순서는 중요하지 않다.
  • 속성의 유일한 식벼를 위해 속성의 명칭은 유일해야 하지만, 속성을 구성하는 값은 동일한 값이 있을 수 있다.
  • 릴레이션을 구성하는 튜플을 유일하게 식별하기 위해 속성들의 부분집합을 키로 설정한다.
  • 속성의 값은 논리적으로 더 이상 쪼갤 수 없는 원자값만을 저장한다.

7. 관계형 데이터 모델

  • 관계형 데이터 모델은 2차원적인 표를 이용해서 데이터 상호 관계를 정의하는 DB 구조를 말한다.
  • 가장 널리 사용되는 데이터 모델이다.
  • 파일 구조처럼 구성한 테이블들을 하나의 DB로 묶어서 테이블 내에 있는 속성들 간의 관계를 설정하거나 테이블 간의 관계를 설정하여 이용하낟.
  • 기본키와 이를 참조하는 외래키로 데이터 간의 관계를 표현한다.
  • 계층 모델과 망 모델의 복잡한 구조를 단순화시킨 모델이다.
  • 관계형 모델의 대표적인 언어는 SQL이다.
  • 1:1, 1:N, N:M 관계를 자유롭게 표현할 수 있다.

문제1. 다음 표에서 릴레이션, 애트리뷰트, 튜플의 수를 구하여 표시하시오.

  1. 릴레이션 : 1
  2. 애트리뷰트 : 3
  3. 튜플 : 5

문제2. 관계형 데이터베이스의 릴레이션 구조 중 도메인 개념을 간략히 서술하시오.

한 애트리뷰트가 갖을 수 있는 원자값들의 집합을 말한다.

문제3. 어떤 릴레이션의 스키마가 4개의 속성, 2개의 후보키 그리고 그 스키마의 릴레이션 인스턴스가 7개의 튜플을 갖는다면 그 릴레이션의 차수는 몇개인지 쓰시오.

--> 4

문제 4. A1, A2, A3 3개 속성을 갖는 한 릴레이션에서 A1의 도메인은 3개 값, A2의 도메인은 2개값, A3의 도메인은 4개 값을 갖는다 이 릴레이션에 존재 가능한 튜플의 최대 수는 몇개인지 쓰시오.

--> 24

문제 5. 데이터베이스에서 2차원 구조의 표 또는 테이블을 이용하여 데이터 상호 관계를 정의하는 DB 구조를 의미하는 데이터 모델을 쓰시오.

--> 관계형 모델

문제 6. 릴레이션을 구성하는 용어들에 대한 다음 설명에서 괄호(1~3)에 들어갈 알맞은 답을 <보기>에서 찾아 쓰시오.

(1) : 릴레이션을 구성하는ㄴ 각각의 행을 의미하며, 파일 구조에서는 레코드에 해당함.
(2) : 데이터 개체를 구성하고 있는 속성들에 데이터 타입이 정의되어 구체적인 데이터 값을 가진 것으로, 실제 값을 가진 튜플을 의미함.
(3) : 튜플의 개수를 의미함.

(1) -> 튜플
(2) -> 릴레이션 인스턴스
(3) -> 카디널리티

반응형