|
책받고 첫장 읽어보면서 낚였구나하는 생각... 왜 책제목에 2005년에 저술한 책처럼 오라클이라는 특정 DB명을 뺀건지 이해가 안간다. 뭐 내가 책소개에서 '오라클 실전 튜닝'의 후속 버전이다는 글은 읽었지만.. 책제목에서 없어져서 다른 DB에 대한 것도 같이 설명해 주는 줄 알고 산 책임도 있지만.. 낚였다는 느낌이다.
SQL이란 것이 비슷한 것이지만 각 DB마다 좀 틀리기때문에 그래도 Oracle를 주로하되 MS SQL, MySQL 도 언급해 주었으면 더 좋았을 것 같고 낚였다는 느낌도 없었을 것이다.
아무튼 Oracle를 공부하시는 분들에게는 도움이 될 것 같고 MS SQL, MySQL를 이용하시는 분들은 그냥 구매하는 것이 아니라 한번 큰책방에서 살펴본후 구매결정하는 것이 정신건강에 좋을 것 같다.
마지막으로 책값이 너무 비싸다. 본 저자가 2005년에 출간한 이전 버전 책이 본책보다 페이지도 많은데도 25,000원이다.. 정가가 1만원차이다. 물가를 반영했다고 하더라도 비싼감이 없지않다.
빨리 Oracle 공부하시는 분들의 리뷰가 올라오길 학수 고대한다. 내용면에서만은 이전 버전에 준하는 평을 받을 것 같아 별4개, 가격이 비싸서 편집/구성은 별3개를 준다. |
|
Perfect 오라클 실전튜닝을 예전에 읽었을 때 감격을 한 나는 저자의 신간이 나왔다는 이야기를 들었고 바로 구입하였다. 이번 책도 지난 번과 마찬가지로 매우 즐겁게 읽었고 두 번 독파하는 동안 관련 지식이 한층 풍부해진 것을 체감하고 있다.
기본적으로 이 책은 철저히 오라클 기반의 SQL튜닝을 포커스로 잡고 쓰여졌다.
크게 7개의 챕터로 나누어져있고 각각의 챕터는 소주제로 80개로 분류하였는데 그 구성이 일반 오라클 튜닝 서적과는 조금 다른 것이 개성적인 맛이 있다. 몇몇 빠진 건 있지만 대다수의 다양한 SQL의 Explain Path를 언급 및 분석하고 각 파트 별로 SQL 작성 시, 주의해야할 점과 간과하기 쉬운 것을 잘 설명하고 있다.
특히 3가지 조인메서드에서의 인덱스 선정과 인덱스의 컬럼 구성에 대해 지나칠 정도로 반복해서 강조하고 있으며 서브쿼리, 인라인뷰, 스칼라서브쿼리라는 조인 아닌 조인에서도 이러한 강조는 반복된다. 이것은 SQL의 수행성능에서 매우 중요한 부분인만큼 이러한 반복이 내게 지겹게 느껴지진 않았다.
SQL 튜닝에서 가장 중요한 것은 결과적으로 처리범위를 줄여 적은 I/O로 수행할 수 있도록 하는 것인데 다양한 상황에서의 방법과 기법들을 저자의 실무경험을 바탕으로 설명하고 있는만큼 효율적인 SQL 작성을 원하는 개발자나 튜너가 되고 싶은 분들은 읽어볼 것을 추천한다.
물론 책의 내용은 결코 쉬운 것이 아니기에.. 기본적인 오라클 아키텍처를 이해하고 있고 대용량 데이터베이스를 읽었다면 수월하게 읽을 수 있을 것이다.
단점은 자세하고 친절하긴 하나 어려운 내용을 텍스트 위주로 설명하다보니 지식이 부족한 사람들에게는 다소 읽기가 어렵다는 점이다. (주변에서 꽤 많은 분들이 그랬다.) 바로 실습이 가능한 예제를 좀 더 많이 넣어 설명했으면 어땠을까 하는 생각이 든다.
또 다른 단점은 비싼 가격. 400페이지 책이 35000원이라면 다른 오라클 서적에 비해서는 다소 비싼 가격이 아닐까 한다. 물론 이러한 책을 읽는 분들은 DB업계에서 일하고 있는 실무자분들일 것이기에 가격적인 부담은 별로 없겠지만..
그리고 간혹 발견되는 오타와 오류또한 존재하지만 (63페이지의 AND-EQUAL의 힌트의 오류 및 241페이지의 optimizer_secure_view_merging 파라미터의 설정오류 등등 ) 어느 책이나 오타, 오류는 있기에 이정도는 크게 문제되지 않는다.
내용상으로는 5점, 편집/구성은 어려운 내용을 텍스트 위주로 풀어쓴 것을 감안 4점을 조심스럽게 매겨본다. 좌우지간 좋은 내용의 멋진 서적을 집필해준 저자분께 박수를 보내며 실무사례를 위주로 나올 2권을 기대해본다. |
|
오라클 10년차 엔지니어로써 이 책을 통해 몰랐던 부분을 새롭게 배운 것은 거의 없다. 또한 설명이 너무나 너무나 반복적으로 나와 읽는데 지루하고 부담이 되었음
초급 엔지니어에게 개념을 잡아주는데는 좋을듯 하지만 중급 이상이라면 내용이 지루할 수 있다.
기술 서적으로서 좀더 많은 예제와 오라클 버전과 환경에 따라 결과가 다를 수 있음에도 결론지어져 있는 것은 오류를 포함 할 수 있다.
예를 들어 1. set autotrace 에 row 의미가 추출되는 건수로 언급한 내용 (실제로는 예상 추출 건수 임) 2. from 절 테이블과 힌트의 테이블 명은 동일한 대문자이거나 소문자 이어야 한다(동일하지 않아도 됨 10g에서 확인함) |