본문 바로가기
데이터베이스

현실 세계의 완벽한 추상화: 개념적, 논리적, 물리적 데이터 모델링 3단계와 ERD 설계 원칙

by 매일기술사 2026. 6. 11.
데이터모델링 - 기술사 학습노트
Database · 정보관리기술사 / 컴퓨터시스템응용기술사

데이터모델링(Data Modeling)

현실 세계의 업무와 정보를 구조화하여 엔터티, 속성, 관계, 제약조건으로 표현하고 이를 논리적·물리적 데이터 구조로 구체화하여 안정적인 데이터베이스를 설계하는 활동

정보관리기술사컴퓨터시스템응용기술사데이터모델링개념모델논리모델물리모델ERD정규화식별자관계모델
Ⅰ.개요 및 등장배경

가. 데이터모델링의 정의

데이터모델링은 현실 세계의 업무 대상과 정보 흐름을 분석하여 데이터 구조로 체계화하는 과정이다. 기업이나 기관의 업무는 고객, 상품, 주문, 계약, 조직, 계정, 설비, 문서와 같은 정보 객체를 중심으로 움직이며, 이들 객체 사이에는 식별, 참조, 집계, 분류, 상태 변화 등 다양한 관계가 존재한다. 데이터모델링은 이러한 현실의 정보를 엔터티(Entity), 속성(Attribute), 관계(Relationship), 제약조건(Constraint), 식별자(Identifier)로 표현하여 데이터베이스가 어떤 구조로 관리되어야 하는지 설계하는 작업이다. 다시 말해, 데이터모델링은 업무의 의미를 정보 구조로 번역하는 과정이며, 데이터베이스 구축의 출발점이자 장기 운영 품질을 좌우하는 핵심 설계 활동이다.

기술사 관점에서 데이터모델링은 단순한 ERD 작성 기술이 아니다. 모델링은 업무 규칙을 반영하여 데이터 의미를 명확하게 정의하고, 중복과 불일치를 줄이며, 변경에 유연한 구조를 만드는 활동이다. 또한 분석·설계·개발·테스트·운영 단계 전체에서 공통 기준을 제공하는 역할을 한다. 데이터 모델이 부정확하면 화면과 프로그램은 일시적으로 동작할 수 있어도, 통합 분석과 확장, 성능 튜닝, 유지보수 단계에서 심각한 비용을 유발한다. 따라서 데이터모델링은 데이터베이스 설계뿐 아니라 정보시스템 전체 품질을 결정하는 기반이라고 할 수 있다.

나. 등장배경

  • 파일 중심 처리의 한계: 초기 정보시스템은 프로그램별 파일 구조에 의존해 데이터 중복과 불일치가 심했고 구조 변경 시 유지보수 비용이 컸다.
  • 업무 복잡도 증가: 조직 규모와 업무 프로세스가 커지면서 단순한 파일 설계만으로는 데이터 구조를 설명하기 어려워졌다.
  • 데이터 공유 필요성 증대: 여러 부서와 시스템이 동일한 고객, 상품, 조직 정보를 사용하게 되면서 통합된 데이터 구조가 필요해졌다.
  • 장기 운영과 확장성 요구: 정보시스템은 구축 후 수년간 지속 운영되므로 변경에 강하고 일관성 있는 데이터 구조가 필요했다.
  • AI·분석 활용 확대: 정형화된 양질의 데이터 구조가 데이터 웨어하우스, 데이터마이닝, 머신러닝 활용의 전제가 되었다.

다. 데이터모델링의 목적

데이터모델링의 목적은 첫째, 업무 정보를 정확하게 구조화하여 데이터 의미를 명확히 하는 것이다. 둘째, 데이터 중복과 불일치를 줄여 무결성과 신뢰성을 높이는 것이다. 셋째, 애플리케이션과 데이터 구조 간의 연계를 명확히 하여 개발 효율을 높이는 것이다. 넷째, 변화하는 업무 요구에 유연하게 대응할 수 있는 구조를 만드는 것이다. 다섯째, 물리적 데이터베이스 설계와 성능 최적화의 기준을 제공하는 것이다. 결국 데이터모델링은 “업무 이해 → 구조화 → 표준화 → 구현 가능성 확보”라는 흐름으로 이해할 수 있다.

라. 데이터모델링의 중요성

좋은 데이터모델은 시스템의 수명을 늘리고 유지보수 비용을 낮춘다. 반대로 모델이 부실하면 동일 정보가 여러 테이블에 중복 저장되고, 참조 관계가 불명확하며, 코드성 데이터와 업무 데이터가 뒤섞여 품질 문제가 반복된다. 특히 데이터 통합, 성능 튜닝, 규제 대응, 감사, AI 학습 데이터셋 구축까지 고려할 때 데이터모델링의 중요성은 더욱 커진다. 따라서 기술사 답안에서는 “데이터모델링은 DB 설계 문서 작성이 아니라 조직의 업무 구조를 정보 구조로 정립하는 활동”임을 분명히 드러내는 것이 좋다.

데이터모델링은 현실 세계의 업무 정보를 엔터티·속성·관계·제약조건으로 구조화하여 데이터베이스 설계의 기준을 만드는 활동이다.
답안에서는 정의와 목적뿐 아니라 업무 규칙 반영, 중복 제거, 무결성 확보, 장기 운영성과 확장성 측면의 의미를 함께 설명해야 한다.

Ⅱ.구성도 및 구성요소

가. 데이터모델링 설계 캔버스형 구성도

업무 요구에서 DB 구현까지 이어지는 데이터모델링 설계 캔버스

현실 업무 요구를 해석하여 개념모델, 논리모델, 물리모델로 구체화하고, 최종적으로 데이터베이스 객체와 운영 구조로 구현하는 단계별 설계 흐름이다.

업무 요구 및 규칙

업무 프로세스 · 정보 흐름 · 관리 대상 · 용어 정의 · 입력/출력 문서 · 법규와 정책 · 식별 기준을 분석하여 모델링의 출발점이 되는 현실 세계를 정리

개념 데이터모델

핵심 엔터티와 주요 관계를 업무 관점에서 단순화하여 표현한다. 사용자와 현업이 이해하기 쉬운 수준에서 정보 구조를 정의한다.

논리 데이터모델

속성, 식별자, 관계차수, 정규화, 이력관리, 서브타입, 무결성 규칙을 포함하여 구현 직전 수준의 논리 구조를 설계한다.

물리 데이터모델

테이블, 컬럼 타입, PK/FK, 인덱스, 파티션, 저장 구조, 성능 요소를 반영해 DBMS 구현 가능한 형태로 구체화한다.

표준화

용어·도메인·명명규칙

정규화

중복 제거·무결성 확보

관계정의

1:1 · 1:M · M:N

무결성

도메인·참조·개체 무결성

성능반영

인덱스·분할·이력설계

DB 구현 및 활용

테이블 생성 · 제약조건 적용 · 프로그램 연계 · SQL 작성 · 데이터 이행 · 품질검증 · 운영/분석/AI 활용까지 연결되는 최종 산출 단계

핵심 흐름

데이터모델링은 업무 요구를 바로 테이블로 그리는 작업이 아니라, 개념→논리→물리 단계로 점진적으로 구체화하는 계층적 설계 활동이다.

실무 포인트

모델링 품질은 업무 규칙 반영, 식별자 설정, 관계 정의, 정규화, 표준화, 이력관리, 성능 설계가 균형 있게 반영될 때 높아진다.

나. 구성요소

구분요소설명
모델링 대상엔터티(Entity)업무상 관리해야 할 독립적 정보 단위로 고객, 주문, 상품, 조직, 계약과 같은 객체를 의미한다.
세부 정보속성(Attribute)엔터티가 가지는 성질이나 세부 항목으로 이름, 주소, 금액, 상태코드, 등록일시 등이 해당된다.
연계 구조관계(Relationship)엔터티 간의 업무적 연관성을 표현하며, 1:1, 1:M, M:N과 같은 차수(Cardinality)를 가진다.
식별 구조식별자(Identifier)각 인스턴스를 유일하게 구분하는 기준으로 주식별자, 대체식별자, 내부식별자, 외부식별자를 정의한다.
규칙제약조건(Constraint)무결성 유지를 위해 NOT NULL, UNIQUE, 참조무결성, 도메인 규칙, 업무 규칙 등을 설정한다.
설계 단계개념모델업무 관점에서 핵심 엔터티와 관계를 요약한 상위 수준 모델이다.
설계 단계논리모델속성, 식별자, 상세 관계, 정규화 결과를 포함한 상세 구조 모델이다.
설계 단계물리모델DBMS 구현을 위해 테이블, 컬럼 타입, PK/FK, 인덱스, 분할, 저장 구조를 반영한 모델이다.
표준화 요소도메인/명명규칙속성 정의와 용어 체계의 일관성을 유지하기 위한 데이터 표준요소이다.
품질 요소정규화/반정규화중복 제거와 성능 확보라는 두 측면을 균형 있게 다루는 설계 기법이다.

데이터모델링의 구성요소는 엔터티, 속성, 관계, 식별자, 제약조건, 그리고 개념·논리·물리모델의 단계로 정리된다.
Ⅱ.가 구성도는 박스 일렬 나열보다 업무 요구를 중심으로 상단에서 하단으로 구체화되는 설계 캔버스형으로 이해하면 구조가 선명해진다.

Ⅲ.동작방식 및 아키텍처

가. 데이터모델링 수행 절차

  • 1단계 업무 분석: 업무 프로세스, 입력·출력 문서, 화면, 보고서, 규정, 용어를 분석하여 관리 대상 정보를 파악한다.
  • 2단계 엔터티 도출: 관리해야 할 핵심 객체를 추출하고, 엔터티 후보를 식별하여 통합·분리 여부를 검토한다.
  • 3단계 속성 정의: 각 엔터티가 가져야 할 속성을 도출하고, 원자성·의미 명확성·도메인 정의 여부를 검토한다.
  • 4단계 식별자 설계: 엔터티의 인스턴스를 유일하게 식별할 수 있는 주식별자를 정하고 대체식별자와 외래식별자를 설계한다.
  • 5단계 관계 정의: 엔터티 사이의 관계명, 관계차수, 선택성, 식별관계/비식별관계를 정의한다.
  • 6단계 정규화 수행: 중복 제거와 이상현상 방지를 위해 1NF, 2NF, 3NF, BCNF 등 정규화 관점에서 구조를 점검한다.
  • 7단계 논리모델 정교화: 이력관리, 코드체계, 서브타입, 반복속성 분리, 다대다 관계 해소 등 상세 설계를 수행한다.
  • 8단계 물리모델 변환: DBMS 특성에 맞는 테이블, 컬럼 타입, 제약조건, 인덱스, 파티션, 저장구조를 설계한다.
  • 9단계 검증 및 리뷰: 현업 적합성, 무결성, 성능 영향, 표준 준수 여부를 점검하고 모델 리뷰를 수행한다.
  • 10단계 구현 및 유지관리: DDL 생성, 프로그램 연계, 데이터 이행, 운영 변경관리까지 연결한다.

나. 데이터모델의 3단계 구조

구분개념 데이터모델논리 데이터모델물리 데이터모델
관점업무 중심정보 구조 중심DBMS 구현 중심
주요 내용핵심 엔터티와 관계속성, 식별자, 관계, 정규화, 무결성테이블, 컬럼 타입, 인덱스, 저장 구조
사용자현업 담당자, 분석가분석가, 설계자, 개발자DBA, 개발자, 운영자
목적업무 범위와 개체 정의 합의구조의 정확성과 일관성 확보실행성과 성능, 운영성 확보
표현 수준추상적이고 단순상세하고 정제됨구체적이고 구현 지향적

다. 핵심 설계 원리

데이터모델링의 핵심 원리는 현실 세계를 과도하게 단순화하지 않으면서도 관리 가능한 구조로 표현하는 데 있다. 첫째, 엔터티는 명확한 의미와 독립성을 가져야 하며, 단순 코드 목록과 업무 실체를 혼동하면 안 된다. 둘째, 속성은 원자값을 유지하고 반복 속성은 별도 엔터티로 분리하는 것이 바람직하다. 셋째, 관계는 업무 규칙을 반영해야 하며, 단순 연결선이 아니라 반드시 관계명과 차수, 선택성, 식별 여부가 설명되어야 한다. 넷째, 식별자는 장기 운영성과 확장성을 고려해 안정적으로 설계해야 한다. 다섯째, 정규화는 이상현상을 방지하는 기본 장치이며, 반정규화는 예외적으로 성능이나 조회 특성을 고려해 신중히 적용해야 한다.

라. 무결성과 성능을 고려한 모델링

실무 모델링에서는 무결성 확보와 성능 확보를 함께 고려해야 한다. 지나치게 정규화된 모델은 무결성에는 유리하지만 조인이 과도하게 많아져 조회 성능이 저하될 수 있고, 지나치게 반정규화된 모델은 조회는 편하지만 중복과 정합성 문제가 커질 수 있다. 따라서 데이터모델링은 “정확한 구조”와 “실용적인 운영” 사이의 균형을 맞추는 활동이라고 볼 수 있다. 예를 들어 대량 조회가 빈번한 이력 데이터는 논리적으로는 정규화하되, 물리적으로는 인덱스, 파티션, 집계 테이블, 반정규화 뷰 등을 통해 성능을 보완하는 접근이 실무적이다.

마. 데이터모델링 검증 관점

모델 검증은 단순 오탈자 확인이 아니라 업무 적합성, 표준 준수성, 무결성 보장, 확장성, 성능 영향, 데이터 활용 가능성까지 포함해야 한다. 엔터티 누락 여부, 식별자 안정성, 관계 적정성, 코드 엔터티의 과도한 세분화, 이력관리 설계 타당성, 참조무결성 적용 가능성, 물리 구현 난이도 등을 종합 검토해야 한다. 또한 보고서, 인터페이스, 배치, 분석요건, AI 학습 데이터 활용성을 고려한 검토가 병행되면 모델의 장기 활용 가치가 높아진다.

데이터모델링은 업무 분석에서 시작하여 엔터티·속성·식별자·관계 정의, 정규화, 논리·물리모델 정교화, 구현 및 검증으로 이어진다.
실무 답안에서는 개념·논리·물리모델의 차이, 무결성과 성능의 균형, 모델 검증 관점을 함께 제시해야 깊이 있는 설명이 된다.

Ⅳ.실무적용 및 사례

가. 실무 적용 사례

적용 분야모델링 내용주요 효과
ERP/업무시스템조직, 인사, 구매, 재고, 회계, 생산 정보를 통합 구조로 설계한다.부서 간 데이터 일관성 확보와 통합 업무 처리 가능
금융 시스템고객, 계좌, 거래, 상품, 한도, 보안 로그 등의 데이터 구조를 정교하게 설계한다.정합성 강화, 규제 대응, 감사 추적 용이
유통/커머스상품, 고객, 주문, 결제, 배송, 리뷰, 프로모션 관계를 모델링한다.주문 흐름 관리와 분석 기반 마케팅 효율 향상
제조설비, 공정, 품목, BOM, 작업지시, 검사 결과, 불량 이력 구조를 설계한다.공정 추적성과 품질분석 기반 확보
데이터 웨어하우스사실(Fact)과 차원(Dimension) 구조로 분석 지향 모델을 설계한다.주제별 분석성과 조회 효율 향상
AI/분석 서비스학습 데이터셋 구성에 필요한 기준정보, 라벨 정보, 이력 데이터 구조를 설계한다.고품질 학습데이터 확보와 재현성 향상

나. 실무 모델링 체크포인트

  • 업무 용어가 표준화되어 있는가: 동일 개념을 다른 이름으로 부르는 경우 통합 모델이 흔들린다.
  • 엔터티 정의가 명확한가: 코드, 상태, 거래, 기준정보, 이력정보의 성격이 혼재되지 않아야 한다.
  • 식별자가 안정적인가: 의미가 자주 바뀌는 값을 주식별자로 쓰면 장기 운영에서 문제가 발생한다.
  • 관계가 업무 규칙을 정확히 반영하는가: 실제로는 필수 관계인데 선택 관계로 설계되는 오류가 많다.
  • 정규화 수준이 적정한가: 중복 제거와 성능 요구를 함께 고려해야 한다.
  • 이력관리 기준이 명확한가: 상태변경 이력, 계약변경 이력, 조직이력 등 시계열 관리 정책을 설계해야 한다.
  • 물리모델에서 성능을 고려했는가: 인덱스, 파티션, 용량 증가, 배치 처리, 조회 패턴을 반영해야 한다.
  • 데이터 활용 관점을 고려했는가: 운영뿐 아니라 분석, 통계, AI, 인터페이스 확장성까지 검토해야 한다.

다. 주요 문제점과 대응 방안

문제점발생 원인대응 방안
중복 데이터 발생엔터티 통합·분리 기준이 불명확하고 정규화가 부족함정규화 재검토와 기준정보 통합 설계를 수행한다.
참조관계 오류관계차수와 선택성이 업무 규칙과 맞지 않음현업 인터뷰와 규칙 검증을 통해 관계를 재정의한다.
식별자 불안정변경 가능한 업무값을 PK로 사용대체식별자와 내부 식별자를 구분하여 설계한다.
모델의 과도한 복잡성모든 예외를 모델에 과도하게 반영핵심 규칙 중심으로 단순화하고 예외는 별도 처리 정책을 둔다.
성능 저하조회 패턴과 물리 구현을 고려하지 않은 논리 중심 설계인덱스, 분할, 반정규화, 집계 구조를 물리단계에서 보완한다.
표준 미준수명명규칙과 도메인 정의가 제각각임데이터 표준과 리뷰 절차를 제도화한다.
이력관리 누락현재값만 설계하고 변경 이력 구조를 고려하지 않음유효시작일/종료일, 버전관리, 로그 구조를 별도 설계한다.

라. 실무 운영 포인트

실무에서는 데이터모델링을 개발 초기 문서 작업으로만 보지 말고, 요구사항 관리와 변경관리의 기준 문서로 운영해야 한다. 프로젝트 중간에 화면과 기능이 바뀌더라도 모델이 기준 역할을 해야 하며, 인터페이스 설계와 배치 설계, 보고서 설계도 모델에 근거해 조정되어야 한다. 또한 구축 후 운영 단계에서도 신규 업무 도입, 속성 추가, 코드 체계 변경, 이력관리 보완 시 데이터모델을 지속적으로 유지·관리해야 한다. 데이터 거버넌스와 연계하여 표준 용어와 메타데이터, 데이터 사전 관리 체계를 함께 운영하면 모델의 활용성과 생명주기가 길어진다.

실무 데이터모델링은 ERP, 금융, 제조, 유통, DWH, AI 데이터셋 설계 등 거의 모든 정보시스템 구축의 기반 역할을 한다.
성공적인 모델링을 위해서는 엔터티·식별자·관계·정규화·이력관리·성능·표준화를 균형 있게 검토하고 운영 단계까지 모델을 지속 관리해야 한다.

Ⅴ.비교분석 및 발전전망

가. 개념모델·논리모델·물리모델 비교

구분개념 데이터모델논리 데이터모델물리 데이터모델
목적업무 범위와 핵심 정보 대상 합의정확하고 일관된 정보 구조 정의DBMS 구현과 성능 확보
주요 표현엔터티, 주요 관계속성, 식별자, 상세 관계, 정규화테이블, 컬럼, PK/FK, 인덱스, 파티션
추상화 수준높음중간낮음
주 사용자현업, 분석가분석가, 개발자DBA, 개발자, 운영자
변경 영향업무 범위와 정의에 영향프로그램 구조와 데이터 품질에 영향성능과 운영 안정성에 영향

나. 정규화와 반정규화 비교

구분정규화반정규화
목적중복 제거와 이상현상 방지조회 성능 향상과 사용 편의 확보
장점무결성 높고 데이터 변경이 안정적조인 감소, 조회 속도 개선 가능
단점조인 증가로 성능 저하 가능중복 증가와 정합성 관리 부담 발생
적용 시점논리모델 설계의 기본 원칙물리 설계에서 예외적으로 적용
판단 기준업무 무결성과 성능 요구를 함께 고려하여 균형 있게 결정해야 한다.

다. 운영계 모델과 분석계 모델 비교

구분운영계 모델(OLTP)분석계 모델(OLAP/DW)
목적실시간 입력·수정·삭제와 거래 처리주제별 조회, 분석, 집계, 의사결정 지원
구조정규화 중심차원모델, 스타 스키마, 스노우플레이크 구조 활용
관심 포인트무결성, 트랜잭션, 동시성조회 성능, 이해 용이성, 이력 분석
예시주문 처리, 계좌 이체, 출고 등록매출 분석, 고객 세분화, KPI 리포팅

라. 최신 확장 관점

최근 데이터모델링은 전통적인 관계형 데이터베이스 설계 범위를 넘어 클라우드, 빅데이터, NoSQL, 데이터 레이크하우스, AI 데이터셋 관리로 확장되고 있다. 관계형 모델링은 여전히 핵심이지만, 문서형·키값형·그래프형 저장구조를 함께 고려해야 하는 상황이 늘어나고 있다. 또한 데이터 카탈로그, 메타데이터 관리, 데이터 라인리지, 데이터 거버넌스와 결합하여 모델의 정의·변경 이력·활용 범위를 관리하는 흐름이 강화되고 있다. 즉 현대의 데이터모델링은 테이블 설계에 머무르지 않고, 데이터 아키텍처와 데이터 자산 관리의 중심으로 진화하고 있다.

마. 발전전망

  • 메타데이터 연계 강화: 데이터모델과 데이터 사전, 카탈로그, 라인리지가 통합 관리되는 방향으로 발전할 것이다.
  • 자동화 도구 확대: 모델 생성, 표준 점검, 영향도 분석, DDL 생성이 자동화되어 생산성이 향상될 것이다.
  • 데이터 거버넌스 통합: 모델링은 데이터 표준, 품질, MDM, 보안, AI 데이터 관리와 더욱 긴밀히 연결될 것이다.
  • 분산 데이터 구조 대응: 관계형뿐 아니라 NoSQL, 그래프DB, 클라우드 분산 스토리지에 맞는 모델링 방법론이 중요해질 것이다.
  • 분석·AI 친화 설계 확대: 운영계 모델과 분석계 모델을 연계해 데이터 활용성을 높이는 방향이 강화될 것이다.
  • 지속적 모델 유지관리: 초기 구축 중심이 아니라 변경관리와 영향분석을 포함하는 살아있는 모델 운영이 중요해질 것이다.

바. 기술사 답안 정리

데이터모델링 답안은 “정의 → 등장배경 → 설계 캔버스형 구성도 → 구성요소 → 수행 절차 → 3단계 모델 설명 → 실무 적용 → 비교분석 → 발전전망” 순서로 작성하면 안정적이다. 필수 키워드는 엔터티, 속성, 관계, 식별자, 제약조건, 개념모델, 논리모델, 물리모델, 정규화, 무결성, 반정규화, ERD이다. 답안을 고득점형으로 만들기 위해서는 단순 도형 설명이 아니라 업무 규칙 반영, 식별자 안정성, 무결성과 성능 균형, 운영계/분석계 차이, 거버넌스 연계까지 서술하는 것이 바람직하다.

답안 암기 포인트: “데이터모델링 = 업무 규칙을 정보 구조로 번역하는 활동, 개념→논리→물리 단계로 구체화, 정규화와 무결성으로 품질 확보”로 정리하면 된다.

데이터모델링은 정보시스템의 업무 구조를 안정적 데이터 구조로 설계하는 핵심 활동이며, 데이터베이스 품질과 시스템 유지보수성을 좌우한다.
향후에는 메타데이터, 거버넌스, 자동화, 분석·AI 활용까지 연계된 데이터 아키텍처 중심 활동으로 그 중요성이 더욱 커질 것이다.

블로그: 기술사 학습노트 · imt-log.tistory.com