친절한 SQL 튜닝

1.2.1 소프트 파싱 vs. 하드 파싱내부 프로시저를 캐싱해두는 공간을 라이브러리 캐시 라고 한다.서버 프로세스와 백그라운드 프로세스가 공통으로 액세스하는 데이터와 제어 구조를 캐싱하는 공간을 SGA 라고 하는데 라이브러리 캐시는 SGA 의 구성요소이다.SQL 을 파싱한 후 해당 SQL 이 캐시에 존재하는지 확인하는데,캐시에서 찾으면: 바로 실행단계로 넘어간다, 이를 소프트 파싱 이라고 함캐시에서 못찾으면: 최적화 및 로우 생성 단계까지 모두 거치는 것을 하드 파싱 이라고 한다.SQL 최적화 과정을 hard 라고 표현하는 이유는 최적화에 많은 단계가 있고, 고려해야 할 부분이 많아서이다.따라서, 라이브러리 캐시가 존재한다.1.2.2 바인드 변수의 중요성SQL 은 이름이 없다SQL 이름이 없다, SQL ..
1.1.1 구조적, 집합적, 선언적 질의 언어SQL은 "Structured Query Language", 말그대로 구조적 질의 언어이다.SQL 은 구조적이고, 집합적이고, 선언적인 질의 언어이다. 원하는 결과집합을 구조적 집합적으로 선언하지만, 그 집합을 만들어 내는 과정은 절차적일 수 밖에 없다즉, 그 과정을 대신해주는 프로시저가 필요한데, 그게 바로 SQL 옵티마이저이다.DBMS 내부에서 프로시저를 작성하고 컴파일 해서 실행 가능한 상태로 만드는 것을 SQL 최적화 이라고도 한다.1.1.2 SQL 최적화SQL 을 실행하기 전 최적화 과정은 아래와 같다.SQL 파싱 : SQL 파서가 파싱을 진행한다.SQL 문을 분석해서 파싱트리 생성, 문법이나 의미적으로 오류 있는 지 확인한다.SQL 최적화 : 옵티마..
개발깎새
'친절한 SQL 튜닝' 카테고리의 글 목록