본문내용 바로가기
무료배송 소득공제

상위1% GURU의 비밀 THE LOGICAL OPTIMIZER 성능향상을 위한 트랜스포머의 SQL 재작성 전략

양장본
오동규 지음 | 오픈메이드컨설팅 | 2010년 04월 05일 출간
  • 정가 : 39,000원
    판매가 : 37,050 [5%↓ 1,950원 할인]
  • 통합포인트 :
    [기본적립] 390원 적립 [1% 적립] 안내 [추가적립] 5만원 이상 구매 시 2천원 추가적립 [회원혜택] 우수회원 3만원 이상 구매 시 2~4% 추가적립
  • 추가혜택 : 포인트 안내 도서소득공제 안내 추가혜택 더보기
  • 배송비 : 무료 배송비 안내
  • 배송일정 : 서울특별시 종로구 세종대로 기준 지역변경
    12월 16일 출고 예정 배송일정 안내
  • 바로드림 : 인터넷으로 주문하고 매장에서 직접 수령 안내 바로드림 혜택
    휴일에는 바로드림 픽업으로 더 빨리 받아 보세요. 바로드림 혜택받고 이용하기
상품상세정보
ISBN 9788996384007(8996384003)
쪽수 429쪽
크기 188 * 254 * 30 mm 판형알림

책소개

이 책이 속한 분야

성능 향상을 위한 트랜스포머의 재작성 전략『THE LOGICAL OPTIMIZER』. Logical Optimizer는 성능 향상의 목적으로 SQL을 재작성하는 책으로, 옵티마이져가 SQL을 직접 변경 함으로써 SQL의 성능에 미치는 영향은 다루고 있다. Logical Optimizer의 한계로 인해 발생하는 성능 문제를 해결하는 방법을 제시한다.

저자소개

저자 : 오동규

저자 오동규는 홍익대학교를 졸업하고 오픈메이드 컨설팅의 수석컨설턴트로 재직 중이며 DA(Data Architect)를 맡고 있다. 데이터베이스의 과학과 예술을 널리 전파하는 것을 모토로 삼고 있으며 기업은행, 서울보증보험, 수협, 농협에서 데이터모델링과 DBMS 튜닝 컨설팅 및 교육을 수행하였다. 월간 마이크로 소프트웨어에 DBMS와 관련된 고급원서의 서평을 다수 기고하였다. 저자의 블로그를 방문하면 과학(DBMS)과 예술(데이터 모델링)에 관한 깊이 있는 이야기를 공유할 수 있다.

목차

책을 효율적으로 마스터하는 방법
책의 구성

Part 1 - Query Transformation Concept

들어가기
1.1 Logical Optimizer(Transformer)란 무엇인가
1.2 Query Transformation을 알아야 하는 이유
1.3 Query Transformation의 개념
1.4 Query Transformer의 구조
1.5 DBMS_XPLAN.DISPLAY_CURSOR
1.6 내가 사용한 Hint가 무시되는 이유
1.7 10053 Event Trace

Part 2 - Heuristic Query Transformation

들어가기
2.A Heuristic Query Transformation이란?
2.1
CSE (Common Subexpression Elimination): Where 절에서 or 사용시 중첩된 조건절은 제거하라

2.2 JE(Join Elimination) : 직접 사용하지 않는 테이블은 SQL에서 삭제하라
2.3 OE (Outer Join Table Elimination) : 불필요한 Outer쪽 테이블은 삭제하라
2.4 OJE(Outer-Join Elimination) : 의미 없는 Outer 조인을 Inner 조인으로 바꾸어라
2.5 OBYE(Order By Elimination) : 불필요한 Order By를 삭제하라
2.6 DE (Distinct Elimination) : 불필요한 Distinct를 제거하라
2.7
CNT(Count(column) To Count(*)):Count(컬럼) 사용시 해당 컬럼이 Not Null인 경우 Count(*)로 대체하라

2.8 FPD (Filter Push Down) : 조건절을 인라인뷰 내부로 이동시켜라
2.9 TP* (Transitive Predicate) : 조인절을 이용하여 다른 테이블에 상수조건을 생성시켜라
2.10 SVM (Simple View Merging) : Simple View를 해체하여 메인 쿼리와 통합하라
2.11 LV*(Lateral View) : 뷰를 Scalar 서브쿼리처럼 사용하라
2.12 FOJC* (Full Outer Join Conversion) : Full Outer 조인을 Union All로 변경하라
2.13 NFOJ* (Native Full Outer Join) : Full Outer 조인시 중복 Scan되는 테이블을 제거하라
2.14 OT* (Operator Transformation) : 특정 연산자를 다른 연산자로 변환하라
2.15 PM(Predicate Move Around): Where 조건을 다른 뷰에 이동시켜라
2.16
WCOTR* (Where Current Of To Rowid) : Where Current Of 를 사용하여 Index Scan을 회피하라

Heuristic Query Transformation for Subquery

2.17 SSU(Simple Subquery Unnesting) : 단순 서브쿼리를 조인으로 바꾸어라
2.18
CRSW (Correlated Removal Subquery Using Window Function): 상관 서브쿼리를 사용할 때 분석함수를 사용할 수 있는 경우 서브쿼리를 제거하라

2.19
URSW (Uncorrelated Removal Subquery Using Window Function): 분석함수를 사용할 수 있는 경우 비상관 서브쿼리를 제거하라

2.20 SJ (Semi Join) : 서브쿼리를 Semi 조인으로 변환하라
2.21 AJ (Anti Join) : 부정형 서브쿼리를 Anti 조인으로 바꾸어라
2.22
ANTI NA(Anti Join Null Aware) : Null 허용 컬럼으로 서브쿼리와 조인시 Anti 조인이 가능하다

2.23 OJTAJ*(Outer Join to Anti Join) : Outer 조인을 Anti 조인으로 변환하라
2.24
EJE*(Enhanced JE): Semi / Anti 조인과 ANSI Style로 조인 할 경우도 JE가 가능하다
2.25 JESJ*(Join Elimination Using Self Join): Self Join 사용시에도 JE가 가능하다
2.26 SSTS*(Scalar Subquery To Subquery): 스칼라 서브쿼리를 서브쿼리로 변환하라
2.27 SQC (Subquery Coalescing): 불필요하게 분리되어 있는 서브쿼리를 하나로 통합하라
2.28
DSJ (Driving Semi Join): Semi Join을 Bitmap 인덱스를 이용하여 Driving 테이블로 바꾸어라
2.29
SJR*, AJR*(Hash Join Right Semi/Anti) : Hash Semi/Anti Join 시 사용되는 서브쿼리 집합을 Build Input 집합으로 변환하라

Heuristic Query Transformation for Data Warehouse

2.30 PC* (Pivot Conversion) : Pivot 절을 Case + Group By로 변환하라
2.31 GBEP* (Group By Extension Pruning) : 불필요한 Rollup 이나 CUBE를 삭제하라
2.32
GSTT* (Grouping Sets Using Temp Table): Grouping Sets 사용시 Temp 테이블에 적재후 이를 반복해서 이용하라

2.33 GSTU* (Grouping Sets To UNION): Grouping Sets를 UNION ALL로 변환하라
2.34 GSTR*(Grouping Sets To Rollup): Grouping Sets을 Rollup으로 변환하라
2.B Part 2를 마무리 하며

Part 3 - Cost Based Query Transformation

들어가기
3.A Cost Based Query Transformation이란 무엇인가
3.B Search Type과 Iteration이란 무엇인가
3.1 CBPPD*(Cost Based Predicate Push Down) : Complex View에 Filter를 밀어 넣어라
3.2 PPU(Predicate Pull Up) : 비용이 많이 드는 조건절을 뷰 외부로 이동시켜라
3.3
OR-Expansion(OR To Union All Conversion) : OR 조건을 이용하여Union All로 변경시켜라
3.4
OR-Expansion Using Function*(NVL, DECODE, RANK To Union All): NVL, DECODE, RANK 함수를 사용한 조건절을 이용하여 Union All로 변경하라

3.5
TE (Table Expansion): 여러 개의 파티션을 액세스 할 때 파티션 마다 Union All로 분리해서 Index scan을 할지 FTS를 할지 판단하라

3.6 SJC (Set To Join Conversion) : 집합연산을 조인으로 바꾸어라
3.7 CSU (Complex Subquery Unnesting) : 복잡한 서브쿼리를 조인으로 바꾸어라
3.8 CVM( Complex View Merging ) : Distinct나 Group By가 있는 뷰를 해체하라
3.9 JPPD Union View: Union을 사용한 뷰에 조인 조건을 침투시켜라
3.10 JPPD Union All View: Union All을 사용한 뷰에 조인 조건을 침투시켜라
3.11 JPPD Outer Join View: 뷰에 Outer 조인을 사용한 경우 조인 조건을 침투 시켜라
3.12
Multi Level JPPD: 뷰 내부에 또 다른 뷰가 있더라도 메인 쿼리의 조인 조건을 침투 시켜라

3.13
JPPD Extension: Distinct 나 Group By, Semi/Anti-join을 사용한 뷰에 조인 조건을 침투시켜라

3.14 GBP (Group By Placement) : Group By를 먼저 수행하고 Join 하라
3.15 GBPD (Group By Push Down) : Parallel Query 수행 시 Group by를 한번 더 수행하라
3.16
JF(Join Factorization) : Union / Union All 사용시 공통으로 사용하는 테이블을 분리시켜라
3.17
ST ( Star Transformation ): From 절의 Dimension 테이블을 서브쿼리로 변환하고 DSJ 기능을 이용하여 Bitmap 연산을 수행하라
3.18
CBST (Cost Based Star Transformation): Star Transformation 적용시 Cost Based 환경을 이용하라

3.19
MVR(Materialized View Rewrite): Materialized View를 사용하지 않는 SQL을 Materialized View를 사용하는 SQL로 바꾸어라

3.20
JBE (Join Back Elimination) : Bitmap Join Index를 사용할 경우 필요 없는 테이블 액세스를 제거하라

3.C Part 3을 마무리 하며

Part 4 - Cost Based Query Transformation Internal

들어가기
4.1 Search Type의 개념과 종류
4.2 Search Type 분석에 사용될 SQL
4.3 Exhaustive Type 전략
4.4 Iterative Type 전략
4.5 Linear Type 전략
4.6 Two_Pass Type 전략
4.7 Off Option 전략
4.8 On Option 전략
4.9 State Space란 무엇인가
4.10 CA*(Cost Annotation)란 무엇인가
4.11 메모리 관리
4.12 Interleaving: 선 변환 과정이 끝나면 후 변환 과정을 연이어 수행하라
4.13 Juxtaposition: 배타적인 변환을 동시에 고려하여 Cost가 낮은 것을 선택하라
4.14 실무에 적용하기
4.A Part 4를 마무리 하며

부록과 색인
실무에서의 Query Transformation 이슈
미해결 과제
Epilogue
Bibliography
Index

책 속으로

벽을 넘어서자

조인 방법과 조인 순서가 올바르지 못한가?
인덱스를 사용하지 않는가?
힌트를 사용하였지만 의도대로 되지 않는가?
실행계획의 모습이 이상한가?
성능이 저하되는 원인을 찾기 힘든가?
이러한 모든 의문점 뒤엔 트랜스포머라는 비밀의 벽이 있다. 그 벽을 넘어 Logical Optimizer를 정복하는 순간 모든 비밀이 풀릴 것이고 SQL의 형태만 보아도 어떻게 변환될 것인지 알 수 있을 것이다. 그 때가 되면 위에서 언급된 문제들을 해결할 수 있는 능력을 갖추게 됨은 물론이고 SQL을 보는 눈이 달라질 것... 더보기

출판사 서평

집필목적

Logical Optimizer는 성능 향상의 목적으로 SQL을 재작성(변경)합니다. 하지만 옵티마이져가 완벽하지 못하므로 많은 경우에 성능저하를 일으키게 됩니다. 옵티마이져가 SQL을 직접 변경 함으로써 SQL의 성능에 미치는 영향은 지대하지만 전세계적으로 이것을 전반적으로 다룬 서적이 없다는 점과 Logical Optimizer의 한계로 인해 발생하는 성능 문제를 해결하기 위해 본서가 출간되었습니다.

본문의 내용을 익히면 다음과 같은 능력을 가지게 될 것입니다.

이 책을 통하여 얻을 수 있는 것

... 더보기

북로그 리뷰 (0) 쓰러가기

도서 구매 후 리뷰를 작성하시면 통합포인트를 드립니다.
결제 90일 이내 작성 시 300원 / 발송 후 5일 이내 작성시 400원 / 이 상품의 첫 리뷰 작성 시 500원
(포인트는 작성 후 다음 날 적립되며, 도서 발송 전 작성 시에는 발송 후 익일에 적립됩니다.
외서/eBook/음반/DVD/GIFT 및 잡지 상품 제외)
안내
  • 해당도서의 리뷰가 없습니다.

Klover 평점/리뷰 (0)

문장수집 (0) 문장수집 쓰기 나의 독서기록 보기
※구매도서의 문장수집을 기록하면 통합포인트 적립 안내

교환/반품/품절안내

※ 상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)

교환/반품/품절안내
반품/교환방법 마이룸 > 주문관리 > 주문/배송내역 > 주문조회 > 반품/교환신청 ,
[1:1상담>반품/교환/환불] 또는 고객센터 (1544-1900)

※ 오픈마켓, 해외배송주문, 기프트 주문시 [1:1상담>반품/교환/환불]
    또는 고객센터 (1544-1900)
반품/교환가능 기간 변심반품의 경우 수령 후 7일 이내,
상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
반품/교환비용 변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
반품/교환 불가 사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
    (단지 확인을 위한 포장 훼손은 제외)
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
    예) 화장품, 식품, 가전제품(악세서리 포함) 등
  • 복제가 가능한 상품 등의 포장을 훼손한 경우
    예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에
    해당되는 경우
(1) 해외주문도서 : 이용자의 요청에 의한 개인주문상품으로 단순변심 및 착오로 인한 취소/교환/반품 시 ‘해외주문 반품/취소 수수료’ 고객 부담 (해외주문 반품/취소 수수료 : ①양서-판매정가의 12%, ②일서-판매정가의 7%를 적용)
상품 품절 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는
이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은
    소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의
    소비자 보호에 관한 법률에 따라 처리함

이 분야의 베스트

  • 윤인성
    16,200원
  • 길벗알앤디
    27,900원
  • 이남호
    23,310원
  • 길벗R&D
    32,400원
  • 선양미
    18,900원
더보기+

이 분야의 신간

  • 길벗알앤디
    27,900원
  • 다카라지마사
    9,900원
  • 테런스 J. 세즈노스키
    22,500원
  • 이동욱
    19,800원
  • 길벗R&D
    15,300원
더보기+

바로가기

  • 우측 확장형 배너 2
  • 우측 확장형 배너 2

최근 본 상품