Skip to content
- 개념적 수준의 모델
- 다수의 데이터 모델 존재
- 구현 단계에서 사용되는 3가지 데이터 모델 : 관계 데이터 모델, 계층 데이터 모델, 네트워크 데이터 모델
- 가장 많이 사용하는 것이 ER 모델
- 데이터베이스 라이프사이클
- 데이터베이스 설계
- 데이터를 적재하거나 변환
- 기존의 응용 변환
- 데이터베이스 설계
- 요구사항 수집과 분석
- 개념적 설계 : ER 모델링 or 객체 지향 모델
- DBMS 선정
- 논리적 설계 : 데이터베이스 스키마로 사상
- 스키마 정제 : 데이터베이스 스키마 정규화로 중복 제거
- 물리적 설계 : 성능상의 문제를 고려하여 인덱스 등을 정의
- 보안 설계 : 사용자들의 그룹과 접근 제한
- 구현 : 데이터베이스 구축과 튜닝
- 요구사항 수집과 분석
- 문서 조사, 인터뷰, 설문조사
- 엔티티와 애트리뷰트를 찾고 그들간의 관계 파악
- 개념적 설계
- ER 데이터 모델 사용
- ER 다이어그램 표현
- DBMS 선정
- 기술적 요인 : 제공하는 데이터 모델, 저장 구조, 인터페이스, 질의어, 도구, 제공서비스
- 정치적인 요인 : 고수준의 전략적인 결정
- 경제적인 요인 : DBMS 구입비용, 하드웨어 구입비용, 유지보수 비용, DB 변환비용, 인건비, 교육비
- 논리적 설계
- 논리 스키마 생성
- ER 모델의 개념적 시키마를 관계 데이터베이스 스키마로 사상
- 정규화
- 물리적 설계
- 저장 구조, 접근 경로 결정
- 성능상 주요 기준
- 응답시간
- 트랜잭션 처리율
- 보고서 생성 시간
- ER 모델(현재는 EER모델; Enhanced Entity Relationship)
- 개념
- 개념적 설계를 위한 인기모델, 많은 CASE 도구들에서 지원됨
- 실세계를 엔티티, 애트리뷰트, 엔티티들간의 관계로 표현함
- 엔티티
- 하나의 엔티티는 독립적으로 조재하면서 고유하게 식별이 가능한 객체
- 사원처럼 실체가 있는 것도 있지만, 개념과 같이 추상적인 것도 있음
- 객체지향 언어에서 객체와 유사
- 엔티티 타입 : 동일한 애트리뷰트들을 가진 엩티티들의 틀
- 릴레이션의 내포에 해당
- 엔티티 집합 : 동일한 애트리뷰트들을 가진 엩티티들의 모임
- 릴레이션의 외연에 해당
- ER다이어그램에서 직사각형으로 표현
- 애트리뷰트
- 하나의 엔티티는 연관된 애트리뷰트들의 집합
- 키 애트리뷰트 : 한 엔티티 타입내애서 각 엔티티를 고유하게 식별
- ER 다이어그램에서 기본 키에 속하는 애트리뷰트는 밑줄을 그어 표시
- ER다이어그램에서 타원형으로 표현
- 애트리뷰트와 엔티티 타입은 실선으로 연결
- 단순 애트리뷰트(simple attribute) : 더 이상 다른 애트리뷰트로 나눌 수 없는 애트리뷰트
- 복합 애트리뷰터(composite attribute) : 두 개 이상의 애트리뷰트로 이루어진 애트리뷰트
- 예 : 주소 – 우편번호, 시, 구, 동
- 단일 값 애트리뷰터(single-valued attribute) : 각 엔티티마다 정확하게 하나의 값을 갖는 애트리뷰트
- ER 다이어그램에서 대부분의 애트리뷰트는 단일 값 애트리뷰트
- 다치 애트리뷰트(multi-valued attribute) : 각 엔티티마다 여러 개의 값을 갖는 애트리뷰트
- ER 다이어그램에서 이중선 타원으로 표현
- 예 : 취미
- 저장된 애트리븉트(stored attribute)
- 다른 애트리뷰트와 독립적으로 존재하는 애트리뷰트
- ER 다이어그램에서 단순 애트리뷰트와 동일하게 표현됨
- ER 다이어그램에서 대부분의 애트리뷰트는 저장된 애트리뷰트
- 유도된 애트리뷰트(derived attribute)
- 다른 애트리뷰트의 값으로부터 얻어진 애트리뷰트
- ER 다이어그램에서 점선 타원으로 표현함
- 예 : 나이
- 약한 엔티티 타입
- 키를 형성하기에 충분한 애트리뷰트들을 갖지 못한 엔티티 타입
- ER 다이어그램에서 이중선 직사각형으로 표현함
- 부분 키는 점선 밑줄을 그어 표시
- 예 : 직원의 부양가족 이름
- 관계
- 엔티티들 사이에 존재하는 연관이나 연결
- 관계 집합 : 동질의 관계들의 집합
- 관계 타입 : 동질의 관계들의 틀
- 요구사항 명세에서 동사 -> 관계
- ER 다이어그램에서 다이어몬드로 표현함
- 관계 애트리뷰트
- 관계의 특징을 기술하는 애트리뷰트들을 가질 수 있음
- 키 애트리뷰트는 갖지 않음
- 차수(degree)
- 관계로 연결된 엔티티 타입들의 개수
- 가장 흔한 차수는 2진 관계
- 카디날리티 비율
- 엔티티가 참여할 수 있는 관계의 수
- 간선 위에 표기
- 1:1 관계
- 1:N 관계 : 가장 흔한 관계
- 예 : 학생, 수강과목
- M:N 관계
- 카디날리티 비율의 최소값과 최대값
- 역할(role)
- 관계 타입의 의미를 명확하게 하기 위해 사용
- 전체 참여와 부분 참여
- ER 다이어그램에서 전체참여는 이중실선으로 표시
- 순환적 관계
- 하나의 엔티티 타입이 동일한 관계 타입에 두 번 이상 참여하는 것
- ER 표기법 요약
- ER 모델의 또다른 표기법
- 데이터베이스 설계사례
- 논리적 설계 : ER 스키마를 관계 모델의 릴레이션으로 사상
error: Content is protected !!