Presentation is loading. Please wait.

Presentation is loading. Please wait.

CON7526 Intercontinental - Grand Ballroom

Similar presentations


Presentation on theme: "CON7526 Intercontinental - Grand Ballroom"— Presentation transcript:

1

2 CON7526 Intercontinental - Grand Ballroom
11 Top 10 Tips and Tricks to Get the Best Database Performance from Solaris Systems CON7526 Intercontinental - Grand Ballroom Ken Kutzer, Ritu Kamboj, Viraj Nr Oracle, Systems Division October 2, 2014 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

3

4 Program Agenda 1 Introduction Deployment Tips and Practices Operating Tips and Tunings Summary and Resources 2 3 4

5 Introduction Ken Kutzer

6 Customers are Choosing Oracle Solaris
Large European Telco Moved to Solaris 2X Performance for the same number of licenses 10X more customer transactions per day Replaced: HP x86 Red Hat Linux VMware “ We moved to SPARC systems for 3 main reasons: Improved performance, reliability and scalability, and great integration features of Oracle Solaris 11 and Oracle Database.”

7 One Engineering Team Engineered Together
Best performance, availability, security, efficiency Tested Together 150,000 machine hours every week 10M+ machine hours annually Certified Together We take the risk for you Deployed Together Your application up in hours, not months Upgraded Together Risk free patching/updates Managed Together 3x lower administration and maintenance costs Supported Together Coordinated response for your deployment

8 The Ultimate Software Optimizations: Hardware
Software in Silicon Moving Oracle Database & Data Functions into Hardware Database Query Acceleration Data Decompression Application Data Integrity Low-Latency Clustering Software in Silicon T5 Baseline (1 Thread) M7 (1 Query Pipeline) Preliminary Results (Single Stream Decompression)

9 Deployment Tips and Practices
Ritu Kamboj

10 Rapid, Trouble Free Oracle Database Installation
#1 Rapid, Trouble Free Oracle Database Installation Simplified Installation on Oracle Solaris Single Solaris package contains everything needed to install Database Installs and verifies all packages needed for Oracle Database 12c are present on the system Reduce preparation effort, avoid errors and installation delays #pkg install oracle-rdbms-server-12-1-preinstall Available For Oracle Database Oracle Solaris 11.2

11 Monitor Oracle Database Health on Oracle Solaris
#2 Monitor Oracle Database Health on Oracle Solaris Proactively reports problems for Oracle Database and Oracle Solaris by OraChk Reports system health risks with the ability to drill down into specific problems and understand their resolutions Provides a single dashboard to view collections across entire enterprise Additions in latest Orachk tool (version 2.2.5) Runs checks  for multiple databases in parallel New profile options to run only pre and post upgrade checks Available For Oracle Database or greater Oracle Solaris 11.1 or greater For more information please see MOS Note

12 Reduce Oracle Database Large Memory Startup Time
#3 Reduce Oracle Database Large Memory Startup Time Large Memory Enables the Real Time Enterprise Oracle Solaris parallelizes shared memory allocation Oracle Solaris auto tunes degree of parallelism per operation Oracle Database brings the database up before allocating entire SGA Up to 21x faster database startup time Available For Oracle Database or greater Oracle Solaris 11.1 SRU 10 or greater

13 Leverage SPARC Critical Thread Technology
#4 Leverage SPARC Critical Thread Technology Oracle’s SPARC M6, T5 and T4 Processors running Oracle Software Assign exclusive access to a core’s hardware resources to a process Up to 30% reduction in Oracle LGWR latency For Oracle , used for LGWR and LMS processes by default on start up For Oracle 11g, can be enabled with the command #priocntl -s -c FX -m 60 -p 60 -pid <process id for lgwr> Available For Oracle Database or greater Oracle Solaris 11.1 or greater

14 Leverage On-line SGA Resizing Through OSM
Background Information Leverage On-line SGA Resizing Through OSM Optimized Shared Memory (OSM) Background Oracle 12c built for massive consolidation Demands a platform which facilitates dynamic resource provisioning Combines the benefits of ISM and DISM Robust mechanism for dynamic resizing of SGA (growing and shrinking) Physically locked memory with large pages and shared Page Table entries  Additional benefits Optimized for memory architecture of Oracle Database No scope for memory paging & no need for swap space configuration

15 Leverage On-line SGA Resizing Through OSM
#5 Leverage On-line SGA Resizing Through OSM OSM Makes Large Memory Solaris Platforms Ready for Consolidation For Oracle , OSM is used by default For Oracle , OSM is only used when you configure SGA to grow dynamically Monitor using “pmap –xs” memory_max_target = 400G Available For Oracle Database or greater Oracle Solaris 11.1 or greater

16 Use a Single Database Version for Higher Efficiency
#6 Use a Single Database Version for Higher Efficiency Enable Higher Consolidation Density with Solaris Zones Install shared Oracle home in global zone Shared background processes across instances, simplified patching and upgrades Mount Oracle home from global zone to non-global zone #zonecfg -z my-zone zonecfg:my-zone> add fs zonecfg:my-zone:fs> set dir=/u01 zonecfg:my-zone:fs> set special=/u01 zonecfg:my-zone:fs> set type=lofs zonecfg:my-zone:fs> end

17 When Practical, Create Solaris Zone along Core Boundary
#7 When Practical, Create Solaris Zone along Core Boundary Best Practice for Database Consolidation Create a processor set with a full core and assign it to a zone Ensure memory assignment is prioritized from local Enable processor set aware lgrp memory allocation In /etc/system Apply patch for bug id for higher consolidation densities # poolcfg -c ‘create pset dbPset_set(uint pset.min=8;uint pset.max=8)’ # poolcfg -c ‘create pool dbPool’ # poolcfg -c ‘associate pool dbPool(pset dbPset)’ # poolcfg -c ‘transfer to pset dbPset(cpu 0;cpu 1;cpu 2;cpu 3;cpu 4;cpu 5;cpu 6;cpu 7)‘ set lgrp_mem_pset_aware=1

18 Operating Tips and Tunings Memory Allocation and CPU Efficiency
Viraj Nr

19 Performance Methodology
Background Information Performance Methodology Apply known “Best Practices” Follow Performance optimization process Performance below expectation, variance, degradation over time, etc. Symptoms Performance Optimization Process Tuning Tips Diagnosis Systemic Analysis

20 Oracle Solaris Memory Allocation Concepts
Background Information Oracle Solaris Memory Allocation Concepts Solaris Memory Organization - Size Supports multiple pagesizes for Database instances Tries to allocate SGA using largest available pagesize Coalesces smaller pages into larger pages as required Solaris Memory Organization - Placement CPU-Memory affinity abstracted as locality groups (lgroup) lgroup aware memory allocation Database instance startup time depends on availability of large pages

21 Slow DB Startup Related to Large-Page Availability
#8 Slow DB Startup Related to Large-Page Availability Symptoms Slow database instance startup (affects Oracle 11g more) Diagnosis Memory fragmentation due to several database startups/shutdowns, i/o to file systems, other types of i/o, etc. Mixed size pages due to page coalescing issues Monitor pagesizes using “pmap –xs `pgrep –f ora_dbw0` ”

22 Slow DB Startup Related to Large-Page Availability
#8 Slow DB Startup Related to Large-Page Availability (Cont.) Tuning Tips Limit ZFS Cache size to 20% of available memory, this allows remaining memory to be available for Oracle Database use Add the following to /etc/system (e.g. to set it to 2GB) (requires reboot) If ZFS is used heavily, refer to ZFS tuning guide for recommendation Consider system reboot as a last resort OSM helps to addresses some of these concerns – Helps improve Instance Startup – Helps Database Availability

23 Performance Variance due to Uneven Memory Allocation Across lgroups
#9 Performance Variance due to Uneven Memory Allocation Across lgroups Symptoms 5% to 10% performance variance for OLTP Cause - multiple DB instances started over time on the same Solaris instance Diagnosis Monitor memory allocations across lgroups using “lgrpinfo –cm”

24 Performance Variance due to Uneven Memory Allocation Across lgroups
#9 Performance Variance due to Uneven Memory Allocation Across lgroups (Cont.) Use Oracle 12c Processor Group Name Feature Tuning Tips Use new Oracle 12c Processor Group Name Feature to ensure All database processes are bound to the processor group All memory is allocated locally from the processor group Integrates with Oracle Solaris resource pools to isolate Oracle Database instances Oracle provides easy to use script to create Solaris Resource pools Set processsor_group_name parameter to Resource pool name In init.ora Processor_group_name=<resourcePoolName>

25 Performance Variance Due to Load Imbalance
#10 Performance Variance Due to Load Imbalance Check and Monitor CPU Utilization Symptoms Uneven CPU Utilization Dynamic creation/deletion of processor sets, on-lining and off-lining of CPUs Short lived applications creating load imbalance Diagnosis Monitor load average using kstat, correlate with mpstat Monitor uneven home lgroup assignment using plgrp Tuning Tips Create controlled environment, remove unwanted processor sets Use MCB feature of Solaris (pbind -c <cpu list>)

26 Monitor CPU Efficiency
#11 Monitor CPU Efficiency Core Efficiency – Software + Hardware Utilization Symptoms Lower than expected scaling for certain OLTP, DSS or batch workload Diagnosis Monitor S/W and H/W core utilization using pgstat (S11.1 SRU 11 or later) Core utilization is represented by Integer_Pipeline utilization Tuning Tips Core utilization approaching saturation means operating at maximum capacity

27 Summary and Resources This slide can also be used as a Q and A slide

28 Oracle Database Runs Best on Oracle Solaris
Key Tip Summary Use shared release area where applicable to enable higher database consolidation density Limit ZFS ARC to improve large page availability and database startup time Leverage Oracle 12c processor_group_name for consolidation on NUMA servers Use pgstat for complete understanding of core utilization Leverage Solaris performance tools to observe and diagnose performance issues

29 Questions? References Oracle Solaris 11—The Optimal Platform for Deploying Oracle Database Administering Resource Management in Oracle® Solaris 11.2 Oracle Solaris Studio Materials for CON6583: Be a Hero with Your DBA: Database Performance Tuning for Admins THURSDAY Intercontinental Hotel 12:00 CON7818 Guarantee SLAs with Software-Defined Networking Grand Ballroom A CON8009 Code Analysis Tools for Consistent/Secure/Reliable Quality Grand Ballroom B 1:15 CON7843 Best Practices for Oracle Solaris Lifecycle Management 2:30 CON4606 Efficient Scalable/Flexible Data Center Cloud Virtualization Grand Ballroom C

30

31 Appendix Available Tools and Techniques
This slide can also be used as a Q and A slide Available Tools and Techniques

32 Tools and Techniques System Performance Solaris + Platform
Process and Thread Analysis lockstat, plockstat, truss, prstat and pstack Memory Placement Optimization plgrp, pmap, lgrpinfo Interrupt Assignment and Load Balancing mpstat, mdb, intrstat Hardware Utilization, Capacity Planning cpustat, corestat, pgstat, pginfo Advanced Debugging Dtrace Profiling Techniques Oracle Solaris Studio

33 Tools and Techniques prtpicl
Provides platform information (architecture details including TLB, cache size etc) pginfo Displays info about the Processor Group (PG) hierarchy PGs are used by the operating system to represent the CPUs that share performance relevant hardware including integer pipeline pginfo –c 0; pginfo –v –c 0 mpstat, cpustat, trapstat Enhanced to handle large CPU count on large systems via filters and aggregation options

34 I/O Performance Diagnosability with Solaris and Oracle 12c
DTrace Tightly Integrated with Database Monitoring Framework v$kernel_io_outlier reports I/O outlier response time breakup (ASM & RAW). Threshold for I/O outlier is > 500 msec latency Description of v$kernel_io_outlier view TIMESTAMP Number of seconds elapsed since 00:00 UTC, January 1, 1970 IO_SIZE Size of the I/O, in KB. IO_OFFSET Offset into the device of the I/O DEVICE_NAME Name of the device to which the I/O was targeted PROCESS_NAME Name of the process that issued the I/O TOTAL_LATENCY Total time in us the I/O spent in the kernel SETUP_LATENCY Time in us spent during initial I/O setup before sending to SCSI target device driver QUEUE_TO_HBA_LATENCY Time in us spent in the SCSI target device driver before being sent to the Host Bus Adaptor TRANSFER_LATENCY Time in us spent in the Host Bus Adaptor and physically transferring the I/O to the storage device CLEANUP_LATENCY Time in us spent freeing resources used by the completed I/O PID Process ID that issued the I/O CON_ID The Container ID


Download ppt "CON7526 Intercontinental - Grand Ballroom"

Similar presentations


Ads by Google