SQLD 1과목_데이터 모델링

freakyfrog98·2022년 9월 8일
0

SQLD 자격증

목록 보기
1/5
  • 데이터 모델링 특징
    • 추상화 : 현실세계를 간략히 표현
    • 단순화 : 누구나 이해할 수 있게 표현
    • 명확성 : 명확하게 의미 해석
  • 모델링 단계
    • 개념적 모델링
      • 엔티티와 attribute를 도출/ 개념적 ERD 작성
      • 추상화 가장 높음
    • 논리적 모델링
      • 식별자를 도출하고 필요한 모든 릴레이션을 정의
      • 정규화 수행해서 데이터 모델의 독립성을 확보
    • 물리적 모델링
      • 실제 구축
  • ERD
    • 엔티티 도출 및 배치
    • 엔티티간의 관계 설정
    • 관계명 서술
    • 관계의 필수 여부를 표현
  • 3층 스키마
    • 내부스키마
      • 개발자 관점, 데이터베이스의 물리적 저장 구조
    • 개념스키마
      • 통합데이터베이스 구조
      • 설계자 관점, 사용자 전체 집단의 데이터베이스 구조
    • 외부스키마
      • 사용자 관점, 뷰, 응용프로그램이 접근하는 데이터베이스
    • 논리적독립성 : 외부스키마가 변경되어도 개념스키마에 영향 없다
    • 물리적독립성 : 개념스키마가 변경되어도 내부스키마에는 영향 없다.

  • 엔티티의 특징
    • 엔티티는 유일한 식별자가 있어야한다.
    • 인스턴스집합 : 2개 이상의 인스턴스가 있어야한다.
    • 속성 : 애트리뷰트를 가지고있다.
    • 관계 : 다른 엔티티와 최소 한 개 이상의 관계가 있어야한다.
    • 업무 : 엔티티는 업무에서 관리되어야하는 집합이다.
  • 유형 무형에 따른 엔티티 종류
    • 유형 엔티티
      • 업무에서 도출되며 지속적으로 사용되는 엔티티이다.
    • 개념 엔티티
      • 유형 엔티티는 물리적 형태가 있지만, 개념 엔티티는 그렇지 않다.
    • 사건 엔티티
      • 비지니스 프로세스를 하면서 생성되는 엔티티이다.
  • 발생 시점에 따른 엔티티 종류
    • 기본 엔티티
      • 키 엔티티라고도 하며, 다른 엔티티에 영향을 받지 않고 독립적으로 생성되는 엔티티이다.
    • 중심 엔티티
      • 기본 엔티티와 행위 엔티티의 중간에 있고, 기본 엔티티로부터 발생하고 행위 엔티티를 생성한다.
    • 행위 엔티티
      • 2개 이상의 엔티티로부터 발생된다.
  • 속성
    • 속성은 더 이상 분리되지 않는 단위
    • 하나의 값만 가진다. 주 식별자에게 함수적으로 종속된다.
  • 분해 여부에 따른 속성의 종류
    • 단일 속성
      • 하나의 의미로 구성된 것으로 회원id, 이름 등이다.
    • 복합 속성
      • 여러 개의 의미가 있는 것으로 대표적으로 주소가 있다. (시 군 구로 분해 가능)
    • 다중값 속성
      • 속성에 여러 개의 값을 가질 수 있는 것으로 상품 리스트가 있다.
      • 다중값 속성은 엔티티로 분해된다.
  • 특성에 따른 속성의 종류
    • 기본 속성
      • 비지니스 프로세스에서 도출되는 본래의 속성이다.
      • 회원id, 이름, 계좌번호 등
    • 설계 속성
      • 데이터 모델링 과정에서 발생되는 속성이다.
      • 유일한 값을 부여한다.
      • 상품코드, 지점코드 등
    • 파생 속성
      • 다른 속성에 의해서 만들어지는 속성이다.
      • 합계, 평균 등
  • 관계
    • 엔티티 간의 관계를 의미
    • 존재 관계
      • 고객이 회원가입하면 한 관리점에 할당되며 속하게 된다.
    • 행위 관계
      • 고객은 계좌를 개설, 계좌를 사용해서 주문을 발주
  • 관계 차수
    • 선택적1대1관계
      • 고객은 하나의 고객 등급이 부여되며 없을 수도 있다.
    • 완전 1대1관계
      • 반드시 존재
    • 1대N관계
    • M대N관계
      • 카테시안곱발생하므로 이를 1대N,1대1로 해소해야한다.
    • 필수적관계,선택적관계
  • 식별 관계
    • 강한 개체
      • 독립적으로 존재 가능
      • 강한 개체는 다른 엔티티와 관계를 가질 때 다른 엔티티에게 기본키를 공유한다.
    • 기본키를 다른 엔티티의 기본키의 하나로 공유하는것을 식별 관계라 한다.
    • 기본키가 변경되면 다른 엔티티의 값도 변경되며 이를 약한 개체라고 한다.
  • 비식별 관계
    • 강한 개체의 기본키를 다른 엔티티의 기본키가 아닌 다른 칼럼으로 관계를 가지는 것이다.
    • 비식별관계는 점선으로 표현한다.
  • 식별자
    • 유일성(unique)을 만족하는 속성
    • 주식별자 primary key
      • 후보키 중에서 엔티티를 대표하는 키
    • 후보키 candidate key
      • 유일성과 최소성(unique and not null)
    • 슈퍼키 super key
      • 유일성은 만족하지만 최소성은 만족하지 않는다.
    • 대체키 alternate key
      • 여러개의 후보키 중에서 기본키를 선정하고 남은 키이다.
  • 주식별자와 보조 식별자
  • 내부 식별자
    • 엔티티 내부에서 스스로 생성되는 식별자이다.
  • 외부 식별자
    • 다른 엔티티와의 관계로 인해서 만들어지는 식별자이다.
  • 단일 식별자와 복합 식별자
  • 본질 식별자
    • 비지니스 프로세스에서 만들어지는 식별자이다.
  • 인조 식별자
    • 인위적으로 만들어지는 식별자이다.
profile
반 걸음씩 이라도 가보자.

0개의 댓글