Hi,

I have been trying to put SGA and PGA components into proper perspective and I am having a difficult time because all information that I have come across seems to use different names for what appears to be by description the same component or some documentation will breakdown the primary components into smaller subcomponents and not categorize the main components.

If that sounded like a confusing mouthful, then you can understand my level of difficulty trying to get a grasp on the basics.

For instance, I have read this definition:

PRIVATE SQL AREA - stores SQL statement information and its execution plan (located in the PGA for DEDICATED SERVERS and SGA for SHARED SERVERS)

So this is good until I come across another definition like this:

SHARED SQL AREA - stores SQL statement and its execution plan.

Now I'm confused. Is the PRIVATE SQL AREA actually referred to as a SHARED SQL AREA when on a SHARED SERVER? It would seem so since the definitions are identical

Can anyone provide me with a more clear and easy break down for what components make up the SGA and what make up the PGA at the top level or tell me where I can find this information?

So far this is what I believe is correct:

[SGA]
PRIVATE SQL AREA (IF ON A SHARED SERVER)
LIBRARY CACHE
ROW CACHE
SHARED POOL
BUFFER CACHE
REDO LOG BUFFERS

[PGA]
PRIVATE SQL AREA (IF ON A DEDICATED SERVER)
CURSORS
SESSION MEMORY


If you see any mistakes in what I have here, please correct me by all means. I just want to simplify the grouping of the components for each memory section. (SGA and PGA) I can dissect the subcomponents if I clearly know what the base components are

Anyone able to help out here??

Thanks.