CUBRID를 활용한 SQL 교육(인덱스 집중 이해편) 교육 교재

by admin posted Jan 05, 2012

웹 서비스 개발자를 대상으로 한 SQL 작성 및 튜닝 교육 교재입니다.

인덱스 활용에 관한 핵심 내용은 전부 포함되어 있어 업무 활용도가 높을 것입니다.

큐브리드 뿐만 아니라 다른 데이터베이스를 사용하는 개발자들에게도 유용한 자료입니다.

 

교육 목표

  • 인덱스의 구조를 이해할 수 있다.
  • 유사한 쿼리의 기능/성능 상의 차이점을 설명할 수 있다.
  • 실행계획을 읽고 일정 부분 개선할 수 있다.
  • 성능을 고려한 인덱스 설계를 어느 정도는 할 수 있다.
  • 성능을 고려한 쿼리 작성을 할 수 있다.
  • 실습이 하고 싶어진다.


1. 교육의 목표

1.1 Query란 무엇인가
1.2 교육 목표

2. 옵티마이저의 이해

2.1 옵티마이저 소개
2.2 옵티마이저 비교 CUBRID VS MySQL
2.3 질의 처리 과정
2.4 통계정보

3. 조인의 이해

3.1  JOIN METHOD & JOIN TYPE
3.2  JOIN METHOD

4. 다양한 데이터 연결 방식

4.1  데이터를 추출하는 여러 가지 방법
4.2  Standard Join
4.3  SET
4.4  SUBQUERY

5. 인덱스의 이해

5.1  인덱스 기초
5.2  CUBRID 인덱스 구조
5.3  CUBRID 인덱스 활용
5.4  인덱스 구성 전략

6. 실행계획 읽기

6.1  실행계획 기초
6.2  실행계획 예제
6.3  실행계획 분석
6.4  PAGE IO 확인하기
6.5  HINT 사용하기
6.6  실행계획 전체 분석하기

7. 그리고 몇 가지 오해와 진실

7.1 WHERE절에 조건은 많을 수록 좋다?
7.2 WHERE절의 컬럼에 인덱스가 있으면 성능은 문제 없다?
7.3 쿼리 RETURN 건수가 많아 페이징 처리를 했으니, 성능이 좋아지겠죠?
7.4 인덱스를 전부 타면 성능이 빨라지겠죠?
7.5 데이터가 10만 건도 안되니, 성능 문제는 없겠죠?

8. 튜닝 초보자를 위한 몇 가지 TIP

8.1 실행계획에 관심을 가져주세요.
8.2 테이블의 인덱스 구조에 관심을 가져보세요.
8.3 활용 가능한 인덱스가 없을 경우 데이터를 잘 분석해보세요.
8.4 쿼리를 바라보는 시각을 조금만 바꿔보세요.
8.5 OUTER TABLE의 access 범위를 줄이는 것을 고민해보세요.
8.6 SUB QUERY? 신중히 생각해서 사용해주세요.
8.7 SUB QUERY와 JOIN 을 자유롭게 변경할 수 있도록 연습해보세요.
8.8 각 DBMS별 연산자/함수의 동작 방식에 대해 공부해보세요.