데이터 모델링의 목적과 세 가지 특징
데이터 모델링은 업무에서 관리할 데이터와 규칙을 찾아 데이터베이스 구조로 표현하는 과정입니다.
현업과 모델러는 요구사항을 함께 확인하고, 엔터티·속성·관계를 이용해 같은 업무를 같은 의미로 이해할 수 있는 모델을 만듭니다.
간단한 예시 · 카페 주문 관리
카페 사장님이 “주문마다 어떤 메뉴가 몇 개 팔렸는지 보고 싶어요”라고 요청했습니다.
- 주문번호
- #101
- 주문일시
- 10:32
메뉴와 수량을 한 줄씩 기록
- M01
- 아메리카노
- M02
- 라테
먼저 업무를 질문합니다
한 주문에 여러 메뉴를 담을 수 있나요? 같은 메뉴를 두 잔 주문할 수도 있나요? → 둘 다 가능합니다.
필요한 데이터와 관계를 정합니다
주문, 메뉴, 주문상세를 관리합니다. 주문상세는 주문과 메뉴를 연결하고 수량을 기록합니다. 한 주문에는 여러 주문상세가 연결됩니다.
실제 주문을 넣어 확인합니다
주문 101번에 ‘아메리카노 2잔’과 ‘라테 1잔’이 담겼다면, 주문상세는 메뉴별로 2건이며 수량은 각각 2와 1입니다.
‘한 주문에 여러 메뉴와 수량을 기록한다’는 업무 규칙을 이해한 뒤, 이를 담을 데이터 구조를 설계합니다.
- 추상화필요한 핵심만 골라 표현
현실의 많은 정보 중 업무에 필요한 것만 골라 일정한 형식으로 나타냅니다.
- 단순화누구나 이해하기 쉽게
약속된 표기법으로 복잡한 업무를 간결하게 정리합니다.
- 명확화한 가지 뜻으로
애매함을 없애 누가 읽어도 같은 뜻으로 해석되게 합니다.
시험에서는 추상화·단순화·명확화 세 가지를 묻습니다. 최적화는 성능을 높이는 튜닝 개념이라 모델링의 특징에 들어가지 않습니다.
데이터 모델(Data Model)은 업무에서 관리할 대상과 관계를 데이터베이스 구조로 표현한 설계도입니다. 표의 모양만 그리는 작업이 아니라 업무 규칙을 함께 적어 두어, 데이터를 입력·수정·조회할 때 같은 의미를 유지하도록 돕습니다. 그래서 데이터 모델은 개발자와 업무 담당자가 데이터 구조를 놓고 의사소통하는 기준이 됩니다.
이 단원의 뒤쪽 예시는 도서관을 사용합니다. 도서관은 이용자, 도서, 대출 기록을 관리합니다. 이용자의 이름과 연락처는 이용자 정보에, 책 제목은 도서 정보에, 누가 어떤 책을 언제 빌렸는가는 대출 기록에 둡니다. 서로 다른 사실을 알맞은 곳에 보관하고 키로 연결하면 데이터가 늘어나도 관리하기 쉽습니다.