The Entity-Relationship Model-Toward a Unified View of Data

ono·2025년 10월 20일

Paper

목록 보기
2/3

엔터티-관계 모델


1. 서론: 왜 ER 모델이 중요한가

1970년대 중반까지 데이터베이스 시스템은 네트워크 모델(Network Model)관계형 모델(Relational Model), 그리고 엔터티 집합 모델(Entity Set Model)이 주류였습니다.
그러나 각각의 모델은 현실 세계의 의미(semantics)를 충분히 표현하지 못했습니다.

MIT의 Peter P.-S. Chen 교수는 1976년 논문에서 ‘엔터티-관계 모델(Entity-Relationship Model, ER 모델)’을 제안하며 이를 해결하고자 했습니다.
이 모델은 현실 세계를 ‘엔터티(Entity)’와 ‘관계(Relationship)’로 나누어 이해하고, 이를 시각적으로 표현함으로써 데이터 설계의 의미적 일관성을 확보했습니다.


2. ER 모델의 기본 개념

2.1 엔터티(Entity)란 무엇인가

  • 엔터티(Entity)는 현실 세계에서 명확히 식별 가능한 사물이나 개체를 의미합니다.
    예: 사람, 회사, 제품, 사건 등

  • 엔터티는 속성(Attribute)을 가집니다.
    예를 들어, 직원(Employee) 엔터티는 이름, 사번, 나이 등의 속성을 가질 수 있습니다.

2.2 관계(Relationship)란 무엇인가

  • 관계(Relationship)엔터티 간의 연관성을 의미합니다.
    예: 직원(Employee) — 프로젝트(Project) 관계 → "어떤 직원이 어떤 프로젝트에 참여하는가?"

  • 관계도 속성을 가질 수 있습니다.
    예: “참여율(percentage_of_time)”처럼 관계 자체에 대한 정보입니다.

2.3 속성(Attribute)과 값(Value)

  • 속성은 엔터티의 특성을 나타내는 이름이고,
    값은 그 속성이 가지는 실제 데이터입니다.
    예: 이름 = “김민수”, 나이 = 29

Chen은 속성을 함수(function)로 정의했습니다.
즉, 한 엔터티에서 하나의 값(또는 값의 집합)을 반환하는 구조로 설명했습니다.


3. ER 다이어그램(Entity-Relationship Diagram)

Peter Chen은 ER 모델을 직관적으로 이해하기 위해 ER 다이어그램(ERD)이라는 시각적 표현법을 제안했습니다.

기호의미
■ 사각형엔터티(Entity)
◆ 마름모관계(Relationship)
○ 원속성(Attribute)
→ 화살표종속 관계 (1:N 등)

예시:

직원(Employee) ─── 참여(Works_On) ─── 프로젝트(Project)

이 구조를 통해

  • 한 직원이 여러 프로젝트에 참여할 수 있는 1:N 관계,
  • 한 프로젝트에 여러 직원이 배정될 수 있는 M:N 관계를 명확히 표현할 수 있습니다.

4. 엔터티 유형: 강한 엔터티와 약한 엔터티

Chen은 엔터티를 두 가지 형태로 구분했습니다.

  1. 강한 엔터티(Regular Entity)

    • 독립적으로 존재할 수 있습니다.
    • 예: 직원(Employee), 부서(Department)
  2. 약한 엔터티(Weak Entity)

    • 다른 엔터티에 의존해 존재합니다.
    • 예: 직원의 가족(Dependent)은 직원이 없으면 존재 의미가 없습니다.
    • 식별자는 부모 엔터티의 키(Primary Key)를 포함합니다.

5. ER 모델의 4단계 설계 과정

Chen은 데이터베이스 설계를 다음 4단계로 제시했습니다.

1️⃣ 엔터티와 관계 식별

  • 모델링할 현실 세계의 개체와 관계를 정의합니다.

2️⃣ 관계의 의미 정의

  • 관계의 방향성과 종속성을 명시합니다. (1:1, 1:N, M:N 등)

3️⃣ 속성과 값 집합(Value Sets) 정의

  • 각 엔터티와 관계의 속성과 가능한 값의 범위를 정의합니다.

4️⃣ 기본 키(Primary Key) 및 스키마 정의

  • 각 엔터티를 고유하게 식별할 수 있는 키를 지정합니다.

6. ER 모델과 데이터 무결성(Data Integrity)

ER 모델은 데이터의 논리적 구조를 명확히 하여 무결성 제약조건을 표현하기 쉽게 합니다.

  • 값 제약(Value Constraint): 속성 값의 허용 범위를 제한합니다.
  • 도메인 제약(Domain Constraint): 값의 데이터 타입과 범위를 정의합니다.
  • 참조 무결성(Referential Integrity): 약한 엔터티가 강한 엔터티에 종속되어 존재해야 함을 보장합니다.

이러한 제약들은 데이터베이스의 일관성을 유지하는 데 매우 중요합니다.


7. 다른 모델과의 비교

구분네트워크 모델관계형 모델엔터티-관계 모델
중심 개념데이터 레코드 간의 링크테이블(관계)엔터티와 관계
구조 표현복잡한 포인터 구조단순한 행과 열시각적 다이어그램
의미적 표현제한적제한적풍부하고 명확
데이터 독립성낮음높음높음

Chen은 ER 모델이 이 세 가지 모델을 통합할 수 있는 공통 기반이 될 수 있다고 주장했습니다.


8. ER 모델의 의의와 현대적 영향

Peter Chen의 ER 모델은
이후 관계형 데이터베이스 설계(SQL 스키마 설계)의 기초가 되었으며,
오늘날에도 ERD 툴, UML 클래스 다이어그램, NoSQL 설계 등에서 핵심 개념으로 사용되고 있습니다.

즉, 현대 데이터베이스 이론의 뼈대가 바로 이 모델에서 비롯되었습니다.


9. 결론

엔터티-관계 모델은 단순한 이론적 개념이 아니라,
현실 세계의 복잡한 데이터를 체계적으로 구조화하는 가장 직관적이고 논리적인 방법입니다.

Chen의 접근법은 데이터의 의미(Semantics)를 중심에 두고,
데이터 독립성, 무결성, 통합성을 모두 강화했습니다.

이 모델은 오늘날 데이터 과학, 인공지능, 지식 그래프 설계에도 여전히 적용되고 있으며,
데이터 구조를 이해하는 기본 언어로 자리 잡았습니다.


📚 참고 자료

0개의 댓글