Download presentation
Presentation is loading. Please wait.
Published byAnthony Ford Modified over 9 years ago
1
15 Copyright © 2004, Oracle. All rights reserved. Monitoring and Managing Memory
2
15-2 Copyright © 2004, Oracle. All rights reserved. Objectives After completing this lesson, you should be able to: Describe the memory components in the SGA Implement Automatic Shared Memory Management Manually configure SGA parameters Use automatic PGA memory management
3
15-3 Copyright © 2004, Oracle. All rights reserved. Oracle Memory Structures Java pool Database buffer cache Shared pool Redo log buffer Large pool SGA Streams pool Server process 1 PGA Server process 2 PGA Back- ground process PGA Keep buffer cache Recycle buffer cache nK Block Size buffer caches
4
15-4 Copyright © 2004, Oracle. All rights reserved. Oracle Memory Structures Full Notes Page
5
15-5 Copyright © 2004, Oracle. All rights reserved. Buffer Cache Data files SGA Checkpoint queue........ DBWn Server DB_BLOCK_SIZE DB_CACHE_SIZE DB_RECYCLE_CACHE_SIZE DB_KEEP_CACHE_SIZE LRU lists........ DB buffer cache
6
15-6 Copyright © 2004, Oracle. All rights reserved.
7
15-7 Copyright © 2004, Oracle. All rights reserved. Using Multiple Buffer Pools SGA DB buffer caches Keep pool Recycle pool Default pool
8
15-8 Copyright © 2004, Oracle. All rights reserved. Using Multiple Buffer Pools CREATE INDEX cust_idx … STORAGE (BUFFER_POOL KEEP …); ALTER TABLE oe.customers STORAGE (BUFFER_POOL RECYCLE); ALTER INDEX oe.cust_lname_ix STORAGE (BUFFER_POOL KEEP);
9
15-9 Copyright © 2004, Oracle. All rights reserved. Shared pool Library cache Data dictionary cache UGA Shared pool Defined by SHARED_POOL_SIZE Library cache contains statement text, parsed code, and execution plan. Data dictionary cache contains definitions for tables, columns, and privileges from the data dictionary tables. UGA contains session information for Oracle Shared Server users when a large pool is not configured. Shared Pool
10
15-10 Copyright © 2004, Oracle. All rights reserved. Shared pool Database buffer cache Redo log buffer Large pool Large Pool Library cache Dictionary cache User global area Can be configured as a separate memory area in the SGA Is sized by the LARGE_POOL_SIZE parameter Is used to store data in memory for: –Backup and restore operations –Session data for the shared servers –Parallel query messaging
11
15-11 Copyright © 2004, Oracle. All rights reserved. UGA and Oracle Shared Server Shared pool PGA Shared pool or large pool Stack space PGA Stack space Cursor state User session data UGA Dedicated server configuration Shared server configuration User session data Cursor state UGA
12
15-12 Copyright © 2004, Oracle. All rights reserved. Java Pool Can be configured as a separate memory area in the SGA Is sized by the JAVA_POOL_SIZE parameter Is used to store data in memory for all session- specific Java code and data within the JVM Shared pool Database buffer cache Redo log buffer Large pool Library cache Dictionary cache User global area
13
15-13 Copyright © 2004, Oracle. All rights reserved. The Redo Log Buffer SQL> UPDATE employees 2 SET salary=salary*1.1 3 WHERE employee_id=736; Server process LGWR Control files ARCn Archived log files Redo log files Data files Shared pool Redo log buffer Library cache Dictionary cache User global area Database buffer cache
14
15-14 Copyright © 2004, Oracle. All rights reserved. Automatic Shared Memory Management: Overview Automatically adapts to workload changes Maximizes memory utilization Helps eliminate out-of-memory errors Buffer cache Large pool Shared pool Java pool Buffer cache Large pool Shared pool Java pool Online usersBatch jobs
15
15-15 Copyright © 2004, Oracle. All rights reserved. Benefits of Automatic Shared Memory Management DB_CACHE_SIZE SHARED_POOL_SIZE LARGE_POOL_SIZE JAVA_POOL_SIZE Total SGA size SGA_TARGET
16
15-16 Copyright © 2004, Oracle. All rights reserved. SGA Tuning Principles Based on workload information, MMAN captures statistics periodically in the background. MMAN uses the different memory advisories. Memory is moved to where it is most needed. Using an SPFILE is recommended: –Component sizes saved across shutdowns –Saved values used to bootstrap component sizes –Avoids having to relearn optimal values
17
15-17 Copyright © 2004, Oracle. All rights reserved. Database Control and Automatic Shared Memory Management
18
15-18 Copyright © 2004, Oracle. All rights reserved. Manual Configuration SGA_TARGET = 8G Total SGA size = 8 GB Java pool Database buffer cache Redo log buffer Shared pool Large pool Fixed SGA STATISTICS_LEVEL = TYPICAL Auto-tuned Streams pool Keep buffer pool
19
15-19 Copyright © 2004, Oracle. All rights reserved. Behavior of Auto-Tuned SGA Parameters When SGA_TARGET is not set or is set to zero: –Auto-tuned parameters behave as previously. – SHARED_POOL_SIZE may need to be increased from settings used on earlier database versions. When SGA_TARGET is set to a non-zero value: –Default value of auto-tuned parameters is zero. –If set to a non-zero value, the specified value is used as a minimum size. SELECT SUM(bytes)/1024/1024 FROM v$sgastat WHERE pool = 'shared pool'; SELECT component,current_size/1024/1024||'M' FROM v$sga_dynamic_components;
20
15-20 Copyright © 2004, Oracle. All rights reserved. Behavior of Manually Tuned SGA Parameters Some components are not auto-tuned. – KEEP and RECYCLE buffer caches –Multiple block size caches –Log buffer –Streams pool These components must be manually configured using database parameters. The memory used by these components reduces the amount of memory available for auto-tuning the SGA.
21
15-21 Copyright © 2004, Oracle. All rights reserved. Using the V$PARAMETER View SGA_TARGET = 8G SELECT name, value, isdefault FROM v$parameter WHERE name LIKE '%size'; DB_CACHE_SIZE = 0 JAVA_POOL_SIZE = 0 LARGE_POOL_SIZE = 0 SHARED_POOL_SIZE = 0
22
15-22 Copyright © 2004, Oracle. All rights reserved. Resizing SGA_TARGET The SGA_TARGET initialization parameter: –Is dynamic –Can be increased up to SGA_MAX_SIZE –Can be reduced until all components reach their minimum size A change in the value of SGA_TARGET affects only automatically sized components.
23
15-23 Copyright © 2004, Oracle. All rights reserved. SGA size = 8 GB Disabling Automatic Shared Memory Management Setting SGA_TARGET to zero disables auto-tuning. Auto parameters are set to their current sizes. SGA size as a whole is unaffected. Parameters: sga_target = 8G shared_pool_size=1G Parameters: sga_target = 0 db_cache_size = 4G shared_pool_size = 2G large_pool_size = 512M java_pool_size = 512M SGA size = 8 GB Original values
24
15-24 Copyright © 2004, Oracle. All rights reserved. Manually Resizing Dynamic SGA Parameters For auto-tuned parameters, manual resizing: –Results in immediate component resize if the new value is greater than the current size –Changes the minimum size if the new value is smaller than the current size Manually tuned parameter resizing affects only the tunable portion of the SGA.
25
15-25 Copyright © 2004, Oracle. All rights reserved. Program Global Area (PGA) PGA Server process PGA Shared pool or large pool PGA Dedicated connections Shared server PGA Shared server connections Private SQL areas Cursor and SQL area Session memory Work area
26
15-26 Copyright © 2004, Oracle. All rights reserved.
27
15-27 Copyright © 2004, Oracle. All rights reserved. Automatic PGA Memory Management Dynamically adjusts the amount of PGA memory dedicated to work areas Memory allocated to work areas is derived from the PGA_AGGREGATE_TARGET parameter Helps to maximize the performance of all the memory-intensive SQL operations Enabled by default
28
15-28 Copyright © 2004, Oracle. All rights reserved. PGA Management Resources Statistics to manage the PGA_AGGREGATE_TARGET initialization parameter, such as PGA cache hit percentage Views for monitoring the PGA work area include: – v$sql_workarea_histogram – v$pgastat – v$sql_workarea_active – v$sql_workarea – v$tempseg_usage Views to assist in sizing the PGA work area are: – v$pga_target_advice – v$pga_target_advice_histogram
29
15-29 Copyright © 2004, Oracle. All rights reserved. Using the Memory Advisor
30
15-30 Copyright © 2004, Oracle. All rights reserved. Summary In this lesson, you should have learned how to: Describe the memory components in the SGA Implement Automatic Shared Memory Management Manually configure SGA parameters Use automatic PGA memory management
31
15-31 Copyright © 2004, Oracle. All rights reserved. Practice 15 Overview: Automatic Shared Memory Management This practice covers using Automatic Shared Memory Management to avoid long running query issues.
32
15-32 Copyright © 2004, Oracle. All rights reserved.
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.