오라클

Database

세션 커서, 애플리케이션 커서에 대해

공유 커서 SQL을 하드파싱한 결과를 저장하고 있는 오라클 객체이며 SGA에 저장된다. 공유 커서는 여러 세션 간에 공유될 수 있으며 단지 데이터를 저장하고 있을 뿐이다. 실제 SQL 실행을 위해선 PGA에 적재해야한다. 만약 라이브러리 캐시에 쿼리에 대한 공유 커서 존재 시 하드 파싱이 생략된다. 세션 커서 세션에서 쿼리를 실행하기 위해 공유 커서로부터 값을 읽어들인 값과 그 밖에 세션에 필요한 각종 상태 값을 저장하고 있는 오라클 객체이다. PGA에 존재하므로 다른 세션과 공유할 수 없으며 하나의 공유 커서에 여러 개의 세션 커서가 연결될 수 있고 서버나 세션 파라미터 설정 시 세션 커서를 사용하고 난 뒤에도 메모리에 캐싱해둘 수 있다. 만약 세션 커서가 캐싱되어 있다면 라이브러리 캐시에서 공유 커서..

Database

Active Session History(ASH)

배경 실시간 모니터링을 통해 문제를 빠르게 해결하려면 세션 레벨 성능 분석이 필요한데, 오라클 9i까지 제공하던 세션 레벨 동적 뷰만으로는 한계가 많았다. 물론 SQL 트레이스를 통해 가장 상세한 세션 레벨 분석이 가능하지만 다음과 같은 어려움이 있었다. 시스템에 주는 부하가 큼. 파일 단위로 수집되기에 통계적 접근 어려움. 분석 완료 까지 소요되는 시간 큼. 수동으로 활성화해야함. (⇒ 때문에 이미 상황이 끝나고 난 뒤에는 확인 불가) 도입 그렇기에 오라클 10g부터는 ASH 기능을 도입하여, 현재 접속해서 활동중인 Active Session 정보를 1초에 한 번씩 샘플링해서 ASH 버퍼에 저장한다. SGA Shared Pool에서 CPU 당 2mb를 할당받아 세션 정보를 기록하며, 1시간 혹은 버퍼의..

xlwdn98767
'오라클' 태그의 글 목록