2023. 4. 18. 17:45ㆍDataBase/DB 문제풀이
[DataBase System] ch08 - 데이터 모델링
책정보, 데이터베이스 시스템 : 네이버 책 (naver.com)
데이타베이스 시스템 : 네이버 도서
네이버 도서 상세정보를 제공합니다.
search.shopping.naver.com
문제 풀이
1 ) 데이터 모델은 무엇인가? 그 구성요소를 중심으로 설명하라
- 컴퓨터에 저장할 데이터 구조를 논리적으로 표현하기 위해 사용하는 지능적 도구
- 구성 요소로는 다음과 같다
- entity : DB에 표현하려는 것, 개념이나 정보 같은 구현하고자 하는 현실의 대상
- attribute : 개체들의 공통적인 특성,
- relationship : entity간의 관계 및 attribute의 관계를 의미
2 ) 개념적 데이터 모델과 논리적 데이터 모델, 그리고 물리적 데이터 구조와의 관계를 설명해 보라
- 개념적 데이터 모델 : 속성들로 기술된 개체 타입과 이 개체 타입 간의 관계를 바탕으로 현실 세계를 표현
- 논리적 데이터 모델 : 데이터 필드로 기술된 레코드 타입과 이 레코드 타입들 간의 관계를 이용하여 현실세계를 표현
- 물리적 데이터 모델 : 표현이 된 논리적 데이터 모델을 컴퓨터에 저장하는 것
3 ) 다음을 간단하게 설명하라
- 개체 타입
- 개체의 이름과 애트리뷰트로 정의되고 애트리뷰트는 해당 개체의 특성을 기술한다.
- 개체 인스턴스
- 개체를 구성하고 있는 속성이 실제 값을 가지고 실체화된 개체를 의미
- 개체 집합
- 해당 개체 인스턴스들이 모여서 집합화 되는 것을 개체 집합이라 한다. DB에 실제로 저장되고 관리하는 것을 의미
- 관계 타입
- 관계성 타입이라 하기도 한다. 개체 타입의 모든 인스턴스들, 개체 집합들 사이의 대응(correspondence), 즉 사상(mapping)을 말한다.
- 관계 집합
- 개체 집합과 개체 집합에 실제로 나타나 있는 관계 인스턴스를 말한다.
- 널 애트리뷰트
- 어떤 개체 인스턴스가 어느 특정 애트리뷰트에 대한 값을 가지고 있지 않을 때 이를 명시적으로 표시하기 위해 사용
- 개체 관계
- 개체들 간의 관계를 의미한다.
- 복합 애트리뷰트
- 몇 개의 기본적인 단순 애트리뷰트로 분리될 수 있는 애트리뷰트
- 약한 개체 타입
- 상위 개체 타입이 결정되지 않으면 개별 객체를 식별할 수 없는, 종속적인 개체타입을 의미
- 존재 종속
- 어떤 개체 b의 존재가 개체 a의 존재에 달려 있는 경우이다.
- 만약 개체 a를 삭제하면 개체 b도 삭제가 되는 경우
- 전체 참여
- 개체 A-B관계에서 개체 집합 A의 모든 개체가 이 A-B관계에 참여해야 되는 것을 의미한다.
- 부분 키
- 약한 개체 타입을 고유하게 식별할 때 사용되는 속성. 해당 부분 키를 통해 강한 개체 타입과 결합하여 튜플을 식별할 때 사용이 된다.
- 구별자
- 강한 개체가 주어졌을 때 이와 연관이 된 약한 개체들을 서로 구별할 수 있게 해주는 약한 개체 타입의 속성
- 식별 관계 타입
- 약한 개체를 강한 개체에 연관시켜 주는 관계를 의미한다.
4 ) E - R 다이어그램과 데이터 구조도의 차이점을 기술해 보라. 또 스키마 다이어그램은 무엇인가?
- E - R 다이어그램은 개체 관계 모델을 사용하여 현실 세계의 데이터와 사이의 관계를 사람이 이해할 수 있도록 표현, 데이터 구조도의 경우 데이터 사이의 관계성을 파악하여 논리적 구성 형태를 기술한다.
- 스키마 다이어그램은 DB의 스키마를 시각적으로 표현을 한 것이다.
5 ) 관계 데이터 모델에서 개체와 관계를 표현하는 방법이 같다.-라는 말을 예를 들어 설명해 보라
-
6 ) E - R Model의 기본 개념을 설명해 보라. 그리고 다음과 같은 현실 세계를 E - R 다이어그램으로 표현해 보라.
"Emp(사원)은 Eno(t사원번호), Name(이름), Addr(주소)로 구성되고
Dept(부서) Dno(부서번호), Dname(부서이름), Budget(예산)으로 구성된다. 사원은 한 부서만 위해 근무(Works-for)한다.
근무 활동은 근무 시간(hours)으로 표현한다. 사원번호와 부서번호는 유일하다. 각 부서에는 부서를 관리(Manages)하는 한 사원이 있으며 이 부서를 관리하는 사원은 모두 다르다.
7 ) 부모-자식 관계와 오너-멤버 관계에서 함수성(functionality)을 정의하라. 레코드 인스턴스에 어떤 영향을 주는가?
- 하나의 부모가 여러 자식 레코드를 가질 수 있기에 함수성의 경우 1:n이라고 볼 수 있다. 이는 오너 - 멤버 관계에서도 마찬가지이다. 이러한 함수성은 레코드 인스턴스에 영향을 준다. 이는 부모 레코드에서 몇 개의 추가적인 자식 레코드를 가질수 있는지를 의미한다.
8 ) 관계, 계층, 네트워크 데이터 모델의 차이점과 장단점을 설명하라.
- 관계를 표현하는 방식에서 차이가 존재한다. 관계를 나타내는 방법이 테이블 형태로 조직화되어 관계가 맺어져 있는지, 혹은 계층 형태(트리)로 이루어져 있는지 혹은 네트워크 형태인지에 따라 달라진다.
- 관계 데이터 모델의 경우 논리적/물리적 구조의 분리로 인해 데이터의 독립성이 높다는 점이 있고 단점으로는 복잡한 구조를 표현하기에는 어렵다는 점이 존재한다
- 계층 데이터 모델의 경우 계층 형태의 데이터를 쉽게 표현 가능. 다만 단점으로는 논리적/물리적 구조의 밀접한 연결로 인해 데이터의 독립성이 낮다는 점이 존재
- 네트워크 데이터 모델의 경우에는 데이터를 그래프로 구성한다. 그리고 오너 - 멤버의 형태로 데이터를 조직화한다. 복잡한 데이터 구조를 쉽게 표현할 수 있다는 장점이 있지만 이 또한 논리적/물리적 구조의 밀접한 연결로 인해 독립성이 낮다는 단점이 존재한다.
'DataBase > DB 문제풀이' 카테고리의 다른 글
[DataBase System] ch10 - 데이터베이스 저장과 접근 (1) | 2023.05.16 |
---|---|
[DataBase System] ch09 - 데이터베이스 설계 (0) | 2023.04.24 |
[DataBase System] ch07 - 데이터 종속성과 정규화 (0) | 2023.04.18 |
[DataBase System] ch06 - SQL (0) | 2023.04.14 |
[DataBase System] ch04 - 관계 데이터베이스 (0) | 2022.04.23 |