자격증/SQLD

2024 SQLD 자격증 공부 총정리 과목 1

고로케 2024. 5. 6.
반응형

SQLD 시험을 위해 과목1 개념을 총정리한다.

0. SQLD 시험 합격 기준

  • 총점: 60점 이상
  • 과목 점수
    • 1과목(모델링): 10문제(20점) -> 과락: 8점 미만
    • 2과목(sql기본): 40문제(80점) -> 과락: 32점 미만
      • 주관식(8문제), 객관식(42문제)
  • 목차
  • 과목 1
    • 1. 데이터 모델의 이해
      • 데이터 모델의 이해, 엔티티, 속성, 관계, 식별자
    • 2. 데이터 모델과 성능
      • 정규화와 성능, 반정구화와 성능, 대용량 데이터에 따른 성능, DB 구조와 성능, 분산 DB 데이터에 따른 성능
  • 과목 2
    • SQL 기본
      • 정보 요구 사항, DDL, DML, TCL, WHERE 절, FUNCTION, GROUP BY, HAVING 절, ORDER BY 절, 조인
    • SQL 활용
      • 표준 조인, 집합연산자, 계층형 질의, 서브쿼리, 그룹 함수, 윈도우 함수, DCL, 절차형 SQL
    • SQL 최적화 기본 원리
      • 옵티마이져와 실행계획, 인덱스 기본, 조인 수행 원리

 

0. 모델링 : 현실 세계의 현상을 추상화/단순화 하여 일정한 표기법으로 표현

  • 옳지 않은 보기 : 데이터 모델링은 구현만을 위한 단계이다 (x)

1. 모델링의 특징

  • 추상화 (abstraction) : 일정한 형식에 맞춰 표현
  • 단순화 (simplification) : 제한된 표기법/언어로 표현
  • 명확화 (clarity) : 이해 쉽게 표현

2. 모델링의 관점

  • 데이터 관점 (what) : 업무-데이터 사이의 관계(관련)에 대한 관점
  • 프로세스 관점(how) : 업무에서 실제로 하고 있는 일/무엇을 해야하는 지에 대해 모델링 방법을 고민하는 관점
  • 데이터와 프로세스의 상관 관점 (interation) : 업무 처리에 따라 데이터에 영향에 대한 관점

3-1 모델링의 중요성

  • 파급효과
  • 간결한 표현
  • 데이터 품질 유지

3-2. 유의점 (하면 안됨) / 데이터 품질 평가 기준

  • 중복성 : 여러 DB에 같은 정보를 중복으로 저장 하면 안됨
  • 비유연성 : 업무 변화에 따라 데이터 모델이 변경 되면 안됨
  • 비일관성 : 모델링 할 때 데이터들의 상호 연관 관계를 명확히 해야함 (연관된 데이터가 변경시에 일치하지 않으면 안됨)

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

현실 —1.개념적 모델링-> 개념적 구조 —2.논리적 모델링-> 논리적 구조 —3.물리적 모델링→ 데이터베이스

  1. 개념적 모델링 계획/분석: ERD 도출, 업무중심
  2. 논리적 모델링 분석 : 테이블 도출, 속성 관계 표현
  3. 물리적 모델링 설계: DB구축, 물리적-구체적
  • 문제) 프로젝트 라이프사이클 ‘설계’ 단계에서 수행되는 모델링?
  • 답 : 물리 데이터 모델링

5. 3층 스키마 (외개내)

  • 외부 스키마 : 사용자 관점, 사용자가 보는, 개인 DB 스키마
  • 개념 스키마 : 사용자 관점 통합 전체 DB, DB에 저장되는 데이터와 사용자 관계 표현, DB 설계 설명
  • 내부 스키마 : 물리적DB, 데이터베이스가 물리적으로 저장된 형식, 개발자 관점

 

  • 논리적 독립성 
    • 외부-개념을 통해 논리적 독립성 보장
    • 개념 스키마가 변경 → 외부 스키마에는 영향 X
    • 논리적 구조가 변경 → 응용 프로그램에는 영향이 없음, 통합구조 변경 가능
  • 물리적 독립성
    • 물리적 독립성 보장
    • 내부스키마가 변경 → 외부/개념 스키마는 영향 X
    • 응용프로그램과 개념스키마에 영향 없이 저장장치 구조변경 가능, 물리적 구조

6. 데이터 모델링 3요소

  • 엔터티 (Entity) : 어떤 것 (Thing)
  • 성격 (Attributes) : 속성
  • 관계 (Relationships) : 엔터티간의 관계

7. ERD : 데이터 모델 표기법 : 엔터티를 사각형, 관계를 마름모, 속성을 타원형으로 표현

 

8. ERD 표기법을 이용하여 모델링 하는 방법

  1. 엔터티 그리기/도출
  2. 엔터티 배치
  3. 엔터티 관계 설정
  4. 관계명 기술
  5. 관계 참여도 기술 / 관계차수
  6. 관계 필수여부 기술

 

9. 좋은 모델링의 요건

  • 완전성 : 업무에서 필요로 하는 모든 데이터가 데이터 모델에 정의되어야 한다
  • 중복배제 : 동일한 사실은 반드시 한번만 기록
  • 업무규칙 : 업무규칙이 데이터 모델에 표현되어야 한다
  • 데이터 재사용 : 회사 전체 관점에서 공통 데이터 도출, 전 영역 사용할 수 있도록 설계
  • 통합성 : 동일한 데이터는 조직의 전체에서 한번만 정의되고 이를 참조, 활용

2절

  1. 엔터티 (Entity)
    • 업무에 필요한 정보를 저장하고 관리하기 위한 집합적인 것 (실체, 객체)
    • 엔터티는 인스턴스의 집합 (인스턴스는 엔터티 안의 데이터)
  2. 엔터티의 분류

2-1 유형/무형의 분류

  1. 유형(Tangible) 엔터티
  • 물리적인 형태가 있고 안정적이며 지속적 활용 ex) 교수, 강의실, 학생
  1. 개념(Conceptual) 엔터티
  • 물리적인 형태는 존재하지 않으나 관리해야 할 개념적 정보 ex) 수업, 보험상품
  1. 사건(Event) 엔터티
  • 업무 수행 과정에서 발생, 비교적 발생량 많음 (통계자료에 이용) ex) 수강신청, 주문

2-2 발생시점에 따른 엔터티 (기 중 행)

  1. 기본(key) 엔터티 : 독립적으로 생성되는 엔터티
  2. 중심(main) 엔터티 : 기본 엔터티와 행위 엔터티 중간에 존재하는 엔터티
  3. 행위(active) 엔터티 : 2개 이상의 부모 엔터티로부터 발생, 비즈니스 프로세스를 실행하면서 생성되는 엔터티, 지속적 정보가 추가되고 변경되어 데이터양이 가장 많음

3. 엔터티의 특징

  • 업무에서 필요로 하는 정보 포함
  • 유일한 식별자를 가짐 (식별자에 의해 식별이 가능하도록, 관계엔터티 예외)
  • 2개 이상의 인스턴스를 포함함 (인스턴트의 집합)
  • 업무 프로세스에 이용됨
  • 속성 없이 엔터티의 이름만 존재할 수 없음 (속성이 포함)
  • 다른 엔터티와 최소 1개 이상의 관계가 존재 (통계성, 코드성, 내부필요 엔터티 예외)

4. 엔터티의 명명

  • 엔터티 생성 의미대로, 실제 업무에서 사용하는 용어를 사용
  • 약어를 사용 X, 단수명사 사용
  • 이름이 동일한 엔터티가 중복으로 존재 X

 

3절 속성

-1.속성의 정의

  • 업무에서 관리되는 정보
  • 속성에는 하나의 속성값 존재
  • 주식별자에게 함수적으로 종속되어, 기본키에 따라 속성의 값 변경 가능
  • 함수적으로 종속: 데이터가 어떤 기준값에 의해 종속되는 현상

# 엔티티 : 2개 이상의 인스턴스의 집합
# 인스턴스 : 2개 이상의 속성
# 속성 : 1개의 속성값

 

-2. 속성의 특징

  • 해당 업무에서 필요하고 관리해야 하는 정보
  • 모든 속성은 정해진 주식별자에 함수적으로 종속되어야 함
  • 하나의 속성은 한 개의 값만을 가짐

-3. 속성의 명명

  • 현업에서 사용하는 이름으로 명명
  • 약어 사용 x
  • 속성명은 명사형일 것
    • 수식어/소유격/서술식 x
  • 유일성이 있을 것

-4. 속성의 분류

1)특성 분류

  • 기본 속성 : 비즈니스 프로세스(업무)에서 도출한 본래의 속성
  • 설계 속성 : 데이터 모델링 과정에서 만든 속성
  • 파생 속성 : 다른 속성에 의해 만들어지는 속성 (통계, 평균값)

2) 엔터티 구성방식으로 분류

  1. PK 기본키 속성
  2. FK 외래키 속성
  3. 일반 속성

4절 관계

-1. 관계와 페어링(Pairing)- 관계 : 엔터티의 인스턴스 사이의 논리적인 연관성으로서 서로에게 연관성이 부여된 상태

  • 페어링 : 엔터티 내 인스턴스간 개별적 관계 → 이것의 집합을 관계로 표현- 인스턴스의 집합 ⇨ 엔터티 페어링의 집합 ⇨ 관계

-2. 관계의 분류

1)ERD : 존재에 의한 관계 / 행위에 의한 관계 (구분 없이 단일화된 표기법 사용)

  • 존재에 의한 관계 ex) 부서 - 사원
    • 부서는 사원을 포함한다
    • 사원이 부서에 소속된다
  • 부서 +—< 사원
  • 행위에 의한 관계 ex) 고객 - 주문

2) UML : 연관 관계 / 의존 관계 (실선과 점선 표기법으로 구분)

-3. 관계의 표기법

  1. 관계명 : 엔터티 간의 관계. 각 관계는 2개의 관계명 및 관점을 가짐
  2. 관계차수(Cardinality) : 1:1, 1:M, M:M (관계 엔터티 이용)
  3. 관계선택사양 : 필수는 I 선택은 O로 표시

5절 식별자

-1. 주식별자의 특징

  • 유일성 : 주식별자에 의해 엔터티 내에 모든 인스턴스를 유일하게 구분할 수 있다.
  • 최소성 : 주식별자를 구성하는 속성은 유일성을 만족하는 최소의 수가 되어야 한다.
  • 불변성 : 주식별자가 한번 특정 엔터티에 고정되면 값이 변하지 않는다.
  • 존재성 : 주식별자가 지정되면 반드시 값이 존재한다. null (x)

-2. 키의 종류

  • 대표성 여부에 따른 분류
    • 주식별자: 엔터티 내 각 데이터를 구분할 수 있는 구분자로, 타 엔터티와 참조관계 연결
    • 보조식별자: 대표성이 없어 참조관계 연결 불가능
  • 스스로 생성 여부에 따른 분류
    • 내부식별자: 스스로 생성된 식별자
    • 외부식별자: 다른 엔터티와의 관계로 생성되는 식별자
  • 속성의 수에 따른 분류
    • 단일식별자: 하나의 속성으로 구성된 식별자
    • 복합식별자: 다수의 속성으로 구성된 식별자
  • 대체 여부에 따른 분류
    • 본질식별자: 비즈니스 프로세스에서 만들어지는 식별자
    • 인조식별자: 인위적으로 만들어지는 식별자

 

반응형

댓글