IT 이야기/데이터베이스

데이터베이스 설계

필넷 2007. 6. 21. 00:06
반응형
○ 데이터베이스 설계
 

요구사항분석

° Bisiness Object 식별(Planner 관점)

개념적 설계
<모델>

° 정보모델링(Information Modeling) - 현실세계의 데이터 관점을 개념적 관점으로 변환하는 설계과정
° 데이터에 대한 자료의 양과 사용패턴을 분석하는 단계(인간의 이해를 돕기위한 모델)
° Semantic Modeling 수행, E-R Diagram, Transaction 식별 및 모델링(검색, 갱신, 혼합)

 

개체분석(Entity Analysis), Top-Down

속성합성(Attribute Synthesis), Bottom-Up

장점

부작용이 적다

초기 설계부담이 적다

단점

초기에 모든 개념을 알아야 함

재구성이 필요함

Entity 정의

° 독립엔티티(Kernel Entity, Master Entity)
  - 다른 엔티티의 인스턴스 존재여부와 무관하게 존재하는 기본적인 엔티티
° 업무중심엔티티(Transaction Entity) - 업무가 실행되면서 발생하는 엔티티
° 종속엔티티(Dependent Entity, Characteristic Entity) - 다른 엔티티의 존재에 의존하는 엔티티
° 교차엔티티(Relative Entity, Associative Entity) - 두 엔티티간의 관계를 나타내는 엔티티

관계정의

° 기수성(Cardinality), 선택성(Optionality)

E-R Diagram 작성

° 데이터베이스 스키마를 결정하는 중요한 그림

식별자 정의

° Primary key, Foreign Key

속성정의

UNI00000b586c0cUNI00000b586c0eUNI00000b586c10

 

※ 데이터모델 구성요소 

구성요소

° 데이터구조(Structure), 연산(Operation)/관계?, 제약(Constraint)

분류

객체기반모델

레코드기반모델

물리적모델

° DBMS나 물리적 저장장치 구조와 무관하게 사용자 관점에서 기술

° 사용자와 저장장치 관점의 중간에서 데이터베이스를 기술, DBMS와 밀접한 연관성을 갖음

° 저장장치에 저장되는 관점에서 데이터베이스 기술

° 개체-관계모델(E-R Model)
° 객체지향 모델(OO Model)
° 의미적 모델(Semantic Model)

° 관계 모델
° 계층 모델
° 네트워크 모델

° 연합모델(Unifying Model)
° 프레임메모리(Frame memory)

※ 연결함정

부채꼴함정(Fan Trap)

균열함정(Chasm Trap)

° entitiy간의 관계모델 설계를 잘못하여 연계된 정보 Tracing이 불가능한 것
° 모델을 변환하여 해결함

° 관계성이 정의되어 있으나 일부 entity간에는 관계가 존재하지 않는 경우
° 관계성 집합을 추가

※ EER모델 : ER모델에 일반화(generalization), 집단화(aggregation), 세분화(specialization) 등의 추상적 기능을 추가  Specialization, Generalization, Aggregation, Inheritance, Subtype/SuperType

논리적 설계
<스키마>

° 데이터 모델링 - 개념적 데이터베이스를 논리적 설계로 변환하는 과정(목표 DBMS에 종속적인 논리 스키마 설계)
° LDM(Logical Data Modeling), 계층형, 네트워크형, 객체관계형, 관계형모델등의 데이터베이스 구조로 전환
° 관계매핑(Relation Mapping), Transaction Interface설계, 정규화 및 무결성 제약 정의, 성능추정 단계
 

계층형(Hierachical)

° 개체 집합들 사이의 관계를 링크로 연결한 트리형태의 구조
° 1:n 관계의 대용량 데이터베이스 처리에 매우 강력
° 사용자는 데이터 저장의 물리적 저장구조를 알아야 하며 구조 변경시 Application도 같이 변경됨
° 1:n관계가 아닌 일반적인 관계(n:m)는 구조상 표현이 매우 어려움

망형(Network)

° 개체 집합들 사이의 관계를 링크로 연결한 그래프형태의 구조
° 멤버 레코드형이 여러 개의 집합에 속할 수 있으므로 다대다(n:m)관계의 표현이 보다 용이함
° 한 오너(Owner)로부터 다른 오너로 직접 이동 가능
° 계층형 모델처럼 데이터 저장의 물리적 구조를 알아야 하며 구조 변경시 Application도 같이 변경

관계형(Relational)

° 개체 집합에 대한 속성 관계를 표현하기 위하여 개체를 테이블로 사용하고 개체 집합들 사이의 관계는 공통속성으로 연결하는 독립된 형태의 데이터 모델

객체지향(Object-

oriented)

° 상속, 객체ID, 자료추상형 등의 객체지향 개념과 데이터베이스 개념을 통합하여 가급적 실세계와  유사하게 모형화하는 데이터 모델

객체관계(Relational object)

° 객체지향모델의 장점과 관계모델의 장점을 취하여 하나의 시스템으로 통합된 모델

물리적 설계
<인스턴스>

° PDM(Physical Data Modeling)
° 특정 DBMS에 맞는 레코드 양식, 저장구조(Clustering등..)와 접근방식(Index등..) 설계

DB 구현

° 목표 DBMS를 이용하여 저장DB로 구현
° DDL로 기술된 명령문의 컴파일 및 실행
° 성능평가 - 저장 공간 평가, 시간평가(질의응답시간, 트랜잭션 갱신시간, 보고서 작성시간)


2008/08/21 - [IT 노트/소프트웨어공학] - 소프트웨어 분석 및 설계도 확인해보세요. 소프트웨어 분석 및 설계 단계를 설명합니다. 설계원칙으로 추상화, 단계적정제,모듈화/구조화에 대해 정리하고, HIPO, N-S Chart, 정형기법등과 같은 설계 및 개발지원도구들에 대해 설명합니다.
반응형