Search

책 소개

책 소개: SQL 튜너의 성능 연구 노트 + 모든 DBMS에 통하는 SQL 튜닝의 본질
SQL 성능 문제는 ‘요령’이 아니라 ‘원리’ 싸움입니다.
이 책은 당장 써먹을 수 있는 단편적인 팁 모음이 아닙니다. 만약 SQL 성능 문제에 대한 즉각적인 해법만을 찾는다면 이 책은 적합하지 않습니다.
이 책은 SQL 튜닝의 기본 원리를 심도 있게 다룹니다. 원리를 중심에 두고, 그 원리가 실제로 어떻게 작동하는지 예제와 실행계획, 충실한 설명과 그림을 통해 하나씩 검증하듯 정리했습니다. 원리를 정확히 이해하고 경험을 쌓아가면, 실무에서 어떤 형태의 성능 문제를 만나더라도 스스로 원인을 찾고 해법을 도출할 수 있습니다.
또한 이 책에서 다루는 기본 원리는 PostgreSQL에만 국한되지 않습니다. DBMS가 달라져도 성능을 좌우하는 핵심 메커니즘은 본질적으로 유사하므로, 이 책에서 익힌 사고 방식과 접근법은 다른 환경에서도 그대로 적용할 수 있습니다.

목차

누구를 위한 책일까요?
백엔드 개발자/서버 개발자: API가 느려질 때 실행계획으로 원인을 찾고, 인덱스·조인·SQL을 실전적으로 손보고 싶은 분
데이터 엔지니어/분석 엔지니어: 배치·ETL·대용량 집계/조인이 느릴 때, “왜” 느린지 재현/검증하며 최적화하고 싶은 분
DBA/DB 운영 담당자: 락·트랜잭션·VACUUM·모니터링까지 포함해 운영 관점에서 성능을 안정화하고 싶은 분
SQL은 작성 가능하지만 성능 튜닝은 체계가 없는 분: 실행계획을 읽고, 인덱스/조인/정렬 같은 병목 포인트를 “패턴”으로 정리하고 싶은 분
어느 정도 수준인가요? 중급 입문 → 중급 심화(일부 고급 주제 포함)
출발선(필수 전제)
SQL 문법(SELECT/WHERE/GROUP BY/JOIN) 기본 사용 가능
운영 경험은 깊지 않아도 되지만, ‘서비스/배치에서 느림을 겪어본’ 상태면 흡수가 빠릅니다.
도착점(이 책을 끝냈을 때 기대 수준)
실행계획을 보고 병목이 어디인지 분해해서 말할 수 있음
인덱스 설계와 조인 전략을 상황에 따라 선택할 수 있음
운영 관점(트랜잭션, 락, 모니터링, VACUUM)으로 “지속적으로 느려지는 문제”를 다룰 수 있음
학습 자료: 학습의 효율을 최대한 올려줄 학습 자료와 AI 요약 https://www.planxd.ai.kr/sweet-notes
저자정보 | 유일환 서경대학교에서 컴퓨터공학을 전공하고, 2001년부터 개발자로 커리어를 시작했다. 2005년부터 2017년까지는 중국 삼성전자 판매 법인에서 DA(Data Architecture) 업무를 맡아, 판매·유통·데이터 분석 등 다양한 영역의 데이터베이스를 설계하고 수많은 배치 프로그램과 핵심 SQL을 개발·튜닝했다. 2018년부터는 국내 여러 기업에서 다양한 DBMS의 SQL 튜닝과 데이터 아키텍처 관련 프로젝트를 수행하고 있다. 이전 저서로는 <SQL BOOSTER>와 <평생 필요한 데이터 분석>, <SQL STARTER>가 있으며 대한민국이 데이터 강국이 되기를 바라는 마음으로, 지금도 꾸준히 기술을 전파하고 있다
표지 이야기 | 오보에(Oboe)
오보에(Oboe)는 오케스트라에서 기준음을 잡는 악기다. 연주에 앞서 모든 연주자가 오보에가 길게 내뽑는 라(A, 440Hz) 음에 맞춰 자신의 악기를 튜닝하며, 이 짧은 순간 정해진 기준이 곡 전체의 조화와 완성도를 좌우한다. 겉으로는 눈에 잘 띄지 않지만, 한 번 잡힌 기준음은 연주 내내 모든 파트의 방향을 정해 주는 역할을 한다. SQL 튜닝에도 이런 기준음이 필요하다. 실행계획, 인덱스 구조, 조인 알고리즘 같은 기본 원리가 바로 SQL 튜닝의 기준음이다. 정확한 기준음 위에서 오케스트라가 조화로운 연주를 펼치듯, 튜닝의 기본 원리를 익힌 독자는 실무에서 만나는 다양한 성능 문제에 올바른 해법을 찾아낼 수 있다. 표지의 오보에는 이런 기본 원리를 상징한다.