업무과정에서 오라클 최적화를 위한 튜닝 공부를 시작했다. 현재 개인적으로 진행하는 딥러닝 스터디와는 관련 전혀 없다. 기록으로 남기고자 이렇게 포스팅을 하고자 한다.참조하고 있는 도서는 아래와 같다.친절한 sql 튜닝이 포스팅 시리즈에서는 각 용어들 별로 예제와 자세한
인덱스의 구조와 탐색 원리에 대해서 간략하게 기록해보고자 한다. 인덱스에 대한 명확한 그림을 제시하는 챕터로 다음 챕터에서 소개할 인덱스 튜딩에 기초가 되는 내용들을 기록할 것이다.인덱스 탐색 과정이 수직적 탐색과 수평적 탐색 두단계로 이루어진다는 것이 이번 포스팅의
앞 포스팅에서 언급한 것 처럼, SQL 튜닝은 RANDOM I/O를 최소화 하는 것이다.이를 위한 방법들에 대해서 2번의 포스팅에 나누어 정리해보고자 한다.인덱스는 만능이 아니다.오히려 느려질 수 있다. 이전 포스팅에서 index range scan, index ful
이번 챕터는 인덱스 스캔 과정에 대해서 알아보고, 인덱스 스캔의 효율성을 높이는 방안에 대해서 설명한다. 사전지식으로 카디널리티 에 대해 간단하게 알아보고 넘어가자중복도가 낮으면, 카디널리티가 높다.중복도가 높으면, 카디널리티가 낮다.예를들면 주민번호는 카디널리티가 높
데이터베이스 트랜잭션에 큰 영향을 끼치는 인덱스의 중요성은 아무리 강조해도 지나치지 않다.많은 경험과 고도의 기술력이 요구되는 영역이다.세밀한 인덱스의 원리에 대한 이해와 더불어 많은 경험이 필요로 되는 분야이다.이번 포스트에서는 전략적 설계의 필요성과 방법론에 대해서
앞선 포스팅들에서 인덱스와 관련된 내용들을 정리했다.조인은 테이블간의 관계를 이용해서 우리가 원하는 쿼리를 반환하는 것을 의미한다.일반적으로 카타시안곱을 사용하기 때문에, 대량의 데이터의 경우 문제가 생길 수 있다.이를 해결하기 위해 조인에 관해서 튜닝을 할 줄 알아야
NL 조인은 인덱스 구성에 따라 속도차이가 심하게 나타난다.인덱스를 아무리 완벽하게 구사했더라도, 랜덤 I/O 때문에 대량의 데이터 처리에 불리하고, 버퍼캐시 히트율에 따라 들쭉날쭉한 성능을 보인다.소트 머지 조인과 해시 조인은 조인 과정에서 인덱스를 이용하지 않기 때
앞선 쿼리 튜닝들의 경우 두세 개 테이블을 단순한 형태로 조인하는 예제만 다루었다.실무에서는 복잡한 서브쿼리와 조인하는 형태를 흔히 보게 된다.옵티마이저가 서브쿼리 조인을 어떻게 처리하는 지 이해할 필요가 있고, 이를 통해 튜닝을 진행해야 한다.쿼리 변환이란, 의미상으