• 베스트
  • 소득공제
  • 무료배송

Oracle SQL 실전튜닝 나침반 - 성능 최적화의 길을 안내하다

  • 채윤수
  • 오픈메이드
  • 2025년 07월 15일
사용자 평점
0리뷰 0개
10%43,200원48,000원
적립금
2,400원 (5% 적립)
추가 적립 안내
  • 5만원 이상 결제 시 (*배송비 제외)

    정가제FREE(상품/사은품) 금액이
    2,000원 이상이면 2,000원 추가적립

  • 10만원 이상 결제 시 (*배송비 제외)

    정가제FREE(상품/사은품) 금액이
    2,000원 이상이면 2,000원 추가적립

    정가제FREE(상품/사은품) 금액이
    5,000원 이상이면 5,000원 추가적립

회원가입 시 적립금 즉시 지급!

배송비
무료 (해외배송의 경우 지역에 따라 상이)

배송안내

배송비 안내
  • 1만원 이상 주문 시 무료배송 입니다.
  • 주문하신 상품을 해외로 배송 하시는 경우에는 별도의 항공료 가 부과됩니다
서울특별시 강남구 강남대로 542(논현동, 영풍빌딩)
주문 수량 변경시 안내

[주문/배송] 주문 수량 변경 시 안내

주문 수량 변경 시,배송일정이 변경될 수 있으니 반드시 확인해 주시기 바랍니다.
(고객센터 1544-9020)

택배보다 빠른, 나우드림
상품 규격 정보
상품상세정보
ISBNISBN-13 : 9788996384069
쪽수872쪽
크기기타 규격
제품구성단행본
이 책이 속한 분야
  • 컴퓨터/IT > 시스템공학
관련 이벤트

AI추천 이유

책 소개

SQL 튜닝, 데이터 성능 최적화의 핵심

현대의 데이터 환경에서는 속도와 효율성이 비즈니스 성과를 결정하는 중요한 요소입니다. 대용량 데이터를 다루는 애플리케이션이 늘어나고, 데이터 웨어하우스 및 클라우드 환경이 확대되면서 SQL 튜닝은 단순한 성능 최적화가 아니라 비즈니스의 경쟁력을 좌우하는 핵심 기술이 되었습니다.

약 10년 전에 “Oracle 실전 튜닝 기본 해법”이라는 책을 쓴 이후 오래간만에 다시 SQL 튜닝 책을 쓰게 되었습니다. “Oracle 실전 튜닝 기본 해법”은 총 12단원으로 구성을 했었습니다. 이번 책은 총 19단원으로 확장했으며 최근 가장 많이 쓰이고 있는 버전인 19c를 기준으로 작성했습니다.

SQL 개발을 몇 년씩 해왔더라도 SQL 튜닝이라는 주제 자체가 접근하기에는 쉽지 않은 것은 사실입니다. 실무에서 튜닝한 결과를 이용해서 개발팀 대상으로 SQL 튜닝 교육과 튜닝 사례 교육도 진행하면서 어떤 목차로 어떤 주제로 정리를 해야 접근하기가 쉬울지 생각을 많이 했습니다. SQL 초보자가 튜닝에 접근하기는 쉽지 않겠지만 SQL 스터디 및 개발 업무를 2~3년 이상 해온 사람이라면 이 책을 통해 어렵지 않게 접근할 수 있을 것이라 생각합니다.

 

 

AI 시대에도 튜닝 전문가의 역할은 중요하다

AI가 자동으로 실행계획을 분석하거나 튜닝을 시도해서 튜닝 결과를 추천할 수 있지만 모든 상황을 정확히 해석하진 못합니다. 복잡한 비즈니스 로직이나 데이터 모델은 전문가의 경험과 해석이 필수입니다. AI 기반 튜닝 도구(예 : Oracle SQL Tuning Advisor)는 성능을 개선하기도 하지만, 잘못 적용하면 성능이 악화될 가능성도 있기 때문에 전문가의 사전 검토와 사후 검증이 필요합니다. 복잡한 JOIN 및 분석 함수 등이 포함된 SQL은 자동 튜닝이 어려우며 고난이도 SQL은 여전히 전문가가 직접 다뤄야 합니다.

요약하자면 AI는 튜닝 전문가의 도구이지 대체자가 아니며 AI의 추천을 해석하고 책임질 사람은 여전히 튜닝 전문가입니다.

개발자와 튜닝 전문가는 AI가 추천한 튜닝 기법을 검증하고, 비즈니스 로직에 맞는 최적의 SQL을 설계해야 합니다. AI는 SQL 튜닝을 자동화할 수 있어도, 데이터 파티셔닝, INDEX 설계, OLTP 및 OLAP 환경별 최적화 전략을 자동으로 결정할 수 없습니다. AI 시대에도 튜닝 전문가가 데이터 모델을 이해하고, 최적의 SQL을 설계하는 역량이 필요합니다. SQL 튜닝의 원리를 이해하고, 자동화 도구와 협업하는 전문가로 성장해야 합니다.

목차

[목 차]
  

PART 01. Oracle 기본 아키텍쳐

section 01 Oracle Database Architecture

section 02 Memory Architecture

section 03 Process Architecture

section 04 Oracle Storage Structures

 

PART 02. Oracle 성능 최적화를 위한 기본 원리

section 01 Oracle SQL 성능 최적화 개요

section 02 DB 튜닝 핵심 원리 개요

section 03 Library Cache 효율화 : SQL 파싱 부하 해소

section 04 Database CALL 최소화

section 05 I/O 효율화

 

PART 03. 성능 튜닝 도구 및 실행 계획 분석

section 01 DBMS_XPLAN.DISPLAY_CURSOR

section 02 DBMS_XPLAN.DISPLAY_AWR

section 03 SQL_MONITOR

section 04 실행 계획 순서 기본 분석법

section 05 실행 계획 순서 예외 사항 분석법

 

PART 04. INDEX ACCESS PATTERN

section 01 B-Tree INDEX 구조

section 02 INDEX RANGE SCAN

section 03 INDEX RANGE SCAN DESCENDING

section 04 INDEX UNIQUE SCAN

section 05 INDEX RANGE SCAN(MIN/MAX)

section 06 ROWID ACCESS

section 07 INDEX 컬럼 가공

section 08 CLUSTERING FACTOR

section 09 FULL TABLE SCAN

section 10 INDEX ACCESS 조건, FILTER 조건, 선택도

section 11 INDEX SKIP SCAN

section 12 INDEX INLIST INTERATOR

section 13 INDEX FULL SCAN

section 14 INDEX FULL SCAN(MIN/MAX)

section 15 INDEX FAST FULL SCAN

section 16 INDEX COMBINE

section 17 INDEX JOIN

section 18 INDEX COMBINE과 INDEX JOIN의 차이점 비교

section 19 INDEX FILTERING 효과

 

PART 05. INDEX 설계 전략

section 01 선택도와 카디널리티

section 02 INDEX 컬럼 입력, 삭제, 갱신

section 03 INDEX 선정 기준

section 04 테이블 유형별 INDEX 설계 기준

section 05 결합 컬럼 INDEX 특징 및 컬럼 순서 결정 기준

section 06 INDEX 선정 절차

section 07 INDEX 설계 예제

 

PART 06. JOIN

section 01 NESTED LOOP JOIN

section 02 HASH JOIN

section 03 SORT MERGE JOIN

section 04 JPPD(Join Predicate Push Down)

section 05 JOIN 순서가 성능에 미치는 영향

 

PART 07. 서브쿼리

section 01 FILTER 서브쿼리

section 02 EARLIER FILTER 서브 쿼리

section 03 NL SEMI / ANTI JOIN

section 04 상관관계 서브쿼리(FILTER, NL SEMI JOIN) 활용

section 05 HASH SEMI / ANTI JOIN

section 06 SORT MERGE SEMI / ANTI JOIN

section 07 스칼라 서브쿼리

section 08 비 상관관계 서브쿼리

 

PART 08. 실행 계획 분리

section 01 CONCATNATION을 이용한 실행 계획 분리

section 02 UNION ALL을 이용한 실행 계획 분리

 

PART 09. 페이징 처리

section 01 부분 범위 처리, 전체 범위 처리

section 02 표준 PAGENATION 사용 방법

section 03 표준 PAGENATION 사용 - 최적의 INDEX 존재

section 04 표준 PAGENATION 사용 - 최적의 INDEX 없음

section 05 표준 PAGENATION 사용 - 처리 순서

section 06 PAGING 처리 응용

section 07 웹 게시판 형태에서 PAGING 처리

 

PART 10. PGA 튜닝

section 01 SORT ORDER BY

section 02 SORT ORDER BY & SORT ORDER BY STEOPKEY (STOPKEY)

section 03 SORT GROUP BY & HASH GROUP BY

section 04 SORT UNIQUE & HASH UNIQUE

section 05 HASH JOIN, HASH SEMI JOIN & HASH ANTI JOIN

section 06 SORT MERGE JOIN, MERGE SEMI JOIN & MERGE ANTI JOIN

 

PART 11. 분석 함수와 실행 계획

section 01 WINDOW SORT

section 02 WINDOW SORT PUSHED RANK

section 03 WINDOW NOSORT

section 04 WINDOW NOSORT STOPKEY

section 05 WINDOW BUFFER

section 06 분석 함수 실행 계획 심화

 

PART 12. 동일 데이터 반복 ACCESS 튜닝

section 01 서브쿼리 OR 인라인뷰를 통한 반복 ACCESS - 분석 함수 활용

section 02 UNION ALL 반복 ACCESS - SQL 통합

section 03 UNION ALL 반복 ACCESS - 카테시안 JOIN

section 04 UNION ALL 반복 ACCESS - 소계 처리 함수의 활용

section 05 UNION ALL 반복 ACCESS - WITH 문의 활용

section 06 UPDATE 문 서브쿼리 통한 반복 ACCESS - MERGE문 활용

section 07 MERGE 대상 테이블 반복 ACCESS

 

PART 13. 기타 응용 튜닝

section 01 여러 행 → 한 개의 행, 열로 묶기

section 02 한 개의 행, 열로 묶인 데이터 → 여러 행으로 분리

section 03 행(ROW)간의 누적 곱

section 04 카테시안 JOIN 응용 - 일, 주, 월 현황

section 05 INDEX JOIN 응용

section 06 OUTLINE 정보를 이용한 튜닝

 

PART 14. 옵티마이저

section 01 옵티마이저란?

section 02 10053 Trace

section 03 Heuristic Query Transformation

 

PART 15. Oracle 트랜잭션과 Redo Log 튜닝

section 01 Transaction

section 02 Redo & Undo

section 03 데이터 변경량과 Redo & Undo

section 04 튜닝 실무 사례

 

PART 16. 파티셔닝

section 01 개요

section 02 기본 개념

section 03 파티셔닝 유형

section 04 파티션 KEY 전략

section 05 파티셔닝 테이블의 INDEX

section 06 파티션 관리

section 07 파티션 Pruning

 

PART 17. Oracle Exadata Basic

section 01 Exadata 개요

section 02 오프로딩

section 03 STORAGE INDEX

section 04 HCC (Hybrid Columner Compression)

section 05 SMART FLASH CACHE

section 06 병렬처리

section 07 Exadata에서 개발 시 고려사항

 

PART 18. Oracle 성능 분석 기본 방법론

section 01 성능 분석 방법론 개요

section 02 핵심 성능 데이터 이해

section 03 성능 분석 유틸리티

section 04 기본적 성능 분석

 

PART 19. 튜닝 실무 사례

section 01 관련단원 - 4. INDEX ACCESS 패턴

section 02 관련단원 - 4. INDEX ACCESS 패턴

section 03 관련단원 - 6. JOIN

section 04 관련단원 - 6. JOIN(JPPD)

section 05 관련단원 - 7. 서브쿼리

section 06 관련단원 - 6. JOIN, 7. 서브쿼리, 12. 동일 데이터 반복 ACCESS 튜닝 section 07 관련단원 - 8. 실행 계획 분리

section 08 관련단원 - 6. JOIN, 8. 실행 계획 분리

section 09 관련단원 - 7. 서브쿼리, 10. PGA튜닝

section 10 관련단원 - 6. JOIN, 7. 서브쿼리, 10. PGA 튜닝

section 11 관련단원 - 12. 동일 데이터 반복 ACCESS 튜닝

section 12 관련단원 - 5. INDEX ACCESS 패턴, 9. 페이징 처리

section 13 관련단원 - 9. 페이징 처리, 7. 서브쿼리

section 14 관련단원 - 6. JOIN

section 15 관련단원 - 6. JOIN(JPPD)

section 16 관련단원 - 7. 서브쿼리

출판사 서평

이 책의 구성 및 특징

이 책은 Oracle 19c를 기준으로 SQL 성능 최적화에 필수적인 개념과 실전 튜닝 기법을 다룹니다.

수많은 SQL을 튜닝하다 보면 가장 많이 발생하는 성능 저하의 80%는 패턴이 한정되어 있습니다. 이 책은 실무에서 가장 많이 발생하는 성능 저하 패턴을 80% 해결하는 방법을 중심으로 정리하면서, 동시에 고급 튜닝 기법도 함께 소개하고 있습니다.

 

● SQL 튜닝의 기본 원리

Oracle 기본 아키텍처 (1장)

SQL 성능 최적화를 위한 원리 및 튜닝 도구 (2~3장)

SQL이 실행되는 방식과 성능 저하의 주요 원인을 파악하는 것이 튜닝의 첫걸음입니다. 이 장에서는 SQL 성능 최적화를 위한 기본 원리를 살펴보고 실행 계획을 분석하고 성능을 측정하는 다양한 튜닝 도구(DBMS_XPLAN_DISPLAY_CURSOR, SQL 모니터링 Report 등)를 다룹니다.

 

● SQL 실행 최적화 전략

INDEX (4~5장)

JOIN (6장)

서브쿼리 및 실행 계획 분리 (7~9장)

SQL 튜닝에서 가장 중요한 요소 중 하나는 INDEX 활용 방식입니다. INDEX를 어떻게 설계하고, JOIN 방식을 최적화하는지에 따라 성능 차이가 크며, 이를 최적화하는 전략을 다룹니다. 또한, 서브쿼리, 실행 계획 분리, 페이징 처리 최적화 기법을 상세히 설명하여 SQL 성능을 개선하는 방법을 제공합니다.

 

● 기타 SQL 튜닝 기법

PGA 튜닝 및 실행 계획 분석 (10~11장)

데이터 반복 ACCESS 최적화 (12장)

기타 응용 튜닝 및 옵티마이저 이해 (13~14장)

SQL 실행 중 불필요한 메모리 사용을 줄이고, 동일 데이터 반복 접근을 최소화하는 전략을 소개합니다. 그리고 옵티마이저의 기본적인 원리와 응용 튜닝에 대한 부분도 함께 다룹니다.

 

●대용량 데이터 환경에서의 튜닝 및 실무 사례

Oracle 트랜잭션 및 Redo Log 튜닝 (15장)

파티셔닝 및 Exadata Basic (16~17장)

Oracle 성능 분석 및 실무 사례 (18~19장)

대용량 데이터 환경에서 파티셔닝은 필수적입니다. 그리고 대용량 데이터 환경에서 엑사데이터 활용이 증가하고 있습니다. 이와 관련해서 파티셔닝과 Oracle Exadata 활용에 대한 부분을 다루었습니다.

그리고 SQL 튜닝 전문가는 SQL 튜닝 업무만 담당하지 않습니다. Database에 성능 문제가 발생하면 Database 전반에 걸친 성능 문제의 원인을 파악하고 분석하는 역할을 수행합니다. 이에 따라서 Oracle 성능 분석 기본 방법론에 대해서도 다루었습니다.

마지막으로, 실무 사례를 통해 이론이 실제 업무에서 어떻게 적용되는지를 이해할 수 있도록 구성하였습니다.

 

 

SQL 튜닝의 길잡이, 나침반이 되다

AI 시대가 되어 SQL 튜닝을 돕지만 튜닝 전문가의 역할은 계속 필요합니다. Oracle도 최근 버전인 23에서는 23ai로 출시를 했지만 튜닝의 본질은 변하지 않습니다. 이 책이 여러분의 SQL 성능 최적화 여정에서 확실한 나침반

저자 소개
저자 : 채윤수
도서리뷰

이 책을 읽고 어떤 느낌을 받으셨나요?
리뷰를 남기고 다른 독자들과 함께 공유해보세요.

안내 열기구매(배송/수령완료) 후 리뷰를 작성하시면 적립금 300원을 드려요!

등록된 리뷰가 없습니다

첫번째 리뷰어가 되어주세요

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

매장에서 사용할 수 있는 바코드가 있어요!