본문 바로가기
ORACLE

SQL의 파싱

by 더킹123 2022. 11. 7.
728x90

SQL을 수행하면 library cache 래치를 획득하고 수행하려는 SQL 실행정보(LCO)가 있는지 검색한다.

SQL이 존재하면 LCO생성을 거치지 않고 바로 실행할 수 있는데 이것을 소프트 파싱이라고 한다. 

그런데 library cache에 존재하지 않는 새로운 SQL이라면 LCO를 만들어 실행 정보를 저장해야한다.

shared pool 래치를 획득하여 저장할 공간을 확보한다. 공간이 마련되면, SQL 의 LCO가 생성되고 여기에 SQL문과 실행계획 등의 정보가 저장된다 이렇게 만들어진 LCO를 통해 SQL이 수행된다.

이와 같이 SQL문이 library cache 내에 존재하지 않아 LCO를 만들고 여기에 실행정보를 저장하는 과정을 하드 파싱 이라고 한다.

하드파싱과 소프트파싱은  library cache  내의 SQL존재유무에 따라서 구별된다.

728x90

'ORACLE' 카테고리의 다른 글

trace file 덤프방법  (0) 2022.11.07
Transaction 작업순서  (0) 2022.11.07
block cleanout  (1) 2022.11.07
OWI란?  (0) 2022.11.07
DBWR, LGWR 가 내려쓰는경우  (0) 2022.11.07

댓글