논리적 모델과 물리적 모델 이해하기

KUKJIN LEE's profile picture

KUKJIN LEE5개월 전 작성

데이터베이스 설계에서 논리적 모델과 물리적 모델의 차이를 이해하는 것은 매우 중요합니다. 이는 효과적인 데이터베이스 개발을 돕고 프로젝트에 참여하는 다양한 이해관계자 간의 원활한 소통을 보장합니다.

 

논리적 모델이란?

논리적 데이터 모델(Logical Data Model, LDM)은 조직의 데이터를 고수준에서 표현하며, 비즈니스 및 기술 요구사항에 중점을 둡니다. 이는 데이터베이스에 물리적으로 구현되는 방식은 고려하지 않은 추상적인 관점을 제공합니다.

(여기서 중요한 부분은 추상적인 관점이라는 겁니다.)

  • 엔터티 관계 다이어그램(ERD): 엔터티, 속성 및 관계를 보여주는 시각적 표현.

  • 속성: 데이터 필드와 그 유형에 대한 상세 설명.

  • 정규화: 데이터가 효율적으로 조직되어 중복을 줄이도록 보장.

논리적 데이터 모델의 장점:

  • 명확성: 데이터 요구사항 및 관계를 이해하는 데 도움.

  • 유연성: 변경되는 비즈니스 요구에 쉽게 수정 및 적응 가능.

  • 소통: 비즈니스 분석가, 개발자, 이해관계자 간의 공통 언어 역할.

 

물리적 모델이란?

물리적 데이터 모델(Physical Data Model, PDM)은 특정 데이터베이스 관리 시스템(DBMS)에 맞춘 세부적인 기술적 표현입니다. 당연히 논리적 모델이 선행되어야 할 것이고 이를 바탕으로 물리적 모델을 작성해야 합니다.

(논리적 모델이 아무리 완벽해도, 물리적 모델 구현을 못하면 의미가 없습니다.)

  • 테이블과 열: 테이블 이름, 열 이름, 데이터 유형 및 제약 조건과 같은 구체적인 구현 세부 사항.

  • 인덱스: 쿼리 성능 최적화를 위한 인덱스 정보.

  • 저장: 데이터가 저장될 방식에 대한 세부 정보, 파일 그룹 및 파티션 포함.

물리적 데이터 모델의 장점:

  • 성능 최적화: 데이터베이스 성능을 향상시키는 방법에 대한 통찰력 제공.

  • 구현 지침: 데이터베이스 생성 및 관리에 대한 청사진 역할.

  • 구체성: 선택한 DBMS의 제약과 기능에 맞춘 맞춤형 설계.

 

논리적 모델과 물리적 모델의 차이점

  1. 추상화

    1. 논리적 모델: 비즈니스 요구에 중점을 둔 추상적 관점

    2. 물리적 모델: 기술적 구현에 중점을 둔 세부적 관점

 

  1. 목적

    1. 논리적: 데이터 요구사항과 관계를 이해하고 문서화

    2. 물리적: 데이터베이스 생성 및 최적화를 위함

 

  1. 구성 요소

    1. 논리적: Entity, 속성, 관계 및 정규화

    2. 물리적: 테이블, 열, 데이터 유형, 제약 조건 및 인덱스

 

  1. 유연성

    1. 논리적: 변화하는 비즈니스 요구에 쉽게 수정 가능

    2. 물리적: 상세한 구현 특성으로 변경이 복잡하고 비용이 많이 듦

 

논리적 모델과 물리적 모델 모두 이해가 필요한 이유는 효과적인 소통, 효율적인 설계, 성능을 위해서 입니다.

논리적 모델이 완벽해도 물리적 모델 구현이 불가능하거나, 효율, 성능을 따졌을 때 비합리적이라면 논리적 모델을 수정해야 합니다. 반대로 논리적 모델을 작성할 때 확장 가능성에 대해서도 생각하고 물리적 모델을 보장할 수 있어야 합니다.

New Tech Posts