2016년 10월 14일 금요일

58day / WEB / ERD (Entity-Relationship Diagram)

https://www.lucidchart.com
  • ERD (Entity-Relationship Diagram)
데이터 모델링 분야에서의 개체-관계 모델이란 구조화된 데이터에 대한 일련의 표현이다.
"구조"화된 데이터를 저장하기 위해 데이터베이스를 쓴다.
이 데이터의 "구조" 및 그에 수반한 제약 조건들은 다양한 기법에 의해 설계될 수 있다.
그 기법 중 하나가 개체-관계 모델링(Entity-Relationship Modelling)이다.

줄여서 ERM이라고 한다. ERM 프로세스의 산출물을 가리켜
개체-관계 다이어그램(Entity-Relationship Diagram)이라 한다. 줄여서 ERD라 일컫는다.
데이터 모델링 과정은 데이터 모델을 그림으로 표현하기 위해 표시법을 필요로 한다.
ERD는 개념적 데이터 모델 혹은 시맨틱 데이터 모델의 한 타입이다.
출처 : 위키피디아

그냥 필자는 한마디로 퉁쳐서 Database(DB)의 관계도로 생각했다.
사실 제대로 파악하는 것이 공부이지만 시작부터 이해도 되지 않는 걸
억지로 붙잡고 있으니 힘들었고 계속 접하면서 이해하고자
이것은 DB의 관계도를 그리는 것이구나 생각하고 학습을 시작하게 되었다.


물리모델은 논리모델이 실제 dbms에 적용시키는 상세화 과정입니다.
즉 논리모델이 물리dbms벤더에 종속되는 최종과정이라고 생각하면 됩니다.
예를 들어 논리모델에서는 decimal(9) 이렇게 설계 된경우,
물리모델에서는 오라클인경우는 number(9)이 되는거고, db2, udb 이면 decimal(9) 이렇게 변형되는거라고 보면 이해가 될겁니다.


  • Logical

논리설계단에서는 엔티티와 엔티티타입, 관계를 정의한다
한글이든 영문이든 중요한 것이 아니며 어떠한 정보를 객체화할 것인가에 대한 정의한다.


  • Physical

물리설계에서는 각 엔티티 관계에 의해서 나올 수 있는 테이블
ex. 다대다관계에서 도출되는 관계 또는 Super - Sub 관계 등
실제로 DB에 생성될 테이블들이 설계가 된다

  • Crow's Foot
엔티티 사이의 관계를 기본적으로 엔티티를 연결하는 선으로 나타낸다.
또한 관계의 카디널리티를 나타내는 기호들을 그 선의 양끝에 표시한다.
위키피디아
  1. "고리"(ring)은 "0"를 나타낸다.
  2. "실선"(dash)은 "1"을 나타낸다.
  3. "까마귀 발"(crow's foot)은 "다수" 혹은 "그 이상"을 나타낸다.

위와 같은 기호들은 서로 조합하여 사용될 수 있다. 다음과 같은 네 가지 조합이 가능하다.
  1. 고리와 실선 → 0 혹은 1
  2. 실선과 실선 → 정확히 1
  3. 고리와 까마귀 발 → 0개 이상
  4. 실선과 까마귀 발 → 1개 이상


  • 식별관계

부모 테이블의 기본키 혹은 복합키가 자식 테이블의 기본키 혹은
복합키의 구성원으로 전이되는 관계


  • 비식별관계

부모 테이블의 기본키 혹은 복합키가 자식 테이블의 일반 속성(Attribute) 그룹의
구성원으로 전이되는 비 식별관계가 있다.


  • 다 대 다 관계

Association Entity
다대다 관계는 논리적 모델에서만 허용되며, 물리적 모델에서는 허용되지 않는다
(되도록이면 사용하지 다대다관계를 형성하지 않는 것이 좋다)

0 개의 댓글:

댓글 쓰기