해결된 질문
작성
·
356
·
수정됨
1
안녕하세요.SQL 실행 계획의 이해와 Hard Parsing, Soft Parsing의 차이 강의에서 궁금한 점이 있어 질문글을 남깁니다!
12:00 분 경부터 설명해주시는 하드 파싱 부분에서, 하드 파싱이 Library Cache의 Latch를 자주 사용하는것이 문제가 된다 설명해주셨는데요,
그럼 하드파싱시에 SQL 파싱, 비용계산, 소스코드 생성과 같은 일련의 과정보다 이런 생성된 정보들을 Library Cache에 올리는것이 훨씬 더 큰 자원을 필요로 하는것일까요?
그냥 추상적으로만 알고있었을때는 옵티마이저가 비용을 계산하는 과정이 제일 자원을 많이 잡아먹는 문제일거라고 생각했어서 …ㅎㅎ
그리고 latch는 ms 수준으로만 잠긴다고 알고있어, 큰 문제를 유발하지 않을것같은 생각이 막연하게 들어 질문을 드립니다.
모르는 내용 많이 배워가고 있습니다 !! 감사합니다~
답변 2
1
안녕하십니까,
알고 계신대로 하드파싱시에 SQL 파싱, 비용계산, 소스코드 생성과 같은 일련의 과정이 매우 큰 자원을 소모하는데, 이러한 일련의 과정에서 Library cache latch 관련 wait event가 발생합니다.
단순히 library cache에 올릴 때 해당 wait event가 발생하는게 아니라 하드 파싱에 수반되는 일련의 과정들을 수행하면서 library cache memory에 latch를 걸어야 하는 상황이 자주 발생하기 때문에 문제 인것입니다.
감사합니다.
0