728x90
반응형
Model : 모형, 본보기
Model이란 무엇이며, 왜 필요한가?
- 전체적인 구조나 기반을 정확히 명시할 수 있게끔 해주고, 설계가 가능 및 용이하게 해준다.
- 현실세계의 복잡한 정보나 개념, 사물을 추상화, 일반화, 가시화, 구체화를 거쳐 그 누구나 봤을 경우에도 한눈에 이해가 가능하게 해준다.
- 데이터들을 관계를 맺는 방식으로 구성하고, 그 구조 자체를 자신이 원하는 방식으로 활용할 수 있게끔 한다.
- 안정적인 데이터를 구축하기 위한 가이드라인.
- 하나의 과정이나 설계을 하며 개발자와 DB설계자 간의 커뮤니케이션에 있어서 의사소통 역할을 하며, 수월하게 해준다.
- 요구사항을 명세하여 시스템에서 사용할 데이터들을 모아서 정의한 것.
객체지향의 추상화란?
- 현실세계에서 객체에서 공통적인 성질을 추출해 내는 과정
데이터베이스 생명주기(Database Life Cycle)
- 데이터 베이스의 생성과 운영에 관련된 특징
- 요구사항 수집 및 분석
- 사용자들의 요구사항을 듣고 분석하여 데이터베이스 구축의 범위를 정함.
- 설계
- 분석된 요구사항을 기초로 주요 개념과 업무 프로세스 등을 식별하고(개념적 설계), 사용하는 DBMS의 종류에 맞게 변환(논리적 설계)한 후, 데이터베이스 스키마를 도출(물리적 설계)함.
- 구현
- 설계 단계에서 생성한 스키마를 실제 DBMS에 적용하여 테이블 및 관련 객체(뷰, 인덱스 등)를 만듦.
- 운영
- 구현된 데이터베이스를 기반으로 소프트웨어를 구축하여 서비스를 제공함.
- 감시 및 개선
- 데이터베이스 운영에 따른 시스템의 문제를 관찰하고 데이터베이스 자체의 문제점을 파악하여 개선함.
- 요구사항 수집 및 분석
데이터 모델링의 과정
- 요구사항 수집 및 분석
- 개념적모델링 -->> 개념적 모델링(E-R 다이어그램)
- 논리적 모델링 ->> 관계 데이터 모델(테이블 간의 관계)
- 물리적 모델링 -->> 쿼리문 생성 DB 구현
- 데이터베이스 구현
요구사항 수집 방법
- 실제 문서를 수집하고 분석함.
- 담당자와의 인터뷰나 설문조사를 통해 요구사항을 직접 수령함.
- 비슷한 업무를 처리하는 기존의 데이터베이스를 분석함.
- 각 업무와 연관된 모든 부분을 살펴봄.
개념적 모델링
- 요구사항을 수집하고 분석한 결과를 토대로 업무의 핵심적인 개념을 구분하고 전체적인 뼈대를 만드는 과정.
- 개체(Entity)를 추출하고 각 개체들 간의 관계를 정의하여 ER 다이어그램(ERD)을 만드는 과정까지를 말함.
논리적 모델링
- 개념적 모델링에서 만든 ER 다이어그램을 사용하여는 DBMS에 맞게 사상(매핑, Mapping)하여 실제 데이터베이스로 구현하기 위한 모델을 만드는 과정.
- 논리적 모델링 과정
- 개념적 모델링에서 추출하지 않았던 상세 속성들을 모두 추출.
- 정규화 수행.
- 데이터 표준화 수행
물리적 모델링
- 작성된 논리적 모델을 실제 컴퓨터의 저장 장치에 저장하기 위한 물리적 구조를 정의하고 구현하는 과정.
- DBMS 특성에 맞게 저장 구조를 정의해야 데이터베이스가 최적의 성능을 낼 수 있음.
- 물리적 모델링 시 트랜잭션, 저장공간 설계 측면에서 고려할 사항.
- 응답 시간을 최소화.
- 얼마나 많은 트랜잭션을 동시에 발생시킬 수 있는지 검토.
- 데이터가 저장될 공간을 효율적으로 배치.
https://github.com/bottomsUp-99?tab=repositories
bottomsUp-99 - Overview
Backend Developer. bottomsUp-99 has 12 repositories available. Follow their code on GitHub.
github.com
728x90
반응형