[SQLD] 데이터 모델링의 이해(1)

맑은 눈의 코드 👀·2023년 10월 26일
0

데이터 모델링의 특징

추상화 : 현실세계를 간략하게 표현해야한다.
단순화 : 누구나 쉽게 이해할 수있도록 표현해야한다.
명확성 : 명확하게 의미가 해석되어야 하고 한가지 의미를 가져야한다.

데이터 모델링의 3단계 (개->논->물)

📍데이터 모델링 3단계
개념적 모델링 , 논리적 모델링, 물리적 모델링
📍데이터 모델링 관점
데이터, 프로세스, 데이터와 프로세스

개념적 모델링

  • 전사적 관점에서 기업의 데이터를 모델링한다.
  • 추상화 수준이 가장 높은 모델링이다.

논리적 모델링

  • 정규화를 통해서 재사용을 높인다.

물리적 모델링

  • 성능, 보완, 가용성 등을 고려하여 데이터 베이스를 구축한다.



ERD작성 절차

1) 엔터티를 도출하고 그린다.
2) 엔터티를 배치한다.
3) 엔터티 간의 관계를 설정한다.
4) 관계를 서술한다.
5) 관계 참여도를 표현한다.
6) 관계의 필수 여부를 표현한다.

3층 스키마

사용자, 설계자, 개발자가 데이터 베이스를 보는 관점에 까라 데이터 베이스를 기술하고 이들 간의 관계를 정의한 것
데이터베이스의 독립성을 확보하기 위한 방법이다

3층 스키마의 구조 (데이더의 독립성 요소)

1) 외부스키마 (외부화면, 사용자, 인터페이스)

  • 개개 사용자가 보는 개인적 DB 스키마
  • 응용 프로그램이 접근하는 데이터베이스를 정의

2) 개념 스키마 (전체가 통합된 스키마)

  • 모든 사용자 관점을 통합한 전체 DB
  • 통합 데이터 베이스의 구조

3) 내부 스키마 (실제 저장된 DB)

  • 물리적 장치(물리적 저장 구조)에서 데이터가 실제적 저장된 형식

데이터의 독립성

논리적 복립성 : 개념스키마가 변경 되더라도 외부 스키마가 영향을 받지 않는 것이다.
물리적 독립성 : 내부 스키마가 변경되더라도 개념 스키마가 영향을 받지 않는 것이다.

엔터티 (Entity)

업무에서 관리해애하는 데이터의 집합을 의미하며, 저장되고 관리되어야 하는 데이타이다. 객체?와 같은 의미인듯

특징

  • 유일한 식별자가 있어야 한다.
  • 2개 이상의 인스턴스가 있어야 한다.
  • 반드시 속성을 가지고 있다.
  • 다른 엔터티와 최소한 한개 이상의 관계가 있어야 한다.
  • 업무에서 관리 되어야 하는 집합이다.

종류

유형과 무형에 따른 엔터티의 종류로는
유형엔터티, 개념엔터티, 사건엔터티
발생 시점에 따른 엔터티의 종류
기본엔터티, 중심엔터티, 행위엔터티


속성(Attribute)

업무에소 필요한 정보인 엔터가 가지는 항목
속성은 더 이상 분류되지 않은 단위로, 업무에 필요한 데이터를 저장할 수 있다.

속성의 종류

단일 속성 : 하나의 의미로 구성된 것
복합 속성 : 여러 개의 의미가 있는 것
다중값 속성 : 여러개의 값을 가질 수 있는 것으로 (엔터티로 구분O)

관계 (Relationship)

엔터티 간의 관계성을 의미하며 존재관계와 행위 관계로 구분

관계의 종류

존재관계 : 엔터티 간의 상태를 의미 (화사 - 사원)
행위 관계 : 엔터티 간의 어떤 행위가 있는 것 (회사 - 주문내역)

관계차수

| 는 필수적 관계
O 선택적 관계

엔터티 식별자

주식별자 (기본키, primary key)

최소성,대표성, 유일성,불변성

식별자의 종류

대표성 여부에 따른 식별자의 종류

  • 주식별자
  • - 유일성과 최소성을 만족하면서 엔터티를 대표하는 식별자이다
    - 다른 엔터티와 참조 관계를 연결될 수 있다. 보조
  • 보조식별자
  • - 유일성과 최소성은 만족하지만 대표성은 만족하지 못하는 식별자
profile
나를 죽이지 못하는 오류는 내 코드를 더 강하게 만들지ㅋ

0개의 댓글