메뉴 건너뛰기

(*.155.195.240) 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

가 크게 작게 위로 아래로 댓글로 가기 첨부
Extra Form
출처 https://blog.naver.com/windi97/220852655040

ERD(Entity Relationship Diagram)

개체 또는 데이터 간의 관계를 표현한 도식화된 그림을 말합니다.

글로 표현되어 있는 관계를 그림으로 나타낸 것입니다.


Entity

데이터의 집합을 의미하는 추상적인 의미를 뜻합니다. 

Entity는 여러 속성(Attribute)를 가집니다. 예를 들어 사람, 자동차 등등


Attribute

구체적인 데이터를 말합니다. 

예를 들어 사람의 Entity일경우 팔, 다리, 머리 등이 데이터가 될 수 있을 것 입니다.


Relationship

관계를 의미합니다. 

관계는 Mandatory(무조건) 또는 Optional(있을수도 있고 없을수도 있음)이 있습니다.

 

ERD 표기 방법

1.png


관계(Relationship)

1. 관계의 정의

- 관계란, 두 엔티티 사이의 논리적인 관계, 쉽게 표현해서 두 엔티티 간의 업무적인 연관성

1) 관계의 명명

- 이러한 관계를 정의할 때는 애매한 동사는 피하고 현재형으로 표현한다.

2.jpg

2) 관계차수(Cardinality)

- 두 개의 엔티티간 관계에서 참여자의 수를 표현하는 것.

- 1:1, 1:M, N:M 이 있다. 

■ 1:1 관계

3.jpg

- 한 개의 구매신청서에 대해 한 개의 구매주문을 신청한다.

- 한 개의 구매주문에 대해 한 개의 구매신청서 내용을 작성한다. 

■ 1:M 관계

4.jpg

- 한 부서에는 여러 사원을 포함한다.

- 한 명의 사원은 한 부서에 소속된다. 

■ N:M 관계

5.jpg

- 하나의 주문에는 여러 개의 제품을 포함한다.

- 한 제품은 여러 개의 주문을 통해 주문된다.

3) 선택성

6.jpg

- 두 엔티티 간에 관계가 설정되었을 때, 항상 두 엔티티의 모든 인스턴스간에 관계가 존재해야 하는지(Mandatory) 아니면 모든 인스턴스에 대하여 존재할 필요가 없는지(Optional)를 나타낸다.

- 일반적이고 상식적인 선에서 먼저 판단한다.

- 각 부서에는 여러 사원을 포함할 지도 모른다. (Optional)

- 각 사원은 단 하나의 부서에 소속된다. (Mandatory)


2. 관계의 종류

1) 정상 관계

- 엔티티와 엔티티가 독립적으로 분리되어 있으면서, 상호간에 한 가지 관계만 존재하는 형태

6.jpg

2) 재귀적 관계

- 하나의 엔티티 내에서 엔티티와 엔티티가 관계를 맺고 있는 형태.

- 부서, 부품, 메뉴 등과 같이 계층 구조 형태를 표현할 때 유용하다.

- 부품은 다른 부품으로 조립된다. 

7.jpg

3) 병렬 관계

- 엔티티와 엔티티가 독립적으로 분리되어 있으면서 두 개 이상의 관계가 상호간에 존재하는 형태

- 주문을 신청한 주문자로써의 관계와 주문한 물건을 받는 수신자로써의 관계 

9.jpg

4) 슈퍼타입 서브타입 관계

- 공통 속성을 가지는 슈퍼타입과, 공통 부분을 제외하고 두 개 이상의 엔티티간의 속성에 차이가 있을 때 별도의 서브타입으로 존재할 수 있다.

- 배타적 관계 : 슈퍼타입의 엔티티가 반드시 하나의 서브타입에는 속하는 관계

- 포함 관계 : 슈타타입의 엔티티가 두 개 이상의 서브타입에 포함될 수 있는 관계

- 직원은 반드시 일반직원이나 촉탁직원 중 하나에만 속할 수 있다.

- 인터넷 접수를 한 사람이 다시 방문 접수할 수 있다. 

- 슈퍼타입 서브타입 모델에서는 자료 원천 구분 표시(직원구분코드, 접수구분코드)가 반드시 있어야 한다.  

- 직원은 반드시 일반직원이나 촉탁직원 중 하나에만 속할 수 있다.

- 인터넷 접수를 한 사람이 다시 방문 접수할 수 있다. 

- 슈퍼타입 서브타입 모델에서는 자료 원천 구분 표시(직원구분코드, 접수구분코드)가 반드시 있어야 한다. 

10.jpg

5) 식별/비식별 관계

- 식별 관계 : 부모 엔티티의 주식별자가 자식 엔티티의 주식별자로 상속

- 비식별 관계 : 부모 엔티티의 주식별자가 자식 엔티티의 일반속성으로 상속

11.jpg


3. 관계정의서 작성

- 관계에서 중요한 세 가지는 방향, 관계차수( 1:1, 1:N, N:M), 선택성(옵션, 필수) 이다. 

1) 다음과 같이 질문하는 것은 관계를 도출하는데 유용할 수 있다.

- 각각의 사원은 한 부서에만 속할 수 있습니까?

- 각 부서에는 여러명의 사원이 항상 소속되어 있습니까? 

2) 관계 정의서 작성

기준 엔티티

관계형태(방향, 관계차수, 선택성)

선택성

관련 엔티티

회원 

 - 각각의 회원은 여러 번의 주문을 할 수 있다. 

 - 각 주문은 한 회원에 의해 주문될 수 있다.

선택

필수

주문

주문

 - 각각의 주문에는 여러 개의 주문목록을 포함한다. 

 - 각각의 주문목록은 하나의 주문내용에 포함된다.

필수

필수

주문목록

주문목록

 - 각각의 주문목록은 한 개의 도서와 연결된다. 

 - 각각의 도서는 여러 주문목록에 주문될 수 있다.

필수

선택

도서


3) 관계정의서를 이용하여 ERD를 그린다.

12.jpg


List of Articles
번호 제목 날짜 조회 수
131 데이터 모델링 개념 & ERD 다이어그램 작성 목차 데이터 모델링 이란? 데이터 모델링 순서 절차 1. 업무 파악 (요구사항 수집 및 분석) 2. 개념적 데이터 모델링 3. 논리적 데이터 모델링 4. 물리적 데이터 ... 2024.12.07 408
130 MariaDB, INFORMATION_SCHEMA INNODB_TRX 테이블 INFORMATION_SCHEMA INNODB_TRX 테이블INNODB_TRX 테이블에 트랜잭션이 잠금을 대기하고 있는지 트랜잭션이 시작되었을 때 트랜잭션이 실행하는 SQL 문 (존재하는... 2024.11.26 503
129 MariaDB 용량조회 mariadb를 운영하다보면 filesystem 경로에 데이터가 족족 쌓이는걸 확인할 수 있다. 오라클과 구조가 달라 테이블스페이스라는 개념이 없기때문이다. postgresql... 2024.11.17 422
128 Entity(엔터티)의 개념 1. Entity 의 개념 Entity : 실체, 객체라는 의미로 실무적으론는 앤터티라고 부른다. 즉 업무에 필요하고 유용한 정보를 저장하고 관리하기 위한 집합적인 것으... 2024.11.07 537
127 NCP - Cloud DB for MySQL MySQL 데이터베이스를 쉽고 간편하게 구축하고 관리Cloud DB for MySQL 상품을 통해 MySQL 데이터베이스를 손쉽게 구축하고 운영할 수 있습니다. Cloud DB는 네이... file 2024.10.19 530
126 NCP - MariaDB Enterprise Server MariaDB Enterprise Server는 엔터프라이즈 신뢰성, 안정성 및 장기적인 지원은 물론, 비즈니스 크리티컬 및 미션 크리티컬 애플리케이션을 위한 대용량 데이터베... file 2024.10.19 589
125 MySQL, MariaDB 차이점 서론데이터베이스에는 RDBMS와 NoSQL이 있다. RDBMS의 대표적인 예로는 MySQL이 있고, NoSQL의 대표적인 예로는 MongoDB가 있다. 그런데 나는 처음 데이터베이스... file 2024.10.19 569
» DB 모델링 - ERD(Entity Relationship Diagram) ERD(Entity Relationship Diagram) 개체 또는 데이터 간의 관계를 표현한 도식화된 그림을 말합니다. 글로 표현되어 있는 관계를 그림으로 나타낸 것입니다. Enti... file 2024.09.24 556
123 MongoDB의 특징과 이점 MongoDB란? MongoDB(IBM 외부 링크)는 오픈소스 비관계형 데이터베이스 관리 시스템(DMBS)으로, 테이블과 행 대신 유연한 문서를 활용해 다양한 데이터 형식을 처... 2024.09.15 492
122 CUBRID, 국내 유일의 오픈소스 DBMS CUBRID, 국내 유일의 오픈소스 DBMS다. 다양하게 쓰인다.겁나 잘나간다 와! 이 모든 기능이 무료! 엔진의 소스 코드가 수정되면 소스를 까야하지만, 큐브리드 DBM... file 2024.09.15 547
121 2023년 데이터베이스 관리 시스템(DBMS) 순위 2023년 데이터베이스 관리 시스템(DBMS) 순위 Database/INFO / aruru / 2023. 3. 17. 19:52 DB-Engines 에서는 자체 산정 기준에 따라 매월 DBMS 순위를 산정합니... file 2024.09.15 812
120 MySQL 메이저 버전 업그레이드(MySQL 5 → MySQL 8) — 네이버 클... 네이버클라우드에서 주요 고객 기술 지원을 담당하는 TAM (Technical Account Manager) 강철곤입니다. 업무 특성상 다양한 고객・파트너와 소통하며 업무를 진행... file 2024.09.15 525
119 MySQL, EOS 및 EOL MySQL, EOS 및 EOL file 2024.09.15 599
118 MariaDB, LTS 및 EOS development and production https://mariadb.com/downloads/connectors/ MariaDB Community Version은 Free이며 해당 제품을 기반으로 작성하였습니다. Stable D... 2024.09.09 681
117 PostgreSQL 설치 및 세팅 & pgAdmin 사용법 - Windows PostgreSQL 설치 및 세팅 & pgAdmin 사용법 - Windows 이번 글에서는 PostgreSQL 설치 방법과 초기 세팅, pgAdmin을 사용해 Database 생성 및 User 생성에 대... 2024.02.19 708
116 [PostgresSQL 이야기 1화] PostgresSQL 특징 및 장단점 소개 오픈소스 DB 전성시대, 기업들이 PostgreSQL을 선택하는 이유“클라우드 전환에서의 오픈소스 DB, 선택 아닌 필수” 클라우드 도입 확대로 다가온 오픈소스 DBMS 전... file 2024.02.19 593
115 PostgreSQL / 오픈소스 vs 상용, 벌어지는 인기 트렌드 격차 PostgreSQL / 오픈소스 vs 상용, 벌어지는 인기 트렌드 격차 지난 해부터 소프트웨어 업계에서는 오픈소스 생태계가 대세가 되면서 상용 DBMS 사용 입지가 줄어들... file 2024.02.19 508
114 데이터 통합 도구 BTL Data Integrator(BTL DI) 소개 https://www.youtube.com/watch?v=wT6ng96G6XU 데이터 통합 도구 BTL Data Integrator(BTL DI) 소개 BTL Data Integrator(BTL DI) 는 데이터 통합 및 마이그레이... 2023.06.22 740
113 [proc,ec,esql] 가장 기본적인 ec, 프로씨(proc) insert 프로그램 [proc,ec,esql] 가장 기본적인 ec, 프로씨(proc) insert 프로그램 프로씨(proc) 강좌나 한국어 자료가 검색해보면 없다. 그래서 프로씨에 관해 궁금한 사람들을 ... 2023.06.16 564
112 DB 암호화 - Echelon V2.5 DB 암호화 - Echelon V2.5 - 데이터보안소프트(DataBoanSoft Inc.) Echelon V2.5는 국내 1300여개 고객사에서 검증된 컬럼단위 DB암호화 솔루션으로 국내최초 CC... 2023.03.06 552
목록
Board Pagination Prev 1 2 3 4 5 6 7 Next
/ 7