ORDERED 힌트하에서 Hash Join 테이블 조인순서 바꾸기 ORDERED 힌트하에서 Hash Join 테이블 조인순서 바꾸기 SQL PLAN을 튜닝하다보면, 조인순서를 조정할 필요가 있다. 일반적으로는 주어진 조인조건에 따라 오라클 옵티마이저에 의해 조인순서가 정해진다. 또는 FROM절의 테이블순서를 조정한후 ORDERED 힌트를 쓰거나 LEADING 힌트를 써서 최초로 드.. 정보과학 IT 2012.12.03
고급 SQL 튜닝 - 파티션 활용 고급 SQL 튜닝 - 파티션 활용 1. 파티션 개요 파티셔닝(Partitioning)은 테이블 또는 인덱스 데이터를 파티션(Partition) 단위로 나누어 저장하는 것을 말한다. 테이블을 파티셔닝하면 파티션 키에 따라 물리적으로는 별도의 세그먼트에 데이터를 저장하며, 인덱스도 마찬가지다. 파티셔닝이 필요.. 정보과학 IT 2012.09.11
INDEX & JOIN - 고급 조인 기법 INDEX & JOIN - 고급 조인 기법 1. 인라인 뷰 활용 대부분 조인은 1:M 관계인 테이블끼리의 조인이다. 조인 결과는 M쪽 집합과 같은 단위가 되는데, 이를 다시 1쪽 집합 단위로 그룹핑해야 한다면 M쪽 집합을 먼저 1쪽 단위로 그룹핑하고 나서 조인하는 것이 유리하다. 조인 횟수를 줄여주기 때문.. 정보과학 IT 2012.09.05
INDEX & JOIN - 조인 기본 원리 INDEX & JOIN - 조인 기본 원리 조인에 대한 기본 개념은 2권에서 이미 설명하였다. 본 절에서는 DBMS가 내부적으로 조인을 어떻게 수행하는지 원리를 설명하고, 그런 원리를 바탕으로 어떻게 쿼리 수행 성능을 향상시킬지 활용점을 밝히는 데 집중할 것이다. 1. Nested Loop Join 가. 기본 메커니즘 .. 정보과학 IT 2012.09.05
INDEX & JOIN - 인덱스 튜닝 INDEX & JOIN - 인덱스 튜닝 1절 인덱스 구조와 탐색 원리에서 설명했듯이, B*Tree 인덱스를 정상적으로 사용하려면 범위 스캔 시작지점을 찾기 위해 루트 블록부터 리프 블록까지의 수직적 탐색 과정을 거쳐야 한다. 만약 인덱스 선두 칼럼이 조건절에 사용되지 않으면 범위 스캔을 위한 시작.. 정보과학 IT 2012.09.05
INDEX & JOIN - 인덱스 기본 원리 INDEX & JOIN - 인덱스 기본 원리 지금 당장 책장에서 아무 책이나 골라 맨 뒤쪽에 있는 인덱스(색인) 부분을 펼쳐보기 바란다. 가나다순(혹은 ABC 순)으로 정렬되었고, 키워드가 같을 땐 페이지 순으로 정렬된 것을 볼 수 있을 것이다. 인덱스를 이용하면 원하는 키워드를 포함한 페이지를 빠.. 정보과학 IT 2012.09.05
SQL 작성법 25가지 (튜닝 기초) SQL 작성법 25가지 (튜닝 기초) 1.데이터와 비즈니스 어플리케이션을 잘 알아야 한다. 동일한 정보는 다른 비즈니스 데이터 원천으로부터 검색될 수 있다. 이러한 원천에 익숙해야 한다. 당신은 당신의 데이터베이스 안의 데이터의 크기와 분포를 반드시 알아야 한다. 또한 SQL을 작성하기 .. 정보과학 IT 2012.08.21
[Oracle] SQL튜닝 7가지 점검 항목 SQL튜닝 7가지 점검 항목 SQL 튜닝책을 세 권정도 읽은 신입사원이 SQL 튜닝방법론을 요청하였다. 이유는 튜닝책에 방법론이 없다는 것이다. 튜닝 방법론이란 “SQL을 튜닝 해달라고 요청 받았을 때 내가 무엇 무엇을 해야 하나?” 이다. 즉 SQL 튜닝시의 To-Do 리스트(체크리스트)를 요구한 것.. 정보과학 IT 2012.07.23
Optimizer의 원리와 Tuning (하) Optimizer의 원리와 Tuning (하) Oracle Optimizer의 원리 이해 및 SQL & 애플리케이션의 튜닝(하): 숲을 보는 튜닝 튜닝에는 정답이 없다. 즉 튜닝은 시스템의 특징이나 업무의 특징들을 정확히 이해하고, 그 상황에 맞게 문제의 원인을 확인하고, 문제의 원인을 해결하기 위한 최적의 튜닝 방법을 찾.. 정보과학 IT 2012.07.22
Optimizer의 원리와 Tuning (상) Optimizer의 원리와 Tuning (상) Oracle Optimizer의 원리 이해 및 SQL & 애플리케이션의 튜닝(상): 옵티마이저의 질의 처리 단계에 대한 이해 오라클에서 사용하는 옵티마이저(Optimizer)는 크게 RBO(Rule Base Optimizer)와 CBO(Cost Base Optimizer) 2개로 구분된다. 1992년 Oracle 7에서 처음 CBO가 지원된 이래 새로운 .. 정보과학 IT 2012.07.22