본문 바로가기

개발 도서 리뷰/개발 도서 리뷰

개발 도서 리뷰 (10) 업무에 바로 쓰는 SQL 튜닝 4.0/5.0

 

업무에 바로 쓰는 SQL 튜닝

나의 평점 4.0/5.0

 

 

 

추천합니다.

SQL 성능 최적화에 관심이 있어서 관련 서적을 펼쳐봤다가 하나도 이해하지 못하고 좌절해본 경험이 있다면.

충동구매하고 읽지도 못하는 데이터베이스 관련 서적들이 책장에 한 가득이라면.

기본 쿼리문은 작성할 줄 알지만 성능 개선 방법은 인터넷에서 주워들은 지식이 전부라면.

 

추천하지 않습니다.

아직 SQL 기본 문법도 잘 모른다면.

혹은 반대로 SQL 튜닝에 대한 지식이 이미 어느 정도 잡혀있는 단계라면.

 

 

 

개발에 공짜 점심은 없다는 건 알고 있지만, 유독 DB나 SQL 쪽은 "아니.. 알겠는데 그래서 점심 먹으려면 뭐해야 하는데.."라는 생각이 많이 드는 것 같다. 공부를 하고 싶어도 어디서부터 시작해야할지 난해하다는 것이다.오늘 소개할 책은 나와 같은 생각을 하고 있는 사람들에게 도움이 될만한 책이다.

 

파이널 프로젝트(https://7357.tistory.com/320) 당시 생각보다 SQL 성능에 신경을 써야 할 부분들이 있어서 충동적으로 구매한 책으로, 사실 프로젝트 전에 주문해서 책장에 꽂아놓은 DB 및 웹 애플리케이션 성능 최적화 관련 책이 4권이나 있으나 전부 실무 경험이 어느 정도 있는 게 아닌 이상 도저히 이해할 수 없는 어려운 내용들이라서 읽다가 중도 포기했다.단순히 어렵기만 한 거라면 참고 읽겠지만 마치 중등 수학도 모르는 학생이 고등 수학 펼치고 공부하는 기분이라 시간 낭비처럼 느껴져서..

 

결론부터 말하자면, 내가 지금까지 주문한 책들 중에서는 이 책이 초보자가 읽기에 가장 적합했다.목차부터 간단하게 훑어보자.

 

 

 

1. MySQL과 MariaDB 개요

: MySQL과 MariaDB의 시장 점유율이나 특징 등을 설명하며 왜 배우면 좋은지, Oracle DB와는 무엇이 다른지 등을 다룬다.

 

2. SQL 튜닝 용어를 직관적으로 이해하기

: SQL 튜닝 시 등장하는 용어들을 간단하게 설명한다. (내가 가장 좋았던 부분)

 

3. SQL 튜닝의 실행계획 파헤치기

: SQL 실행계획을 읽고 해석하는 방법을 다룬다.

 

4. 악성 SQL 튜닝으로 초보자 탈출하기

5. 악성 SQL 튜닝으로 전문가 되기

: 실전 예시를 바탕으로 SQL문의 어떤 부분이 문제인지, 그리고 어떻게 개선해야 하는지, 최종적으로 얼마나 성능 개선이 있었는지를 다룬다.

 

 

 

목차가 심플하다.SQL 튜닝과 관련된 최소한의 이론만 설명하고 바로 실전으로 넘어가는 책인데, 2장, 3장의 분량이 많고 친절해서 초보자들이 입문용으로 읽기 좋다.특히 인터넷에서 파편화된 지식으로 습득할 때는 어렵게 느껴지던 각종 튜닝 용어들의 개념들을 군더더기 없이 필요한 내용만 간결하게 설명해주는 부분이 마음에 들었다.

 

스칼라 쿼리, 인라인 뷰, 중첩 서브쿼리, 중첩 루프 조인, 블록 중첩 루프 조인, 해시 조인, 테이블 풀 스캔, 인덱스 풀 스캔, 인덱스 고유 스캔, 인덱스 범위 스캔 선택도, 카디널리티, SQL 힌트, 콜레이션, 히스토그램, SQL 실행계획.. 등등, 이런 단어들을 보기만 해도 정신이 어질어질해지는 사람이라면 해당 용어들을 쉽게 이해할 수 있는 것만으로도 이 책은 충분히 가치가 있을 것이다.

 

3장 SQL 실행 계획까지 읽고 나면 마음에서 자신감이 솟아 오르기 시작하면서 상상 속에서는 우리 서버의 데이터 접근 속도가 10배 정도 빨라지기 시작한다.4장, 5장까지 읽고 나면 마음만은 이미 고수일텐데.. 당연하지만 현실은 그렇게 녹록지 않다 ㅎ..술술 읽히는 만큼 실전에 바로 적용하기에는 부족한 부분들이 있으니 말이다.

 

이 책을 읽고 예제까지 만들어가며 연습해봐도 실전에서는 어떻게 해야할지 난해하게 느껴지는 부분들이 많지만, 정말 캄캄한 어둠 속에서 헤매다가 어디로 가야하는지 멀리 있는 한줄기 빛이라도 얻을 수 있다. 최소한 시작점을 알았으니 여기서부터 더 나아가다보면 언젠가 나도 SQL 고수가 될 수 있지 않을까? (ㅋㅋ)

 

 

한줄평

 

"천 리 길도 한 걸음부터"