2011-05-10 14:57:53
Category: Linux
First, the memory structure
SGA (System Global area): Shared by all service processes and background processes;
The PGA (Program Global Area): is proprietary to each service process, background process, and each process has a PGA.
Second, SGA
contains the data and control information for the instance, including the following memory structure:
1) database buffer cache: Blocks of data retrieved from disk are cached.
2) Redo Log buffer: Caches the redo information before writing to the disk.
3) Shared pool: caches the various structures that can be shared among users.
4) Large Pool: An optional region that caches large I/O requests to support parallel queries, shared server patterns, and some backup operations.
5) Java Pool: Saves data and Java code for a specific session in a Java virtual machine.
6) Streams pool: Used by Oracle Streams.
7) Keep buffer cache: Saves the data stored in the buffer cache. Make it as long as possible.
8) Recycle buffer cache: Saves data that is about to expire in the buffer cache.
9) NK block Size buffer: Provides caching for blocks of data that are different from the database's default block size. Used to support table space transfers.
database buffer cache, shared pool, large pool, streams pool and Java PO OL according to the current database state, automatic adjustment;
keep buffer cache,recycle buffer cache,nk block size buffer can be modified dynamically without shutting down the instance.
Third, PGA
A private memory area for each service process that contains the following structure:
1) Private SQL area: Contains the binding information, the memory structure of the runtime. Each session that issues an SQL statement, has a private SQL area (privately-owned SQL Zone)
2) session Memory: the area allocated for storing variables in sessions and other session-related information.
Reproduced Oracle in-memory structure (SGA, PGA)