데이터베이스 논리적 데이터 모델

 데이터베이스 논리적 데이터 모델


논리적 데이터 모델은 데이터 모델링 중의 하나 입니다. 논리적 데이터 모델은 개체 관계 모델의 E-R 다이어그램으로 표현된 개념적 구조를 데이터베이스에 저장할 형태로 표현한 논리적 구조 입니다.  이 개념적 데이터 모델의 결과를 가지고 바로 컴퓨터 세계로 옮기는 것이 아니라 논리적 데이터 모델링을 통해서 컴퓨터 세계에 조금 더 적합한 형태로 바꾸는 것입니다. 즉, 데이터 베이스에 조금 더 쉽게 저장할 형태인 것입니다.

데이터베이스의 논리적 구조는 데이터베이스 스키마입니다.

데이터베이스 스키마는 3단계의 종류가 있습니다.

 - 외부

 - 개념

 - 내부

논리적 데이터 모델에는 관계데이터 모델, 계층 데이터 모델, 네트워크 데이터 모델 등이 있고, 이중에서 관계데이터 모델은 일반적으로 많이 사용되는 논리적 데이터 모델이기 때문에 가장 중요한 모델입니다.

관계데이터 모델

 - 개체와 개체간의 관계를 표현

 - 데이터베이스의 논리적 구조가 2차원 테이블 형태

 - 개체를 설명하는 특징은 속성으로 구분 = 속성들의 집합


관계 데이터 모델의 기본 용어

릴레이션(relation)
 - 하나의 개체에 관한 2차원 테이블(표)의 구조를 저장
 - 파일 관리 시스템 관점에서 파일(file)에 대응

속성(attribute)
 - 릴레이션의 열, 애트리뷰트
 - 속성들의 집합 = 개체 타입
 - 파일 관리 시스템 관점에서 필드(field)에 대응

튜플(tuple)
 - 릴레이션의 행
 - 속성들의 값
 - 파일 관리 시스템 관점에서 레코드(record)에 대응

도메인(domain)
 - 속성값의 타입

널(null)
 - 속성 값을 아직 모르거나 해당되는 값이 없음을 표현
 - 공백이나 0이 아님

차수(degree)
 - 릴레이션에서 전체 속성 개수

카디널리티(cardinality)
 - 릴레이션에서 전체 튜플 개수
 - 튜플의 중복도가 낮으면 카디널리티가 높다고 표현
 - 튜플의 중복도가 높으면 카디널리티가 낮다고 표현

릴레이션의 특성

투플의 유일성: 하나의 릴레이션에는 동일한 투플이 존재할 수 없다.

투플의 무순서: 하나의 릴레이션에서 투플 사이의 순서는 무의미하다.

속성의 무순서: 하나의 릴레이션에서 속성 사이의 순서는 무의미하다.

속성의 원자성: 속성 값으로 원자값(더 이상 분해 될 수 없는 값)만 사용할 수 있다.

계층 데이터 모델

데이터베이스의 논리적 구조가 트리(tree) 형태입니다.

루트(최상위) 역할을 하는 개체가 있고 특정 반복 사이클이 존재 하지 않고 상하 관계만 성립
부모, 자식 관계
부모와 자식 개체는 일대다(1:n) 관계만 허용(하나의 부모 노드만 있어야함)
구조가 간단하고 판독하기 쉬움
구현, 수정, 검색이 간단해서 쉬움
데이터의 독립성이 보장

단점
데이터 상호 간의 서로 바뀔 수 있는 유연성이 부족
검색 경로가 한정
삽입과 삭제 연산이 매우 복잡
다대다(n:m) 관계를 표현 할 수 없음

네트워크 데이터 모델

데이터베이스의 논리적 구조가 그래프 형태
개체 간에는 일대다(1:n) 관계만 허용
두 개체 사이에 여러 관계를 정의할 수 있어 이름으로 구별

단점
다대다(n:m) 관계를 표현 할 수 없음(간접 적으로 표현은 가능)
구조가 복잡하고 데이터의 삽입, 삭제, 수정, 검색이 쉽지 않음

댓글

이 블로그의 인기 게시물

[정보처리기사] OSI 7계층 정리

블로그스팟 상위노출 시작하기

데이터베이스 데이터 정의어(DDL), 자료형(데이터 타입)