Relational Database Index Design and the Optimizers

튜닝의 관점에서 가장중요하고 기본적인 것 3가지는 무엇일까?
DBMS의 구조의 이해? 아니면 Wait Event?
모두 중요하지만 정답이아니다.
사실 개발자나 설계자들이 모든 DBMS 의 구조나 Wait Event를 알기란 사실상 불가능하다.

필자가 바라보는 가장 중요한 세가지는 아래와 같다.
1.효율적인 스키마(테이블) 디자인  
2.고품질의 SQL 작성능력
3.전략적인 인덱스 설계

너무도 당연한 이야기 일까?
하지만 위의 3가지를 모두만족 하는 사이트는 거의 없다는 것이 현실이다.

위의 세가지중에 오늘은 RDB 인덱스 대하여 깊이있는 주제를 다루는 책에 대하여 이야기 할것이다.
RDB 튜닝에 있어서 인덱스의 중요성은 다른무엇보다도 크다고 하겠다.

사용자 삽입 이미지

이책의 주제는 인덱스이다.
인덱스 가지고 책한권이나 읽어야 하나?
그런 생각이 날법도 하지만 일단 한장 한장 넘기다 보면
그런 생각이 싹 사라진다.
이책은 거의 모든 메이져 RDBMS 사의 인덱스를 커버하며
이책에서 제공하는 공식 또한 모든 RDB 에서 적용이 가능하다.
참고로 이책은 공식으로 시작하고 공식으로 끝난다.
물론 어려운 수학공식이 아닌 쉬운 계산식이다.

한가지 아쉬운점은 IBM DB2 의 기준으로 글이 쓰여졌다는 점이다.
다시말하면 DB2 엔지니어의 관점으로 Oracle 이나 SQL 서버를 바로보고 있다는 점이다.
하지만 인덱스의 특성상 DBMS 마다 방식이 다를수 없는 것 또한 인덱스의 특징이다.
물론  각 밴더사의 특수한 인덱스는 특성이 서로다를수 있지만 이책의 범위 밖이다.
인덱스관련 책이라고 하지만 인덱스와 옵티마이져의 관계, SQL 작성법 및 조인, 역정규화 등등 인덱스와 직/간접적으로 관련된 분야 까지도 언급하고 있다.

가장 재미있는 점은 저자는 모든 인덱스를 3가지 종류로 나누고 있다.
1 Star 인덱스
2 Star 인덱스
3 Star 인덱스
각각의 특성및 적용방법에 대해서는 언급하지 않고 여러분들의 몫으로 돌린다.

한가지 옥의티 라면 페이지수(300 페이지) 에 비해서 양장본(Hard Cover)이므로 너무 비싸다는 점이다.
하지만 내가 여러분이라면 그리고 튜닝에 관심이 있다면 꼭 구입 할것이다.
한국뿐만 아니라 전세계적으로 인덱스를 주제로 하는 책이 전무한 실정에서 이책은 가뭄에 단비와 같다고 하겠다.
특히 인덱스 설계나 인덱스 디자인 차트를 작성하는 설계자및 튜너에게 필요한 책이라고 할수 있다.
여러분 각자 사내 스터디 그룹을 만들고 이책을 마스터 하는것은 어떨까?

필자는 이책에 별 5개를 주고싶다.
평가 : : ★★★★★

Amazon 평가 : Relational Database Index Design and the Optimizers

RELATIONAL DATABASE INDEX DESIGN AND THE Optimizers 상세보기
Lahdenmaki, Tapio/ Leach, Michael 지음 | Wiley 펴냄


PS :
필자는 책장사가 아니다.
가끔씩 고품질의 RDB 책을 소개하는 사람일 뿐이다.(오해하지 마시길)

Posted by extremedb
,