SlideShare a Scribd company logo
Oracle Hint, Tuning
Cursor&Oracle Memory
Oracle Hint, Tuning_Cursor&Oracle Memory
1.2 Cursor & Oracle Memory
 커서는 SELECT 또는 DML(Insert/Update/Delete/Merge) 조작시 클라이언트 프로세스에서
참조하는 PGA또는 SGA의 Library Cache내 전용 SQL 영역(Private SQL Area, Context Area)
을 가리키는 포인터 또는 핸들이다.
 Private SQL Area, Context Area에는, SQL문 처리를 위한 모든 정보(처리된 로우 카운드 등)
들을 담고 있는 커서는 SQL 명령으로 리턴되는 하나 또는 그이상의 ROW를 포함하는데 이
를 Active Set이라 하고 Active Set의 처음 로우를 기본적으로 가리키고 있다.
 DML에서 커서 관리는 오라클 서버에서 알아서 하지만 오라클 PL/SQL에서는 SELECT 명령에
대해 커서를 조작하는 몇 가지 방법을 제공한다.
 SQL 커서는 오라클 서버 운영모드가 Dedicate Server 환경이면 PGA, MTS(MultiThreaded
Server) 환경이면 SGA의 Library Cache에 위치한다.
 묵시적 커서는 오라클 서버의 모든 SQL에 대해 자동으로 만들어지는 커서를 말한다.
 명시적 커서는 PL/SQL을 작성하는 개발자가 명시적으로 Declare절에 선언하여 사용하는 커
서이며 다중행을 다룰 때 사용한다.
Oracle Hint, Tuning_Cursor&Oracle Memory
그림 : [Cursor & SGA내부 Library Cache]
Oracle Hint, Tuning_Cursor&Oracle Memory
 DataBase Buffer Cache와 Server Process
데이터베이스 버퍼 캐시는 모든 사용자들이 공유하며 SGA안에 위치하여 Datafile로부터 읽
은 블록의 복사본을 저장하는 곳이다. 두 개의 리스트로 구성되는데 Write List와 Least
Recently Used(LRU) List이다. Write List는 수정되었지만 아직 디스크의 DataFile에 반영되
지 않은 dirty buffers로 구성되며 LRU List는 사용가능한 free buffers, 현재 접근되고 있는
pinned buffers, 아직 Write List로 이동되지 않은 dirty buffers로 구성되어 있다.
그림 : [Cursor & PGA & Redo Log]
Oracle Hint, Tuning_Cursor&Oracle Memory
 SQL구문의 Shared Pool Check
사용자가 SQL 구문을 실행할 때 오라클 서버 프로세스에서 가장 먼저하는 일이 문법체크
(Syntax Check)이며 그 다음 동일한 SQL 구문이 이미 실행되었는지 해시값으로 Shared SQL
Area에서 검사하는 일이다. 동일한 SQL구분이 있다면 이미 만들어진 파싱트리, 실행계획 등을
공유한다.
그림 : [SQL문 실행시의 Shared Pool Check]
Oracle Hint, Tuning_Cursor&Oracle Memory
Oracle Hint, Tuning_Cursor&Oracle Memory
Dedicate Server 방식
서버 프로세스는 클라이언트의 요청을 받아 SQL문들을 처리하는 프로세스인데, 하나의 서버 프
로세스가 하나의 클라이언트 프로세스에 대응되는 구조를 가지는 형태를 Dedicate Server 방식
이라 한다.
Shared Server 방식
오라클 리너스를 사용하는 방식이며 N개의 서버 프로세스에 모든 클라이언트의 요청 처리를 할
당하는 구조이다. 사용자 프로세스의 요청을 디스패처가 받고 이를 요청큐(Request Queue)에 넣
어두면 오라클의 Shared Server Process가 받아서 처리하는 구조다.
DRCP 방식
오라클 서버프로세스를 풀링하는 개념으로 각각의 Dedicate Server가 풀링된다.
(오라클 11g 이후 가능한 방식)
Oracle Hint, Tuning_Cursor&Oracle Memory
PGA(Program Global Area)
 PGA(Program Global Area)는 오라클 서버 프로세스가 시작될 때 생성되며 다른 세션과 공유되
지 않는 영역으로 데이터베이스에 접속하는 사용자에 대응되는 오라클서버 프로세스가 사용하
는 메모리 영역이다. 메모리 힙으로 세션에서 사용되는 변수, 데이터, SQL 등에서 정렬을 위한
작업공간으로 사용되며 이 공간이 부족하여 디스크에서 소트가 일어나면 SQL문은 느려지게 된
다. 서버 프로세스에 할당되는 것이고 SGA에 생성되는 영역은 아니다.
 PGA의 Private SQL Area는 파싱된 SQL문의 정보 또는 SQL처리를 위한 세션 정보(데이터, 변수)
등을 가지는데, Server Process가 SQL, PL/SQL코드를 실행할 때 바인드 변수, 쿼리 실행 상태에
관한 정보 등을 저장하거나 쿼리 실행의 작업 영역(Work Area)으로 사용된다.
 Shared Server 환경에서 UGA(User Global Area)안의 Shared SQL Area(실행계획이 저장되는
SGA내부의 요소)와는 구별된다. Shared Server 환경에서 UGA는 SGA 내부에 생성되며
Dedicate Server 환경에서는 PGA에 생성된다.
 같거나 다른 여러 세션의 Private SQL Area가 SGA 내부의 하나의 실행 계획(Execution Plan)을
참조할 수 있다. 예를 들어 10개의 “SELECT * FROM EMP” 쿼리를 하나의 세션에서 5번, 서로
다른 5개의 세션에서 한 번씩 번 실행한다고 했을 때 이 모든 세션의 Private SQL Area에서 동일
한 SGA내부 Library Cache안의 Shared SQL Area의 실행계획을 참조하고 각 세션의 Private
SQL Area의 변수 및 데이터는 서로 공유되지 않는다.
Oracle Hint, Tuning_Cursor&Oracle Memory
PGA(Program Global Area)
 PGA의 Private SQL Area는 RUN-TIME AREA, PERSISTENT AREA로 나눌 수 있다.
RUN_TIME AREA : 쿼리 실행의 상태정보를 보관하는 곳이며 FULL TABLE 스캔을 하는
경우 각 레코드를 검색하는 트랙과 같은 역할을 한다. 쿼리가 실행될 때
할당되고 종료되면 해제 된다.
PERSISTENT AREA : 바인드 변수를 포함하는 영역인데 바인드 변수 값은 쿼리가 실제 실행
될 때 제공된다. 커서가 닫힐 때 반환되는 영역이다.
 사용자 프로세스가 오라클 서버 프로세스를 호출하면 서버프로세스가 PGA를 할당하고 SQL
Wrok Area를 생성한다. 이러한 공간을 통해 쿼리의 정렬 등의 작업이 이루어지고 SGA와 데이
터를 주고 받으면서 작업을 한다. PGA는 UGA와 Stack Space로 구성되는데 아래와 같은 요소가
있다. (Dedicate Server에서는 User Session Data, Cursor State, Sort Area를 PGA에 저장하며
Shared Server에서는 User Session Data를 SGA에 저장한다.)
USER SESSION DATA : SELECT 한 값을 클라이언트로 전달하기 위한 사용자 프로세스의
정보를 저장하고 그 주소를 저장한다.
CURSOR STATE : 실행하는 SQL문의 파싱정보가 저장된 곳의 주소를 저장
SORT AREA : 정렬을 위한 공간.
STACK SPACE : SQL문장에 사용되는 바인드 변수 저장.
Oracle Hint, Tuning_Cursor&Oracle Memory
UGA(User Global Area)
 사용자 세션과 연계된 메모리 영역으로 세션변수를 위해 할당된 메모리 영역이다.
 세션변수 영역과 OLAP의 데이터 페이지를 저장하기 위한 OLAP POOL을 가진다.
 Shared Server 환경에서 UGA는 SGA 내부 LARGE POOL(LARGE POOL이 없다면 SHARED
POOL)에 생성되며 Dedicate Server 환경에서는 UGA는 PGA에 생성된다.
 Shared Server 환경에서는 각 사용자 세션에서 동일한 SQL문을 실행한다면 SQL의 복사본이
SGA내의 UGA에 저장되며 Dedicate Server 환경에서는 개별 PGA에 저장된다.

More Related Content

PDF
오렌지6.0 교육자료
PDF
MariaDB 마이그레이션 - 네오클로바
PDF
SSD 개념 및 활용_Wh oracle
PDF
All about JDBC Performance Tuning_Wh apm
PDF
NLJ BATCH와 부분범위 처리_Wh oracle
PPTX
No sql database study
PDF
[2015 07-06-윤석준] Oracle 성능 최적화 및 품질 고도화 4
오렌지6.0 교육자료
MariaDB 마이그레이션 - 네오클로바
SSD 개념 및 활용_Wh oracle
All about JDBC Performance Tuning_Wh apm
NLJ BATCH와 부분범위 처리_Wh oracle
No sql database study
[2015 07-06-윤석준] Oracle 성능 최적화 및 품질 고도화 4

Similar to 1.2 cursor&oracle memory (20)

PPTX
오라클 커서(Cursor) 개념 및 오라클 메모리 구조_PL/SQL,오라클커서강좌,SGA, PGA, UGA, Shared Pool, Sha...
DOC
Oracle History #7
PPTX
오라클 DB 아키텍처와 튜닝
PDF
Oracle Query Optimizer 관련 Parameter_OracleParameter
PDF
Fundamentals of Oracle SQL
PPTX
DBMS 아키텍처
PDF
[2015-06-12] Oracle 성능 최적화 및 품질 고도화 1
DOC
OracleHistory1
PDF
Bind Peeking 한계에 따른 Adaptive Cursor Sharing 등장_Wh oracle
PDF
그림으로 공부하는 오라클 구조
PPTX
실무로 배우는 시스템 성능 최적화 Ch6
PDF
배치 프로그램에서 튜닝대상 SQL 추출하기_Wh oracle
DOC
Sql Server 2005 개요
PDF
#1.SQL초보에서 Schema Objects까지(SQL학원/오라클학원/IT실무교육학원/재직자/실업자교육학원추천)
PDF
Database
PDF
Database 튜닝 교육 110124
PDF
SQL PlAN MANAGEMENT 활용_Wh oracle
PDF
SQL Server Access Patterns
PPT
ecdevday8 웹개발자의 약한고리 SQL 뛰어넘기
오라클 커서(Cursor) 개념 및 오라클 메모리 구조_PL/SQL,오라클커서강좌,SGA, PGA, UGA, Shared Pool, Sha...
Oracle History #7
오라클 DB 아키텍처와 튜닝
Oracle Query Optimizer 관련 Parameter_OracleParameter
Fundamentals of Oracle SQL
DBMS 아키텍처
[2015-06-12] Oracle 성능 최적화 및 품질 고도화 1
OracleHistory1
Bind Peeking 한계에 따른 Adaptive Cursor Sharing 등장_Wh oracle
그림으로 공부하는 오라클 구조
실무로 배우는 시스템 성능 최적화 Ch6
배치 프로그램에서 튜닝대상 SQL 추출하기_Wh oracle
Sql Server 2005 개요
#1.SQL초보에서 Schema Objects까지(SQL학원/오라클학원/IT실무교육학원/재직자/실업자교육학원추천)
Database
Database 튜닝 교육 110124
SQL PlAN MANAGEMENT 활용_Wh oracle
SQL Server Access Patterns
ecdevday8 웹개발자의 약한고리 SQL 뛰어넘기
Ad

More from 탑크리에듀(구로디지털단지역3번출구 2분거리) (20)

PDF
자마린.안드로이드 기본 내장레이아웃(Built-In List Item Layouts)
PDF
(스프링프레임워크 강좌)스프링부트개요 및 HelloWorld 따라하기
PDF
자마린 iOS 멀티화면 컨트롤러_네비게이션 컨트롤러, 루트 뷰 컨트롤러
PPTX
[IT교육/IT학원]Develope를 위한 IT실무교육
PPTX
[아이오닉학원]아이오닉 하이브리드 앱 개발 과정(아이오닉2로 동적 모바일 앱 만들기)
PPTX
[뷰제이에스학원]뷰제이에스(Vue.js) 프로그래밍 입문(프로그레시브 자바스크립트 프레임워크)
PPTX
[씨샵학원/씨샵교육]C#, 윈폼, 네트워크, ado.net 실무프로젝트 과정
PPTX
[정보처리기사자격증학원]정보처리기사 취득 양성과정(국비무료 자격증과정)
PPTX
[wpf학원,wpf교육]닷넷, c#기반 wpf 프로그래밍 인터페이스구현 재직자 향상과정
PDF
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...
PDF
[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...
PPTX
[구로자마린학원/자마린강좌/자마린교육]3. xamarin.ios 3.3.5 추가적인 사항
PPTX
3. xamarin.i os 3.3 xamarin.ios helloworld 자세히 살펴보기 3.4.4 view controllers an...
PPTX
5. 서브 쿼리(sub query) 5.1 서브 쿼리(sub query) 개요 5.2 단일행 서브쿼리(single row sub query)
PPTX
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld(단일 뷰) 실습[...
PDF
(닷넷,자마린,아이폰실습)Xamarin.iOS HelloWorld 실습_멀티화면,화면전환_Xamarin교육/Xamarin강좌
PPTX
C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...
PPTX
자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]
PPTX
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld_자마린학원_자마린...
PPTX
3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]
자마린.안드로이드 기본 내장레이아웃(Built-In List Item Layouts)
(스프링프레임워크 강좌)스프링부트개요 및 HelloWorld 따라하기
자마린 iOS 멀티화면 컨트롤러_네비게이션 컨트롤러, 루트 뷰 컨트롤러
[IT교육/IT학원]Develope를 위한 IT실무교육
[아이오닉학원]아이오닉 하이브리드 앱 개발 과정(아이오닉2로 동적 모바일 앱 만들기)
[뷰제이에스학원]뷰제이에스(Vue.js) 프로그래밍 입문(프로그레시브 자바스크립트 프레임워크)
[씨샵학원/씨샵교육]C#, 윈폼, 네트워크, ado.net 실무프로젝트 과정
[정보처리기사자격증학원]정보처리기사 취득 양성과정(국비무료 자격증과정)
[wpf학원,wpf교육]닷넷, c#기반 wpf 프로그래밍 인터페이스구현 재직자 향상과정
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...
[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...
[구로자마린학원/자마린강좌/자마린교육]3. xamarin.ios 3.3.5 추가적인 사항
3. xamarin.i os 3.3 xamarin.ios helloworld 자세히 살펴보기 3.4.4 view controllers an...
5. 서브 쿼리(sub query) 5.1 서브 쿼리(sub query) 개요 5.2 단일행 서브쿼리(single row sub query)
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld(단일 뷰) 실습[...
(닷넷,자마린,아이폰실습)Xamarin.iOS HelloWorld 실습_멀티화면,화면전환_Xamarin교육/Xamarin강좌
C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...
자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld_자마린학원_자마린...
3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]
Ad

1.2 cursor&oracle memory

  • 2. Oracle Hint, Tuning_Cursor&Oracle Memory 1.2 Cursor & Oracle Memory  커서는 SELECT 또는 DML(Insert/Update/Delete/Merge) 조작시 클라이언트 프로세스에서 참조하는 PGA또는 SGA의 Library Cache내 전용 SQL 영역(Private SQL Area, Context Area) 을 가리키는 포인터 또는 핸들이다.  Private SQL Area, Context Area에는, SQL문 처리를 위한 모든 정보(처리된 로우 카운드 등) 들을 담고 있는 커서는 SQL 명령으로 리턴되는 하나 또는 그이상의 ROW를 포함하는데 이 를 Active Set이라 하고 Active Set의 처음 로우를 기본적으로 가리키고 있다.  DML에서 커서 관리는 오라클 서버에서 알아서 하지만 오라클 PL/SQL에서는 SELECT 명령에 대해 커서를 조작하는 몇 가지 방법을 제공한다.  SQL 커서는 오라클 서버 운영모드가 Dedicate Server 환경이면 PGA, MTS(MultiThreaded Server) 환경이면 SGA의 Library Cache에 위치한다.  묵시적 커서는 오라클 서버의 모든 SQL에 대해 자동으로 만들어지는 커서를 말한다.  명시적 커서는 PL/SQL을 작성하는 개발자가 명시적으로 Declare절에 선언하여 사용하는 커 서이며 다중행을 다룰 때 사용한다.
  • 3. Oracle Hint, Tuning_Cursor&Oracle Memory 그림 : [Cursor & SGA내부 Library Cache]
  • 4. Oracle Hint, Tuning_Cursor&Oracle Memory  DataBase Buffer Cache와 Server Process 데이터베이스 버퍼 캐시는 모든 사용자들이 공유하며 SGA안에 위치하여 Datafile로부터 읽 은 블록의 복사본을 저장하는 곳이다. 두 개의 리스트로 구성되는데 Write List와 Least Recently Used(LRU) List이다. Write List는 수정되었지만 아직 디스크의 DataFile에 반영되 지 않은 dirty buffers로 구성되며 LRU List는 사용가능한 free buffers, 현재 접근되고 있는 pinned buffers, 아직 Write List로 이동되지 않은 dirty buffers로 구성되어 있다. 그림 : [Cursor & PGA & Redo Log]
  • 5. Oracle Hint, Tuning_Cursor&Oracle Memory  SQL구문의 Shared Pool Check 사용자가 SQL 구문을 실행할 때 오라클 서버 프로세스에서 가장 먼저하는 일이 문법체크 (Syntax Check)이며 그 다음 동일한 SQL 구문이 이미 실행되었는지 해시값으로 Shared SQL Area에서 검사하는 일이다. 동일한 SQL구분이 있다면 이미 만들어진 파싱트리, 실행계획 등을 공유한다. 그림 : [SQL문 실행시의 Shared Pool Check]
  • 7. Oracle Hint, Tuning_Cursor&Oracle Memory Dedicate Server 방식 서버 프로세스는 클라이언트의 요청을 받아 SQL문들을 처리하는 프로세스인데, 하나의 서버 프 로세스가 하나의 클라이언트 프로세스에 대응되는 구조를 가지는 형태를 Dedicate Server 방식 이라 한다. Shared Server 방식 오라클 리너스를 사용하는 방식이며 N개의 서버 프로세스에 모든 클라이언트의 요청 처리를 할 당하는 구조이다. 사용자 프로세스의 요청을 디스패처가 받고 이를 요청큐(Request Queue)에 넣 어두면 오라클의 Shared Server Process가 받아서 처리하는 구조다. DRCP 방식 오라클 서버프로세스를 풀링하는 개념으로 각각의 Dedicate Server가 풀링된다. (오라클 11g 이후 가능한 방식)
  • 8. Oracle Hint, Tuning_Cursor&Oracle Memory PGA(Program Global Area)  PGA(Program Global Area)는 오라클 서버 프로세스가 시작될 때 생성되며 다른 세션과 공유되 지 않는 영역으로 데이터베이스에 접속하는 사용자에 대응되는 오라클서버 프로세스가 사용하 는 메모리 영역이다. 메모리 힙으로 세션에서 사용되는 변수, 데이터, SQL 등에서 정렬을 위한 작업공간으로 사용되며 이 공간이 부족하여 디스크에서 소트가 일어나면 SQL문은 느려지게 된 다. 서버 프로세스에 할당되는 것이고 SGA에 생성되는 영역은 아니다.  PGA의 Private SQL Area는 파싱된 SQL문의 정보 또는 SQL처리를 위한 세션 정보(데이터, 변수) 등을 가지는데, Server Process가 SQL, PL/SQL코드를 실행할 때 바인드 변수, 쿼리 실행 상태에 관한 정보 등을 저장하거나 쿼리 실행의 작업 영역(Work Area)으로 사용된다.  Shared Server 환경에서 UGA(User Global Area)안의 Shared SQL Area(실행계획이 저장되는 SGA내부의 요소)와는 구별된다. Shared Server 환경에서 UGA는 SGA 내부에 생성되며 Dedicate Server 환경에서는 PGA에 생성된다.  같거나 다른 여러 세션의 Private SQL Area가 SGA 내부의 하나의 실행 계획(Execution Plan)을 참조할 수 있다. 예를 들어 10개의 “SELECT * FROM EMP” 쿼리를 하나의 세션에서 5번, 서로 다른 5개의 세션에서 한 번씩 번 실행한다고 했을 때 이 모든 세션의 Private SQL Area에서 동일 한 SGA내부 Library Cache안의 Shared SQL Area의 실행계획을 참조하고 각 세션의 Private SQL Area의 변수 및 데이터는 서로 공유되지 않는다.
  • 9. Oracle Hint, Tuning_Cursor&Oracle Memory PGA(Program Global Area)  PGA의 Private SQL Area는 RUN-TIME AREA, PERSISTENT AREA로 나눌 수 있다. RUN_TIME AREA : 쿼리 실행의 상태정보를 보관하는 곳이며 FULL TABLE 스캔을 하는 경우 각 레코드를 검색하는 트랙과 같은 역할을 한다. 쿼리가 실행될 때 할당되고 종료되면 해제 된다. PERSISTENT AREA : 바인드 변수를 포함하는 영역인데 바인드 변수 값은 쿼리가 실제 실행 될 때 제공된다. 커서가 닫힐 때 반환되는 영역이다.  사용자 프로세스가 오라클 서버 프로세스를 호출하면 서버프로세스가 PGA를 할당하고 SQL Wrok Area를 생성한다. 이러한 공간을 통해 쿼리의 정렬 등의 작업이 이루어지고 SGA와 데이 터를 주고 받으면서 작업을 한다. PGA는 UGA와 Stack Space로 구성되는데 아래와 같은 요소가 있다. (Dedicate Server에서는 User Session Data, Cursor State, Sort Area를 PGA에 저장하며 Shared Server에서는 User Session Data를 SGA에 저장한다.) USER SESSION DATA : SELECT 한 값을 클라이언트로 전달하기 위한 사용자 프로세스의 정보를 저장하고 그 주소를 저장한다. CURSOR STATE : 실행하는 SQL문의 파싱정보가 저장된 곳의 주소를 저장 SORT AREA : 정렬을 위한 공간. STACK SPACE : SQL문장에 사용되는 바인드 변수 저장.
  • 10. Oracle Hint, Tuning_Cursor&Oracle Memory UGA(User Global Area)  사용자 세션과 연계된 메모리 영역으로 세션변수를 위해 할당된 메모리 영역이다.  세션변수 영역과 OLAP의 데이터 페이지를 저장하기 위한 OLAP POOL을 가진다.  Shared Server 환경에서 UGA는 SGA 내부 LARGE POOL(LARGE POOL이 없다면 SHARED POOL)에 생성되며 Dedicate Server 환경에서는 UGA는 PGA에 생성된다.  Shared Server 환경에서는 각 사용자 세션에서 동일한 SQL문을 실행한다면 SQL의 복사본이 SGA내의 UGA에 저장되며 Dedicate Server 환경에서는 개별 PGA에 저장된다.