SQL 기본 지식

Calvin Park·2022년 5월 27일
0

성능 데이터 모델링 고려사항
1. 정규화를 수행하여 데이터베이스 모델의 유연성을 확보한다.
2. 데이터베이스의 전체 용량, 월간, 연간 증감율을 예측한다.
3. 애플리케이션 트랜잭션의 유형(CRUD: CREATE, READ,UPDATE, DELETE)를 파악한다.
4. 합계 및 정산 등을 수행하는 반정규화를 수행한다. (성능 향상을 위한 튜닝)
5. 기본키와 외래키, 수퍼타입과 서브타입 등을 조정한다
6. 성능관점에서 데이터 모델을 검증하고 확인한다.

[3가지 모델링]

  • 개념적 모델링: 개체와 개체들 간의 관계에서 ER다이어그램을 만드는 과정.
  • 논리적 모델링: ER다이어그램을 사용하여 관계 스키마 모델을 만드는 과정
  • 물리적 모델링: 관계 스키마 모델의 물리적 구조를 정의하고 구현하는 과정

데이터베이스 논리 모델
1. 개념 데이터 모델은 사용자 관점에서 데이터 요구사항을 식별한다.
2. 논리 데이터 모델은 M:N 관계해소, 식별자 확정, 정규화, 무결성 정의 등을 수행한다.
3. 논리 모델은 비지니스 정보의 논리적 구조 및 구축을 파악할 수도 있다.(즉, 핵심 엔터티와 키 엔터티등을 식별하고 모델링하여 데이터베이스 구조를 모델링한다.)
4. 데이터가 물리적으로 저장되는 방법을 정의하는 것이 물리적 모델이다.

정규화(Normalization)하는 목적은
정규화(Normalization)는 함수적 종속성에 따라서 테이블을 분해하는 과정으로 중복을 제거 해서 모델의 독립성을 향상시킨다. 그리고 정규화를 수행하지 않으면 발생되는 문제가 갱신이상 (이상현상 Anoma-ly) 삽입, 삭제 수정이상현상이 있다.
1. 정보의 갱신 이상이 생기지 않도록 한다.
2. 정보의 손실을 막는다.
3. 정보의 중복을 막는다.

기본키속성(Primary Key)은 엔터티를 식별할 수 있는 속성이고 외래키속성(Foregin Key)은 다른 엔터티의 관계에 포함되는 속성이다. 다른 엔터티의 관계에 포함되지 않는 속성을 일반속성(Attributes)이라고 한다.

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

식별자의 특징

  • 유일성: 주식별자에 의해 엔터티내에 모든 인스턴스들이 유일하게 구분되어야 함
  • 최소성: 주식별자를 구성하는 속성의 수는 유일성을 만족하는 최소의 수가 되어야함
  • 불변성: 지정된 주식별자 값은 자주 변하지 않는 것이어야 함
  • 존재성: 주식별자가 지정이 되면 반드시 값이 들어와야 함(Null 허용 불가)
profile
Personal Velog Note

0개의 댓글