in sync running apps on oracle
TRANSCRIPT
Innovations for Running Applications on Oracle
Michael CharbonnierOracle
16-Aug-2010
The most comprehensive Oracle applications & technology content under one roof
The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions.The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.
Contents• Challenges All App Users Face
• New Oracle Innovations to these Issues
• Real Applications Testing Innovations
• Data Masking Innovations
• Analyst Reviews & Case Studies
• Conclusion
Operations & Infrastructure Top Concerns
Managing change effectively is a strategic imperative!
Business Pain Points• Unexpected SQL statement errors often require long and tedious
diagnosis by DBA’s (lower productivity)
• Isolating the root cause of slow DB performance is difficult (poor service levels)
• Untested applications either break or perform poorly in production (embarrassment)
• Inability to manage changes and test their effectiveness slow down business requirements (reduced agility)
• Most companies use production customer data for testing which often gets lost or stolen (compliance risk)
Moreover, many firms are cutting corners on data security
• 89% of companies use production customer data - often exceeding 10M records - for testing, development, support, training, etc.
• 74% use consumer data, 24% use credit card numbers!!!
• Only 23% do anything to suppress sensitive information and 81% relied on contractual clauses to protect live data transferred to outsourcers and other third parties
• 23% said live data used for development or testing had been lost or stolen and 50% had no way of knowing
Application Performance Management Lifecycle Management
Configuration Management Application Quality Management
Diagnostics, Tuning
User Experience
Java, SOA, Transactions
Collection, Tracking, History
Compliance Dashboards
Application Configuration Mgmt
Provisioning
Dynamic Resource Management
Patching
Data Masking
Functional/Load Testing
Real Application Testing
Comprehensive Management
Testing Application Changes• Application Testing Suite
Testing Infrastructure Changes• Real Application Testing
• Designed and optimized for testing database tier infrastructure changes
• Reduce cost of testing by 50% while increasing application quality and becoming more agile
Secure Test Data Management• Data Masking Pack
• Achieve security & compliance objectives by obfuscating sensitive data in test environments
• Enables secure, production-scale testing
• Mitigate compliance & privacy risk
Oracle’s Application Quality Management SuiteHigh quality testing for all tiers of application stack
Application
LayerInfrastructure and D
B-tiers
Testing Infrastructure Changes
Oracle Real Application Testing
• SQL Performance Analyzer (SPA)• SQL unit testing for response time tuning
• Database Replay• Concurrent load testing using production workloads
ReplayWorkload
CaptureWorkload
Deploy Replay Clients
Create Test System
End-to-End Workflow
• Test and predict impact of system changes on SQL query performance• Analyze performance changes for improvements or regression• Comprehensive performance analysis and reporting• Re-execute SQL queries in test environment• End-to-end solution: STS, SQL Plan Baselines, & SQL Tuning Advisor
Oracle Real Application TestingSQL Performance Analyzer
SQL WorkloadSTS
SQL Plans + StatsPre-Change Trial
SQL Plans + StatsPost-Change Trial
Compare SQL Performance
Analysis Report
SPA Enhancements
• Analyze performance of two workloads thru STS comparison • Allows comparing two different STS and generate SPA report• Better SPA trial accuracy through multiple test execution• SPA provides “Alternate Plans” recommendation for individual regressed
SQL in a SPA trial• SPA Active Reports
SPA: Common Usage Scenarios• Database upgrades and patch-set releases
– 9.2/10.1 10.2 or 11g releases– 10.2.0.x 10.2.0.y or 11g releases
• Optimizer statistics refresh• Database parameter changes• Database schema changes (e.g., add/drop indexes)• Implementation of tuning recommendations• I/O subsystem changes (e.g., ASM, Exadata)
SPA can be used for:
any change that affects SQL execution plan & performance
in production as well as test environments
Backport information: ML Note: 560977.1
SPA Scenario
Spa Scenario• SPA & SPM – How are they used in an upgrade scenario to see what has
regressed?• We are going to do the following
– Generate some workload & capture this workload– Exp the schema & captured workload– Imp the schema & captured workload into 11g db– Extract the workload into the Sql Tuning Set (STS) on 11g db– Use SPA to test the difference between workload execution between
the 2 versions – Identify the statement that has the most regression use Sql Plan
Management (SPM) to keep the original execution plan.– Capture the original 10g plan & baseline it.– Re execute with 11g optimizer stats using the original 10g baseline
plan.
Database Load Testing TodayTest – 1-2 testers trying to be 1,000s of users
PRODUCTION TEST
• Infrastructure load testing not adequately performed
• Many issues go undetected• Testing expensive in time and
money with poor results • Changes such as db
upgrades, platform migrations, etc., can produce issues uncovered during proper load testing only
• Challenge is to generate a test workload that is representative of production environment
• Reduce costs and risks of database changes
• Fully automated workflow• Change Assurance for
– Database and O/S upgrades, e.g. migration to Exadata V2
– Configuration changes, e.g., conversion from SI to RAC
– Storage & hardware changes– O/S migrations, e.g.,
Windows to Linux
• Supports upgrades from Oracle 9iR2 to 10gR2 and 11g!
Test
Capture Process Replay Analysis &Reporting
ProductionReplay DriverClients
Storage Storage
Oracle Real Application Testing Database Replay
Database Replay
• Capture Workload in Production– Capture full production workload with real load, timing & concurrency
characteristics– Move the captured workload to test system
• Replay Workload in Test– Make the desired changes in test system– Replay workload with full production characteristics
• Analyze & Report– Capture and Replay Reports– AWR, ASH, Replay Compare Period Reports
Analysis & Reporting
1
2
3
Replay
Analyze & Remediate
Capture
Supported Changes
Changes Unsupported
Changes Supported•Database Upgrades, Patches
•Schema, Parameters•RAC nodes, Interconnect
•OS Platforms, OS Upgrades•CPU, Memory
•Storage•Etc.
ClientClient
…Client
Middle Tier
Storage
Recording of External Client Requests
†Shared Server support from Oracle Database Release 11.2
Database Replay Enhancements• Replay Compare Period Report
– Provides holistic view of the experiment – covers functional and performance aspects of testing
– “Replay Divergence Summary” categorization indicates if further analysis is necessary
• New reports available; Capture Vs Replay, Replay Vs Replay• Automatically runs ADDM• Enhanced Replay Divergence Analysis in Replay Progress/Summary
Pages• Replay filters support
– Usage similar to capture filters, used to target sub-set workload for replay
– API support only in current release• Enhanced ASH performance data for more accurate performance analysis
DB Replay Scenario
DB Replay Scenario• DB Replay• We are going to do the following
– Generate some workload & capture this workload through Enterprise Manager
– Define the Capture Name & Location– Start the Capture process – Kick of the workload generation while the capturing is on– Stop the Capture process – Pre-process the workload – Start the replay – Restore the original environments– Replay the workflow – Start the Replay client
0
20
40
60
80
Time
Tak
en (D
ays)
Install & Setup UnderstandApplication
Usage
Identify KeyTransactions
Test ScriptDevelopment
Run Test
Real Application Testing
Traditional Approach
2
20 54
80
24 20
Real Application Testing: 2 weeks
Traditional Approach: 30 weeks
Total Testing Time
500
Traditional Testing Vs Real Application TestingShorter Testing Cycles
Real Application TestingTraditional Testing
Traditional Testing Vs Real Application TestingHigher Quality Testing
Complete workflowsPartial workflows
Low riskHigh risk
AutomatedManual intensive
Production workloadsArtificial workloads
Days of developmentMonths of development
Test Data Management
Test Data Management• Oracle Data Masking helps deploy test systems with best testing data –
production data with sensitive information obfuscated
• Production data cannot be used in testing without de-identification – Payment Card Industry Data Security Standard (PCI DSS) 6.3.4– Graham-Leach-Bliley Act (GLBA) and Sarbanes-Oxley Act (SOX)– Health Insurance Portability and Accountability Act (HIPAA)
• Non-production breaches must be disclosed– Database Security Breach Notification Act (California SB 1386)– $239/record– Up to $35M/breach
Secure Test System Deployment Oracle Data Masking
• Deploy secure test system by masking sensitive data• Sensitive data never leaves the database• Extensible template library and policies for automation• Sophisticated masking: Condition-based, compound, deterministic• Integrated masking and cloning• Leverage masking templates for common data types• NEW: Command line (EMCLI) support for data masking actions
LAST_NAME SSN SALARY
HODGES 111—23-1111 60,000
JOHNSON 222-34-1345 40,000
LAST_NAME SSN SALARY
AGUILAR 203-33-3234 40,000
BENSON 323-22-2943 60,000
Production Test
Data MaskingEnd-to-End Management
LAST_NAME SSN SALARY
HODGES 111—23-1111 40,000
JOHNSON 222-34-1345 60,000
LAST_NAME SSN SALARY
AGUILAR 203-33-3234 40,000
BENSON 323-22-2943 60,000
Production Non-Production
• Complete test system management • Provision test system
• Auto-mask sensitive data
• Rich monitoring and management capabilities
• Software maintenance support
• Separation of duties
• Application admin defines masks
• DBA executes masking
Customer Successes
Case Study 1: Real Application Testing at a Large Global Hotel Chain
• Upgrade critical customer-facing application providing rates for room reservations from Oracle Database 10.2.0.4 to 11.1
• Highly volatile data where plan stability is critical
• Unsuccessfully used synthetic queries to test previous upgrades
Challenge
• SQL Performance Analyzer to identify SQL regressions
• SQL Profiles to tune SQL transparently
• SQL Plan Baselines for plan stability
SolutionApproach
Benefit• Very successful upgrade. No surprises!
• Predictable performance and SLAs
• Reduced testing time from 5 months to 10 days
Case Study 1: Large Global Hotel ChainProblems Resolved• Issues Prior to Upgrade
– Volatile nature of data sometimes produced inefficient queries based on stale stats.
– Impossible to maintain good statistics due to the nature of data load –frequent and widely changing
– Bind variables didn't always help– Outlines hurt in some cases due to nature of the data values
• After Oracle Database 11g Upgrade:– No performance problems noticed– Predictable query performance and plan stability due to Plan Baselines– Provided a history of plan changes– Allowed a more efficient usage of bind variables due to adaptive cursor
sharing
“The Database Replay and SQL Plan Management features alone are worth upgrading to Oracle Database 11g” 11g "
Arup NandaSenior Director
Starwood Hotels & Resorts Worldwide
Source: Oracle Real ApplicationTesting – business agility through superior testing, Jan 2008
Case Study 2: Australian Firm uses Data MaskingAustralian Project Management, Development and Civil Engineering
company chooses Oracle Data Masking
Challenge
SolutionApproach
Benefit
• Oracle was involved in the architectural design of customer’s next-gen Contract Business Transformation project
• Customer needed to ensure complete integrity of its data during testing & migration stages
• This was an uncomplicated deal: customer read the marketing literature on Oracle.com and asked his Oracle account manager to purchase Data Masking immediately
• Oracle confirmed that data protection and integrity were the key value propositions of Data Masking – and the customer’s answer to securely migrating data between environments
• Use of the only out-of-the box solution compliant to industry privacy policies and suited to a multi-vendor development environment where data integrity could be compromised
• Assurance that confidential project information is not lost to competitors even when outsourcing
Conclusion• Most companies do not adequately test their Applications or protect sensitive data when
testing
• This leads to costly downtime, poor application quality and user experience, plus leakage of sensitive data
• Recent innovations from Oracle let Apps Users easily, robustly, and inexpensively test Applications to achieve business agility
• These new solutions – like Data Masking which allows meaningful data to be securely used in testing -- are not available elsewhere
• Data Masking and Real Application Testing can be used by Oracle and non-Oracle Application users running on most databases*
*RAT requires Oracle DBEE 9.x as source and 10gR2 as destination databases. Data Masking merely requires part of your test servers to run DBEE but can mask data from any vendor’s DB
Tell us what you think…• http://feedback.insync10.com.au