데이터베이스 03-02 (DBMS 설계, ER Model)
데이터베이스설계
- 데이터베이스 전체에 대한 체계를 확립하는 일
- 데이터베이스 설계자는 기획, 디자인, 구현책임, 유지보수 역량을 가짐
- 업무나 일의 환경을 이해하고 적용하는 능력
- 데이터베이스 시스템 환경 구축 능력
- 능숙한 데이터베이스 프로그래밍 능력
ER[Entity-Relationship] Model?
- 초기, 고수준(개념적) database 설계를 표현하는데 사용하는 Model
- ER Model은 실 세계를 ① Entity, ② Attribute, ③ Entity들 간의 관계성으로 표현
- ER Model의 특징 : 그림으로 표현함 (정형화된 도형으로 표현 , 정형화된 도형→스키마) 즉 그림 자체가 스키마가 됨. 도형 간의 관계성
- ER Model은 ER Diagram으로 표현한다.
(① 엔티티 타입, ② 관계 타입, ③ 이들의 애트리뷰트들을 그래픽하게 표현 ) - 최종적으로, ER Model은 관계 Data Model로 쉽게 바꿀 수 있다.
- ER Diagram은 Relational Schema (Relation table)로 바꿀 수 있음.
📌장점
a. 개념적 설계를 위한 인기 있는 Model
b. 높은 수준으로 추상화함
c. 이해하기 쉬움.
d. 구문들의 표현력이 뛰어남
e. 사람들이 응용에 대해 생각하는 방식과 가까움
f. 많은 CASE 도구들에서 지원됨
(* ER모델로 표현하면 스키마를 자동으로 만들어줌)
개념적 설계와 물리적 설계
◾ 개념적 database 설계
특정 Data model과 독립적으로 응용세계를 모델링할 수 있도록 하는 일반적 방법론
-
실제로 데이터 베이스를 ”어떻게 구현할 것인가” 와는 독립적으로, 정보 사용의 모델을 개발하는 과정
-
개념적 Database 설계 과정에서 조직체(실세계)의 엔티티, 관계, 프로- 세스, 무결성, 제약조건 등을 나타내는 추상화 Model을 구축
-
인기있는 개념적 수준의 Model에는 ER Model(엔티티- 관계)이 있음
-
Database 구조나 Schema를 하향식으로 개발할 수 있기 위한 framework를 제공.
-
컴퓨터에서 data를 표현하거나 검색하는 것과 같이 구체적인 것은 거의 고려하지 x
-
ER (개념적 데이터 모델)을 구현(관계 data model/ 계층 datamodel(ex.tree조직도 모델)/ 네트워크 data model)으로 바꿔주는 Model이 존재함
- 엔티티 : 서로 구분이 되면서 실 세게에서 Database에 나타내려는 객체(사람, 장소, 사물 등)를 의미→ 구조 - 관계 : 두개 이상의 엔티티들 간의 연관을 나타냄 → 연산 - 프로세스 : 관련된 활동을 나타냄 → 연산 - 무결성 제약조건 : Data의 정확성과 비즈니스 규칙을 의미 → 제약조건
◾ 물리적 database설계
물리적인 저장 장치(disk등)와 접근 방식(access path)을 다룸
개념적 설계의 최종 산출물 = 물리적인 구현을 고려하지 않는, 한 조직의 개념적 schema
Database 설계 개요
Database를 생성하는 과정 (=schema 설계)
- 목적
Data 간의 관계를 표현하는 것 !
훌륭한 Database 설계란 ?
- 시간의 흐름에 따른 Data의 모든 측면을 나타냄
- Data 항목의 중복을 최소화
- Database에 대한 효율적인 접근(access path)을 제공 (ex.인덱스파일만 참조해서 찾기)
- Database의 무결성을 제공한다 → 명확하고 일관성 있게 정리
이해하기 쉬워야 함
데이터베이스 개발 라이프 사이클
Database 설계 단계
-
요구사항 수집 및 분석
(Entity) 관련있는 엔티티들을 선정
(Attribute) 엔티티들의 속성들이 무엇인가를 결정
(Relationship) 엔티티들 간의 관계가 무엇인가를 파악하고 적용
적합한 연산
연산들의 의미가 명확한 지 재분석
데이터 양, 타입, 사용자, 결과, 예상되는 이상치 등을 분석 -
개념적 설계
- 설계 결과는 ER Diagram으로 표현
- 대표적 데이터 모델이 ER Model
- 엔티티 타입 결정. 관계 타입 결정. 애트리뷰트들 결정, 애트리뷰트들의 도메인 결정, 기본키와 후보키 애트리뷰트 결정
- 완성된 개념적 Schema는 ER Diagram으로 표현됨!!!
-
DBMS 선정
'기술적 / 정치적 / 경제적' 요인을 고려해 DBMS 선정 -
논리적 설계
논리적 Schema 생성 -
물리적 설계
- 성능 향상을 위함 (disk, access path, 질의어)
- 응답 시간 / Transaction 처리율 / 확장성 / 유연성
-
Transaction설계(응용 프로그래밍 고려 단계)
- 프로그램 계획서 생성
- 🎇완성될 Database에서 동작할 응용프로그램
- '고객의 최종 필요성을 중심'으로 프로그래밍 고려하는 레벨
- 검색, 갱신, 입력, 출력 등의 유형으로 구분
-
튜닝
Author And Source
이 문제에 관하여(데이터베이스 03-02 (DBMS 설계, ER Model)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@jenzennii/데이터베이스-03-02-DBMS-설계-ER-Model저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)