|
| 1 | +# SQLD 자격준비 |
| 2 | + |
| 3 | +이커머스 업무를 하면서 복잡하게 조인된 주문 SQL 쿼리를 이해해야 하고 영향도는 적게, 속도 빠르게 수정해서 사용하려고 하다보니 DB관련 지식에 흥미가 생겼고 시간이 생기면 취득할 계획을 가지고 있습니다. |
| 4 | + |
| 5 | +업무만으로 발전할 수 없다고 생각이 들었던 터라 자격증 취득방법을 인터넷에 검색해보았습니다. |
| 6 | + |
| 7 | + |
| 8 | +응시료: 5만원 |
| 9 | +접수일정: 2월, 5월, 8월, 11월 |
| 10 | +합격기준: 총점 60점 이상 |
| 11 | + |
| 12 | +## 1과목 모델링 |
| 13 | +- 데이터 모델링의 이해 |
| 14 | +- 데이터 모델과 성능 |
| 15 | + |
| 16 | +## 2과목 sql 기본 및 활용 |
| 17 | +- SQL 기본 |
| 18 | +- SQL 활용 |
| 19 | +- SQL 최적화 기본 원리 |
| 20 | + |
| 21 | +대략 1주일 3 ~ 5시간 공부하면 합격할 수 있다고 판단됨. |
| 22 | + |
| 23 | +## 추천 서적 |
| 24 | +- SQL 전문가 가이드 |
| 25 | +- SQL 자격검정 실전문제 |
| 26 | +- 네이버 카페: 데이터 전문가 지식포털 |
| 27 | + |
| 28 | + |
| 29 | +# SQL 전문가 가이드 |
| 30 | +SQL(Structured Query Language)은 데이터베이스를 직접적으로 엑세스할 수 있는 언어입니다. |
| 31 | + |
| 32 | +데이터를 정의하고 조작하며 조작한 결과를 적용,취소,접근 권한을 제어하는 처리할 때 사용합니다. |
| 33 | + |
| 34 | +## SQL 개발자의 정의 |
| 35 | +- 데이터베이스와 데이터 모델링에 대한 지식을 바탕으로 데이터를 조작 및 추출하는데 정확하고 최적의 성능을 발휘하는 SQL을 작성하는 개발자를 말합니다. |
| 36 | + |
| 37 | +## 필요성 |
| 38 | +- 오늘날 기업의 정보화에 있어서 관계형 데이터 베이스는 데이터 저장소의 대부분을 차지하고 있습니다. |
| 39 | +- 직무 수행을 위해 최적의 SQL을 작성할 의무가 있습니다. |
| 40 | + |
| 41 | +``` |
| 42 | +키워드 모음 |
| 43 | +엔티티, 속성, 관계, 식별자, 정규화, 데이터 모델 |
| 44 | +옵티마이저, 인덱스, 튜닝, Lock, 트랜잭션 동시성 제어 기법, 조인 |
| 45 | +정규화, 일관성, 일반화, 무결성 |
| 46 | +``` |
| 47 | + |
| 48 | + |
| 49 | +# 궁금한 부분 먼저 학습 |
| 50 | +2. SQL 기본 및 활용 > 제3장 SQL 최적화 기본 원리(444) |
| 51 | +- 인덱스의 기본적인 목적은 검색 성능의 최적화입니다. |
| 52 | + |
| 53 | +3. SQL 고급 활용 및 튜닝 > 제 3장 옵티마이저 원리(556) |
| 54 | +- 내부적으로 SQL 처리절차 = 실행계획을 생성합니다. |
| 55 | +- 옵티마이저는 SQL을 가장 빠르고 효율적으로 수행할 최적의 처리경로를 생성해 주는 DBMS 내부의 핵심엔진입니다. |
| 56 | +- 데이터 딕셔너리에 미지 수집해 놓은 오브젝트, 시스템 통계정보를 이용해 각 실행계획의 예상비용을 산정합니다. |
| 57 | + |
| 58 | + |
| 59 | +3. SQL 고급 활용 및 튜닝 > 제 4장 인덱스와 조인(596) |
| 60 | +- SQL 튜닝의 가장 핵심은 I/O 효율화에 있다. |
| 61 | +- 인덱스를 이용하면 원하는 키워드를 포함한 페이지를 빠르게 찾을 수 있다. 인덱스가 없다면? 책 전체를 한 장씩 훑어가며 찾는 수밖에 없다. |
| 62 | +- 다양한 인덱스 구조가 있다. |
| 63 | +- 인덱스 탐색 알고리즘에 따라 루트, 브랜치, 리프 블록까지 수평적 혹은 직적 탐색을 수행합니다. 루트에서 리프 블록까지의 거리를 인덱스 깊이(Height)라고 합니다. 각 노드는 범위를 판단하는 키와 주소정보(rowId)를 가지고 있습니다. |
| 64 | +- 인덱스를 스캔하는 범위를 얼마만큼 줄일 수 있는지, 테이블로 엑세스하는 회수를 얼마만큼 줄일 수 있는지가 인덱스 설계와 튜닝의 핵심입니다. |
| 65 | + |
| 66 | + |
| 67 | +## 제1장 데이터 모델링의 이해 |
| 68 | +### 1. 데이터 모델의 이해 |
| 69 | +모델링의 특징 |
| 70 | +- 추상화 : 사물을 약속된 표기법에 맞게 표현 |
| 71 | +- 단순화 : 쉽게 이해할 수 있도록 하는 개념 |
| 72 | +- 명확화 : 정확하게 기술 |
| 73 | + |
| 74 | +모델링의 관점 |
| 75 | +- 데이터 관점 |
| 76 | +- 프로세스 관점 |
| 77 | +- 데이터와 프로세스의 상관관점 |
| 78 | + |
| 79 | +2. 데이터 모델링의 정의 |
| 80 | +- 정보시스템을 구축하기 위한 데이터관점의 업무 분석 기법 |
| 81 | +- 현실세계의 데이터에 대해 약속된 표기법에 의해 표현하는 과정 |
| 82 | +- 데이터베이스를 구축하기 위한 분석 설계의 과정 |
| 83 | + |
| 84 | +데이터 모델이 제공하는 기능 |
| 85 | +- 시스템을 현재 또는 원하는 모습으로 가시화하도록 와준다. |
| 86 | +- 시스템의 구조와 행동을 명세화 할 수 있게 한다. |
| 87 | +- 시스템을 구축하는 구조화된 틀을 제공한다. |
| 88 | +- 시스템을 구축하는 과정에서 결정한 것을 문서화한다. |
| 89 | +- 특정 목표에 따라 구체화된 상세 수준의 표현방법을 제공한다. |
| 90 | +- 다양한 영역에 집중하기 위해 다른 영역의 세부 사항은 숨기는 다양한 관점을 제공한다. |
| 91 | + |
| 92 | +3. 데이터 모델링의 중요성 및 유의점 |
| 93 | +가. 파급효과 |
| 94 | +나. 복잡한 정보 요구사항의 간결한 표현 |
| 95 | +다. 데이터 품질 |
| 96 | + |
| 97 | +유의점 - 중복, 비유연성, 비일관성 |
| 98 | + |
| 99 | +4. 데이터 모델링의 3단계 진행 |
| 100 | +개념적, 논리적, 물리적 데이터 모델 |
| 101 | +EA(Enterprise Architecture) 전사적 구조 수립 |
| 102 | +ERD(Entity Relation Diagram) |
| 103 | +분석단계(개념적, 논리적 데이터 모델링) |
| 104 | +- 기초적인 업무조사를 포함한 시스템 설계의 전 과정 |
| 105 | +- 정규화(중복제거 일관성 확보) |
| 106 | +설계단계(물리적 데이터 모델링) |
| 107 | + |
| 108 | + |
| 109 | +5. 프로젝트 생명주기에서 데이터 모델링 |
| 110 | + |
| 111 | + |
| 112 | +### 2. 엔티티 |
| 113 | +### 3. 속성 |
| 114 | +### 4. 관계 |
| 115 | +### 5. 식별자 |
| 116 | +## 제2장 데이터 모델과 성능 |
| 117 | +### 1. 성능 데이터 모델링의 개요 |
| 118 | +### 2. 정규화와 성능 |
| 119 | +### 3. 반정규화와 성능 |
| 120 | +### 4. 대량 데이터에 따른 성능 |
| 121 | +### 5. 데이터베이스 구조와 성능 |
| 122 | +### 6. 분산 데이터베이스와 성능 |
| 123 | + |
| 124 | + |
| 125 | + |
| 126 | + |
| 127 | + |
| 128 | + |
| 129 | + |
| 130 | + |
| 131 | + |
| 132 | + |
| 133 | + |
| 134 | + |
| 135 | + |
| 136 | + |
| 137 | + |
| 138 | + |
| 139 | + |
| 140 | + |
| 141 | + |
| 142 | + |
| 143 | + |
| 144 | + |
| 145 | + |
| 146 | + |
| 147 | + |
| 148 | + |
0 commit comments