본문 바로가기
카테고리 없음

데이터 모델링 - ERD 작성 절차와 데이터 모델링의 핵심 요소 - 3층 스키마? (SQLD대비)

by moment-love 2025. 1. 22.

 

 

 

데이터 모델링 - ERD 작성 절차와 데이터 모델링의 핵심 요소 -  3층 스키마?

 

데이터베이스 설계는 체계적이고 효율적인 데이터 관리의 핵심입니다.

이를 위해 ERD(Entity-Relationship Diagram)를 작성하고 데이터 모델링의 주요 원칙을 이해하는 것이 중요합니다.

 

ERD란 무엇인지 간략하게 소개후,

ERD 작성 절차, 데이터 모델링 시 고려사항,

그리고 3층 스키마의 개념과 독립성을 중심으로 다뤄보겠습니다.

 

 


 

ERD와 ER 다이어그램이란?

 

ERD(Entity-Relationship Diagram)는
데이터베이스 설계를 위해
엔터티(Entity), 속성(Attribute), 관계(Relationship)를 시각적으로 표현한 다이어그램입니다.

ER 다이어그램이라고도 불리며,
복잡한 데이터 구조를 쉽게 이해하고 설계하는 데 도움을 줍니다.

 

 

 

주요 구성 요소

 

 

엔터티(Entity)

 

  • 데이터베이스에서 관리해야 할 독립적인 개체를 의미합니다.
    • 예: 고객, 제품, 주문.
      • 표현: 사각형으로 표시

 

속성(Attribute)

 

  • 엔터티의 특성을 나타내는 세부 정보를 의미합니다.
    • 예: 고객 엔터티의 이름, 주소, 전화번호.
      • 표현: 타원으로 표시.

 

 

관계(Relationship)

 

  • 두 개 이상의 엔터티 간의 연관성을 나타냅니다.
    • 예: 고객과 주문의 관계(고객은 주문을 한다).
      • 표현: 마름모로 표시.

 

 

키(Key)

 

 

  • 엔터티 내의 데이터를 고유하게 식별하는 속성.
    • 예: 고객 ID(Primary Key)

 


 

ERD 작성 절차

ERD는 데이터베이스 설계의 기초로, 시스템 내 데이터와 그 관계를 시각적으로 표현합니다.

 

 

다음은 ERD를 작성하는 단계입니다.

 

 

1. 엔터티 도출
  • 데이터베이스에서 관리해야 할 주요 객체(엔터티)를 식별합니다.
    • 예: 고객, 주문, 제품 등.

2. 엔터티 배치
  • 도출한 엔터티를 적절히 배치합니다.
    • 이해하기 쉽도록 중요한 엔터티는 왼쪽 상단에 배치하는 것이 좋습니다.

3. 엔터티 간의 관계 설정
  • 엔터티 간의 상호작용을 나타냅니다.
    • 예를 들어, '고객'은 '주문'을 하고, '주문'은 '제품'과 연결됩니다.

4. 관계명 서술
  • 관계의 의미를 명확히 하기 위해 이름을 부여합니다.
    • 예: "고객이 주문한다", "주문은 제품을 포함한다".

5. 관계 참여도 표현
  • 관계가 1:1, 1:N, N:M인지 명시합니다.

6. 관계 필수 여부 표현
  • 관계가 필수인지 선택적인지 표시합니다.
    • 예: '고객'은 반드시 '주문'을 해야 하는지 여부

 


 

데이터 모델링 시 고려사항

 

데이터 모델링은 데이터베이스 설계의 기본이자 중심입니다.

 

 

다음은 데이터 모델링 시 꼭 고려해야 할 세 가지 요소입니다.

 

 

데이터 모델의 독립성
  • 독립성이 확보된 모델은 데이터 중복을 제거하고, 업무 변화에 빠르게 대응할 수 있습니다.
    • 이를 위해 정규화를 통해 중복 데이터를 최소화해야 합니다.
고객 요구사항의 표현
  • 데이터 모델은 고객의 요구를 명확히 반영해야 합니다.
    • 이를 통해 데이터 모델러와 고객 간의 효과적인 의사소통이 가능합니다.

데이터 품질 확보
  • 데이터 표준을 정의하고 이를 준수함으로써 데이터 품질을 높일 수 있습니다.
    • 데이터 표준화는 데이터베이스 관리의 핵심입니다.

 


 

스키마란 무엇인가?

스키마(Schema)는 데이터베이스에서 데이터 구조를 정의한 설계도 또는 청사진을 의미합니다.

데이터가 어떻게 구성되고, 저장되고, 서로 연결되는지를 체계적으로 설명한 데이터베이스의 핵심 개념입니다.

스키마는 데이터베이스를 설계하고 이해하는 데 필수적인 역할을 하며,
사용자와 시스템 간의 데이터 관점을 연결하는 중요한 도구입니다.

 

 

 

스키마의 주요 구성 요소

 

테이블(Table)

 

  • 데이터가 저장되는 기본 단위로, 행(Row)과 열(Column)로 구성됩니다.
    • 예: 고객 테이블에는 고객 ID, 이름, 주소 등의 열이 포함됩니다.

 

 

속성(Attribute)

 

  • 테이블의 각 열을 속성이라 하며, 데이터의 특성을 나타냅니다.
    • 예: 속성으로 '이름', '나이', '주소' 등이 있을 수 있습니다.

 

 

키(Key)

 

  • 데이터를 고유하게 식별하는 요소로, 기본 키(Primary Key)와 외래 키(Foreign Key) 등이 있습니다.
    • 예: 고객 테이블에서 '고객 ID'는 기본 키 역할을 합니다.

 

 

제약조건(Constraint)

 

 

  • 데이터 무결성을 유지하기 위한 규칙입니다.
    • 예: NOT NULL, UNIQUE, FOREIGN KEY 제약조건.

 

 

스키마의 유형

외부 스키마(External Schema)

개념 스키마(Conceptual Schema)

개념 스키마(Conceptual Schema)

 

 

스키마의 역할

 

  • 데이터 구조의 명확한 정의
    • 데이터베이스에 어떤 데이터가 저장되고, 어떤 관계가 있는지를 체계적으로 명시합니다.

  • 데이터 무결성 유지
    • 데이터 중복을 방지하고, 데이터 간의 관계와 제약조건을 통해 일관성을 유지합니다.

  • 효율적 데이터 관리
    • 스키마를 통해 데이터베이스의 설계 및 수정이 용이하며, 데이터 검색과 관리 효율성을 높입니다.

 


3층 스키마의 개념과 독립성

 

3층 스키마는 데이터베이스의 독립성을 확보하는 데 중요한 역할을 합니다.
ANSI 표준에 따라 데이터베이스를 세 가지 관점에서 정의합니다.

 

 

 

 

외부 스키마(External Schema)

 

  • 사용자의 관점에서 업무에 필요한 데이터만을 표시합니다.
    • 예: 특정 사용자가 접근할 수 있는 데이터 뷰(View).

 

 

개념 스키마(Conceptual Schema)

 

 

  • 설계자의 관점에서 데이터베이스 전체 구조를 나타냅니다.
    • 예: 데이터 엔터티와 관계를 통합적으로 표현.

 

 

내부 스키마(Internal Schema)

 

 

  • 개발자의 관점에서 데이터의 물리적 저장 구조를 설명합니다.
    • 예: 레코드 구조, 인덱스, 필드 정의.
  • 3층 스키마는 논리적 독립성물리적 독립성을 제공합니다.
    • 예를 들어, 개념 스키마가 변경되더라도 외부 스키마에는 영향을 미치지 않으며,
      내부 스키마 변경 시에도 개념 스키마는 유지됩니다.

 


 

3층 스키마의 독립성

 

논리적 독립성

개념 스키마가 변경되더라고
외부 스키마가 영향을 받지 않는 것


물리적 독립성

내부 스키마가 변경되더라도
개념 스키마가 영향을 받지 않는 것

 

 


 

결론 : ERD 작성과 데이터 모델링은 효율적인 데이터베이스 설계의 핵심

 

ERD 작성과 데이터 모델링은 효율적인 데이터베이스 설계의 핵심입니다.

 

ERD 작성 절차를 명확히 이해하고, 데이터 모델링 시 독립성과 품질을 고려하며,

3층 스키마의 개념을 적용하면 데이터베이스의 성능과 관리 효율성을 크게 향상할 수 있습니다.

 

이를 통해 데이터베이스 설계가 복잡한 업무 요구사항을 유연하게 처리하도록 지원할 수 있습니다.

반응형