엔터티(Entity) 완벽 정리
엔터티 정의·6가지 특징·분류·명명규칙·인스턴스 개념까지 한눈에 정리
1. 엔터티의 정의
엔터티란?
업무에서 관리해야 하는 데이터의 집합으로, 사람·장소·사건·개념 등 업무상 관리가 필요한 관심사를 의미한다. 데이터베이스에서는 테이블(Table)로 구현된다.
학자별 엔터티 정의
- • Peter Chen — "변별할 수 있는 사물" (Distinguishable thing)
- • C.J. Date — "데이터베이스 내부에서 변별 가능한 객체"
- • Thomas Bruce — "업무에 필요하고 유용한 정보를 저장하고 관리하기 위한 집합적인 것"
엔터티 vs 인스턴스 vs 속성
| 개념 | 설명 | 예시 |
|---|---|---|
| 엔터티 | 데이터의 집합 (틀) | 사원 |
| 인스턴스 | 엔터티의 개별 값 (행) | 홍길동, 김철수 |
| 속성 | 엔터티의 특성 (열) | 사원번호, 이름 |
2. 엔터티의 6가지 특징
① 업무에서 필요로 하는 정보
엔터티는 업무에서 실제로 쓰이는 정보여야 한다. 업무와 무관한 데이터는 엔터티가 될 수 없다.
② 유일한 식별자에 의해 식별 가능
각 인스턴스를 고유하게 구분할 수 있는 식별자가 존재해야 한다. 예: 사원번호, 주문번호 등.
③ 두 개 이상의 인스턴스 집합
엔터티는 2개 이상의 인스턴스를 가져야 한다. 인스턴스가 하나뿐이라면 엔터티로 보기 어렵다.
④ 반드시 속성을 가짐
엔터티는 반드시 2개 이상의 속성을 가져야 한다. 속성이 없는 엔터티는 존재할 수 없다.
⑤ 다른 엔터티와 최소 1개 이상의 관계
엔터티는 다른 엔터티와 관계를 가져야 한다. 고립된 엔터티(Island Entity)는 데이터 모델에서 부적절하다. 단, 통계성 엔터티나 코드성 엔터티는 예외일 수 있다.
⑥ 업무 프로세스에 의해 이용
엔터티는 업무 프로세스에서 생성·조회·수정·삭제되어야 한다. 어떤 프로세스에서도 사용되지 않는다면 불필요한 엔터티이다.
6가지 특징 요약
"업유인속관프" — 업무 필요, 유일 식별자, 인스턴스 2개+, 속성 2개+, 관계 1개+, 프로세스 이용
3. 유무형에 따른 분류
유형·개념·사건 엔터티
| 분류 | 설명 | 예시 |
|---|---|---|
| 유형 엔터티 | 물리적 형태가 있는 실체 | 사원, 물품, 강사 |
| 개념 엔터티 | 물리적 형태 없이 개념적으로 존재 | 보험상품, 부서, 조직 |
| 사건 엔터티 | 업무 수행 시 발생하는 사건 | 주문, 청구, 미납 |
유무형 분류 시험 포인트
시험에서는 사건 엔터티가 가장 많이 출제된다. 특히 "주문"이 유형인지 사건인지 구분하는 문제가 빈출된다. 주문은 업무 수행 시 발생하므로 사건 엔터티이다.
4. 발생시점에 따른 분류
기본·중심·행위 엔터티
| 분류 | 설명 | 특징 | 예시 |
|---|---|---|---|
| 기본 엔터티 | 독립적으로 생성 | 다른 엔터티의 부모 역할, 자신의 고유 식별자 보유 | 사원, 부서, 고객 |
| 중심 엔터티 | 기본 엔터티로부터 발생 | 다른 엔터티와의 관계로 많은 행위 엔터티 생성 | 계좌, 주문, 접수 |
| 행위 엔터티 | 2개 이상 부모로부터 발생 | 데이터가 가장 많이 발생, 상세 이력 관리 | 주문목록, 사원변경이력 |
발생시점 관계 흐름
기본 엔터티 → 중심 엔터티 → 행위 엔터티
(고객) → (주문) → (주문상세)
데이터 양 비교
일반적으로 행위 엔터티 > 중심 엔터티 > 기본 엔터티 순으로 데이터가 많다. 행위 엔터티는 트랜잭션이 발생할 때마다 레코드가 쌓이기 때문이다.
5. 인스턴스(Instance) 개념
인스턴스란?
엔터티에 저장되는 개별 데이터 한 건(행/Row)을 의미한다. "사원" 엔터티에 홍길동, 김철수가 각각 하나의 인스턴스이다.
엔터티·인스턴스·속성·속성값 관계
- • 하나의 엔터티는 두 개 이상의 인스턴스를 포함
- • 하나의 인스턴스는 두 개 이상의 속성을 가짐
- • 하나의 속성은 하나의 속성값을 가짐
인스턴스 예시
| 사원번호 | 이름 | 부서 |
|---|---|---|
| 1001 | 홍길동 | 영업부 |
| 1002 | 김철수 | 개발부 |
↑ 각 행(Row)이 하나의 인스턴스이다
6. 엔터티 명명 규칙
명명 규칙 원칙
- • 현업에서 사용하는 용어를 사용한다
- • 가능하면 약어를 사용하지 않는다
- • 단수 명사를 사용한다 (사원들 X → 사원 O)
- • 고유한 이름을 부여한다 (동일 모델 내 중복 불가)
- • 생성 의미대로 이름을 부여한다 (엔터티의 역할을 명확히 반영)
명명 예시: 좋은 이름 vs 나쁜 이름
| 나쁜 이름 | 좋은 이름 | 이유 |
|---|---|---|
| EMP_TBL | 사원 | 약어·영문 사용 지양 |
| 고객들 | 고객 | 단수 명사 사용 |
| 데이터1 | 주문이력 | 의미 있는 이름 부여 |
7. 엔터티 도출 절차
엔터티 도출 5단계
- 1단계. 업무에서 관리해야 하는 집합을 도출
- 2단계. 도출된 엔터티가 6가지 특징을 만족하는지 검증
- 3단계. 엔터티에 명명 규칙을 적용하여 이름 부여
- 4단계. 엔터티를 ERD에 배치
- 5단계. 엔터티 간 관계를 설정
8. 엔터티 분류 전체 비교
두 가지 분류 기준 비교
| 분류 기준 | 유형 | 핵심 |
|---|---|---|
| 유무형 | 유형 | 물리적 형태 O |
| 개념 | 물리적 형태 X | |
| 사건 | 업무 수행 시 발생 | |
| 발생시점 | 기본 | 독립적, 부모 역할 |
| 중심 | 기본에서 파생 | |
| 행위 | 2+ 부모에서 발생 |
9. 시험 빈출 포인트
자주 출제되는 유형
- • 엔터티 6가지 특징 — "엔터티의 특징이 아닌 것은?" 유형으로 빈출
- • 인스턴스 2개 이상 — 엔터티는 반드시 두 개 이상의 인스턴스가 존재해야 함
- • 발생시점별 분류 — 기본/중심/행위 엔터티의 예시 구분 문제
- • 엔터티 명명 규칙 — "단수 명사", "현업 용어 사용", "약어 사용 지양"
- • 유무형 분류 혼동 — "주문"은 유형이 아니라 사건, "부서"는 개념 엔터티
- • 속성 2개 이상 — 엔터티는 반드시 속성을 가져야 하며, 최소 2개 이상
함정 선지 주의
- • "엔터티는 반드시 다른 엔터티와 관계를 가져야 한다" — 원칙적으로 맞지만, 통계/코드 엔터티는 예외
- • "엔터티는 업무에서 사용하는 용어를 써야 한다" — 맞는 설명 (명명 규칙)
개념을 확인했다면 문제로 실력을 검증해보세요