조시형의 ‘친절한 SQL 튜닝’
데이터베이스와 오디오 - DB 튜닝 전문가되는 공부법
기고자 조시형
- 現) 디비안 대표이사 / 前) 엔코아, 비투엔
- 제1회 우수DB人상 수상 / 국가공인 SQLP, DAP 자격검정 전문위원
- 저서 : 친절한 SQL 튜닝, 오라클 성능 고도화 원리와 해법, 비용기반의 오라클
원리(공역)
‘친절한 SQL 튜닝’, ‘오라클 성능 고도화’ 저자로 유명한 조시형은 엔코아, 비투엔
을 거쳐 지금은 디비안 대표이사를 맡고 있다. 제1회 우수DB人상을 수상하기도 한 그는 20년 가까이 컨설팅을 수행하면서 터득한 성능관리 방법론을 솔루션화하는 일에 관심이 많고, DB 전문서적을 꾸준히 집필하면서 교육과 후배 양성에도 더 매진하려고 노력 중이다. 요즘은 인터넷 카페를 통한 지식공유 활동에도 열심인데, 그가 운영하는 ‘디비안 포럼(www.dbian.net)’을 방문하면 DB 관련 고급 기술자료, SQLP/DAP 자격증에 관한 정보를 습득할 수 있고, 직접 저술한 책에 대한 Q&A 서비스도 받을 수 있다.
데이터베이스 튜닝 전문가가 되고 싶다며 공부 방법을 질문하는 분이 많은데, 이 질문에 대답하기 위해 데이터베이스 튜닝이 무엇인지부터 정의해 보자.
데이터베이스 튜닝이란
‘데이터베이스 튜닝’이라고 할 때의 튜닝은 일반적으로 ‘성능(Performance) 튜닝’을 말한다. 그리고 데이터베이스는 데이터 파일, 리두로그 파일, 컨트롤 파일 등 파일들의 집합을 의미하는데, 우리가 튜닝하고자 하는 대상은 파일이 아니다. 파일에 데이터를 읽고 쓰는 소프트웨어 애플리케이션, 즉 DBMS가 대상이다. 따라서 엄밀히 말하면 ‘데이터베이스 성능 튜닝’보다는 ‘DBMS 성능 튜닝’이라는 표현이 더 정확하다. 용어적 혼란을 막기 위해 우리가 일반적으로 말하는 ‘데이터베이스 튜닝’은 정확히 말해 ‘DBMS 성능 튜닝’을 의미한다고 가정하고 설명을 진행하겠다.
데이터베이스(정확히 말하면, DBMS)는 데이터를 읽고 쓰는 소프트웨어 엔진이다. 데이터를 읽고 쓸 때 SQL을 이용한다. 따라서 SQL이 병목이나 지연 없이 빠르고 안정적으로 수행되도록 조치하는 모든 활동을 데이터베이스 튜닝이라고 정의할 수 있다.
데이터베이스 튜닝에서 다루는 세부요소가 아주 많지만, 가장 중요한 세 가지 주제로 묶어서 요약하면 아래와 같다.

① SQL 튜닝 : I/O 효율화, DB Call 최소화, SQL 파싱 최소화 등
② DB설계 : 논리적 데이터 구조 설계, 물리적 저장 방식 조정 등
③ 인스턴스 튜닝 : Latch/Lock 모니터링 및 해소, 메모리 설정, 프로세스 설정 등
데이터베이스 튜닝 전문가가 되는 공부방법을 설명하기에 앞서 잠시 음악 얘기를 해 보자.
오디오 튜닝 - “천상의 소리를 찾아서”
필자는 ....