DataBase

데이터 모델링

Z00_HWAN_99 2024. 8. 1. 10:05
728x90
반응형

Model : 모형, 본보기

Model이란 무엇이며, 왜 필요한가?

  • 전체적인 구조나 기반을 정확히 명시할 수 있게끔 해주고, 설계가 가능 및 용이하게 해준다.
  • 현실세계의 복잡한 정보나 개념, 사물을 추상화, 일반화, 가시화, 구체화를  거쳐 그 누구나 봤을 경우에도 한눈에 이해가 가능하게 해준다.
  • 데이터들을 관계를 맺는 방식으로 구성하고, 그 구조 자체를 자신이 원하는 방식으로 활용할 수 있게끔 한다.
  • 안정적인 데이터를 구축하기 위한 가이드라인.
  • 하나의 과정이나 설계을 하며 개발자와 DB설계자 간의 커뮤니케이션에 있어서 의사소통 역할을 하며, 수월하게 해준다.
  • 요구사항을 명세하여 시스템에서 사용할 데이터들을 모아서 정의한 것.

객체지향의 추상화란?

  • 현실세계에서 객체에서 공통적인 성질을 추출해 내는 과정

데이터베이스 생명주기(Database Life Cycle)

  • 데이터 베이스의 생성과 운영에 관련된 특징
    1. 요구사항 수집 및 분석
      • 사용자들의 요구사항을 듣고 분석하여 데이터베이스 구축의 범위를 정함.
    2. 설계
      • 분석된 요구사항을 기초로 주요 개념과 업무 프로세스 등을 식별하고(개념적 설계), 사용하는 DBMS의 종류에 맞게 변환(논리적 설계)한 후, 데이터베이스 스키마를 도출(물리적 설계)함.
    3. 구현
      • 설계 단계에서 생성한 스키마를 실제 DBMS에 적용하여 테이블 및 관련 객체(뷰, 인덱스 등)를 만듦.
    4. 운영
      • 구현된 데이터베이스를 기반으로 소프트웨어를 구축하여 서비스를 제공함.
    5. 감시 및 개선
      • 데이터베이스 운영에 따른 시스템의 문제를 관찰하고 데이터베이스 자체의 문제점을 파악하여 개선함.

데이터 모델링의 과정

  • 요구사항 수집 및 분석
  • 개념적모델링 -->> 개념적 모델링(E-R 다이어그램)
  • 논리적 모델링 ->> 관계 데이터 모델(테이블 간의 관계)
  • 물리적 모델링 -->> 쿼리문 생성 DB 구현
  • 데이터베이스 구현

요구사항 수집 방법

  1. 실제 문서를 수집하고 분석함.
  2. 담당자와의 인터뷰나 설문조사를 통해 요구사항을 직접 수령함.
  3. 비슷한 업무를 처리하는 기존의 데이터베이스를 분석함.
  4. 각 업무와 연관된 모든 부분을 살펴봄.

개념적 모델링

  • 요구사항을 수집하고 분석한 결과를 토대로 업무의 핵심적인 개념을 구분하고 전체적인 뼈대를 만드는 과정.
  • 개체(Entity)를 추출하고 각 개체들 간의 관계를 정의하여 ER 다이어그램(ERD)을 만드는 과정까지를 말함.

논리적 모델링

  • 개념적 모델링에서 만든 ER 다이어그램을 사용하여는 DBMS에 맞게 사상(매핑, Mapping)하여 실제 데이터베이스로 구현하기 위한 모델을 만드는 과정.
  • 논리적 모델링 과정
    1. 개념적 모델링에서 추출하지 않았던 상세 속성들을 모두 추출.
    2. 정규화 수행.
    3. 데이터 표준화 수행

물리적 모델링

  • 작성된 논리적 모델을 실제 컴퓨터의 저장 장치에 저장하기 위한 물리적 구조를 정의하고 구현하는 과정.
  • DBMS 특성에 맞게 저장 구조를 정의해야 데이터베이스가 최적의 성능을 낼 수 있음.
  • 물리적 모델링 시 트랜잭션, 저장공간 설계 측면에서 고려할 사항.
    1. 응답 시간을 최소화.
    2. 얼마나 많은 트랜잭션을 동시에 발생시킬 수 있는지 검토.
    3. 데이터가 저장될 공간을 효율적으로 배치.

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
반응형

'DataBase' 카테고리의 다른 글

Stored Procedure(저장 프로시저)  (0) 2024.08.08
정규화  (1) 2024.08.01
무결성 제약 조건  (2) 2024.07.22
관계 데이터 모델  (0) 2024.07.22
데이터베이스란  (2) 2024.07.22