[SQL, SQLD] 노랑이 책 정리 - I. 데이터 모델링의 이해

이수빈·2023년 6월 9일
0

SQL

목록 보기
2/3

I-1. 데이터 모델링의 이해

[1-5] 데이터 모델의 이해

[1] 데이터모델링 특징: 추상화 (형식에 맞추어 표현), 단순화, 정확화
[3 4] 모델링 유의점(3) : 중복, 비유연성, 비일관성
[5] 모델링 진행 : 개념적 → 논리적 → 물리적

[9-13] 엔터티

발생 시점에 따른 분류: Key entity, Main Entity, Active Entity

[10] 엔터티 특징

  • 업무
    • 반드시 필요하고 관리하고자 하여야
    • 사용되어야
  • SQL
    • 반드시 속성 有
    • 반드시 다른 엔터티와 관계 有 (통계성, 코드성 엔터티는 제외)
    • 유일한 식별자에 의해 식별 可
    • ≥2 인스턴스 有

[13] 명명: 약어 X, 현업 용어, 유일한 이름, 생성의미대로, 단수명사
ERD(Entity Relationship Diagram) 작성 절차
가) 엔터티를 그린다.
나) 엔터티를 적절하게 배치한다.
다) 엔터티 간에 관계를 설정한다.
라) 관계명을 기술한다.
마) 관계의 참여도를 기술한다.
바) 관계의 필수 여부를 기술한다.

[14-19] 속성 (\in 엔터티)

[15] 속성: 엔터티에 대한 자세하고 구체적인 정보
[16 17]

  • 속성의 특성에 따른 분류(3): 기본속성(Basic; 원래 가짐), 설계속성(Designed, 설계과정에서 생성), 파생속성(Derived)
  • 엔티티를 구성하는 방식에 따른 분류(3): PK, FK, 일반

[18] 도메인: 속성의 범위 ex) CHAR(8), NUMBER(10)
[19] 명명: 약어 X, 서술식 X, 유일성, 업무 용어

[20-24] 관계

☑️ what) 엔터티(들) 간의 관련성을 나타내는 연결 (공유 속성이 있다는 의미)

[20, 22] 관계에 대한 설명

  • 존재적 관계(연관관계), 행위적 관계(의존관계)

  • ERD 구분 X, 클래스다이어그램 구분 O

  • 관계의 표기법(3)

    • 관계명 : 현재형 동사
    • 관계차수(Cardinality) \ni 1:1, 1:M, M:N
      • 단일: |
      • 다중: <
    • 관계선택사양 \ni 필수관계, 선택관계

[23 24] 관계 도출 사항(4)

  • 연관 규칙 존재?
  • 정보 조합 발생?
  • 업무기술서, 장표에 관계연결에 대한 규칙이 서술되어 있는가?
  • 관게연결 가능하게 하는 동사(Verb)가 있는가?

[25-30] 식별자

[26] 식별자 종류(4)

여부
대표성주식별자보조식별자
스스로 생성내부식별자외부식별자 (타 엔터티에서 받음)
속성의 수대체성단일식별자복합식별자
대체성인조식별자본질식별자 (대체 불가능)

[25 27 28] 식별자 특징(4) : 유일성, 최소성, 불변성, 존재성

[29 30] 식별자, 비식별자 관계

식별자 관계비식별자 관계
목적 (표기)강한 연결관계 (실선)약한 연결관계 (점선)
자식 주식별자 영향자식 주식별자 구성에 포함됨자식 일반 속성에
고려사항부모엔터티 종속,
타 엔터티에 이전독립적 자식 주식별자 구성,
타 엔터티에 차단
▶️ use부모 소멸 시 자식도 소멸부모가 자식만 남기고 소멸

I-2. 데이터 모델과 성능

성능 데이터 모델링

정규화, 반정규화와 성능

정규화 데이터베이스(Normalized Database)는 중복을 최소화하도록 설계된 데이터베이스를 말한다.

비정규화 데이터베이스(Denormalized Database)는 읽는 시간을 최적화하도록 중복이 허용된 데이터베이스를 말한다.

☑️ what)▶️ when)
제 1정규화 (1NF, 1 Normal From)각 속성이 원자성을 만족하도록 정규화1개의 속성에서 여러 값을 가지는 경우
제 2정규화 (2NF)PK 에서 부분 함수 종속성 제거- 기본키가 여러 개인 경우
제 3정규화 (3NF)일반 속성에서 이행 함수 종속성 제거의존성이 있는 열들에 대하여 수행
제 4정규화 (4NF)PK 에서 다치 종속성 제거PK에서 다치 종속이 있는 경우

반정규화
☑️ what) 정규화와 반대되는 개념

대량 데이터에 따른 성능

DB 구조와 성능

분산 DB와 성능

0개의 댓글