Imagination at work.
Ajith Narayanan
Technical Lead-Oracle ERP Configuration Management
GE Healthcare, Bangalore, India
8th Dec-2014, Liverpool, U.K.
Best Practices For Large Oracle
Apps R12 Implementations
Disclaimer
The views/contents in this slides are those of the author and do not
necessarily reflect that of General Electric Company or Oracle
Corporation and/or their respective affiliates/subsidiaries.
The material in this document is for informational purposes only, and is
provided on an AS-IS basis.
11/14/2014
3
Who Am I?
Ajith Narayanan
Technical Lead – Oracle ERP Configuration Management
GE Healthcare, Bangalore, India
• 10 years of Oracle [APPS] DBA/Technical Architect experience.
• Oracle ACE Associate
• Blogger :- http://oracledbascriptsfromajith.blogspot.com
• Member:-OAUG, AIOUG
• Website Chair (2011-2013) – Oracle RACSIG http://www.oracleracsig.org
• AIOUG Real Application Clusters SIG Leader
11/14/2014
4
Agenda
Why do we need to implement best practices?
• Application Tier
• R12 Tech Stack
• Forms
• Response Time
• Web Applications
• Concurrent Manager
• Workflow Engine
• Taking Diagnostics Help
• CBO Statistics
• Application Patching
• Network & Latency Check
11/14/2014
5
Agenda
• Database Tier
• CPU Utilization Observations and analysis
• High DB_IO observation and correlation with CPU usage.
• Identify Top SQLs
• Effective usage of AWR, ADDM Reports
• ORACHK Check (From Oracle RAC assurance team)
• ADR Command Interpreter (ADRCI)
• Cluster Callout scripts example.
• Looking At Issues Proactively & From Greater Heights
• References
• Q & A
11/14/2014
6
Why do we need to implement best
practices?
11/14/2014
7
Oracle Applications R12
• Huge infrastructure
– Oracle Applications R12
– 8 Node middle tiers
– 16 Node RAC database tier.
– Database Size 40+ TB
– Annual DB growth of 2 TB
– Daily Orders: 45 K –3 M order
lines
– 1500 online users
– 1M+ XML messages/day
Best Practices
• Benefits
– Enables us being proactive
– simple in terms of manageability
– Helps in support cost reduction.
– Time & effort saving
Why do we need to implement best
practices?
11/14/2014
8
Upgrade Tech Stack
• R12 Tech Stack
• OC4J: Oracle AS 10g 10.1.3./ Weblogic Managed Servers (FMW)
• Forms: Oracle AS 10.1.2
• JAVA, JRE Plugin
Useful MOS Articles
Oracle E-Business Suite Technology Stack Release Notes for Release 12.1.3 (MOS Note - 1098650.1)
Oracle E-Business Suite Technology Stack Release Notes for Release 12.2*
Oracle E-Business Suite - Technology Stack : Navigation (landing) Page (MOS Note - 1480550.1)
Troubleshooting Assistant: EBS Technology Stack (Doc ID 1607365.2)
Application Tier
11/14/2014
9
Application Tier
11/14/2014
10
Forms
• Socket Mode for Internal users (MOS 384241.1)
• Servlet mode is default in R12 and recommended for external access.
– cat $FORMS_WEB_CONFIG_FILE|grep serverURL=
If the serverURL parameter has no value then Forms is implemented in socket mode else it is servlet
• Forms dead client detection (DCD) and Abnormal termination handler.
– Value specified in minutes : FORMS_TIMEOUT=10
env | grep -i FORMS_TIMEOUT
– Terminates fwebmx processes for dead clients.
– Enable Forms Abnormal Termination Handle
– Do not set FORMS_CATCHTERM
– SQLNET.EXPIRE_TIME – Probes client connection at regular interval.
Useful MOS Articles
Application Tier
11/14/2014
11
Forms Process (FRMWEB) Consumes 100% of CPU in Oracle Applications R12 (Doc ID 745711.1)
Response Time/CPU Issues
• When users complain about response time, configure Apache to log the time it
takes to service a request.
• Access logs monitoring should be good way to keep a tab on the response times of
user requests.
– Configure Apache to log the time it takes to service a request
– Logs: $LOG_HOME/ora/10.1.3/Apache/access_log*
– Edit: $ORA_CONFIG_HOME/10.1.3/Apache/Apache/conf/httpd.conf
LogFormat "%h %T
(Or)
– Enable Execution Content ID's (ECID) for the access_log in Release 12. ECID's allow correlation of
requests across log files so that one can map the flow of a given request across the various
components of iAS.
LogFormat "%h %l %u %t [ecid: %{Oracle-ECID}i] "%r" %>s %b [%T (secs)]" combined
Refer to http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html for getting http return code definitions
Note - R12.2 replaces Oracle 10gAS OC4J containers with Weblogic managed servers.
Application Tier
11/14/2014
12
Web Applications
• Train users to logout when transactions are complete.
– Logging out gracefully releases the memory and corresponding resources (i.e. connections, etc.)
Releases process resources sooner
• JVM/OC4J Sizing + Heap Size
– OACORE, OAFORMS, OAFM etc..
– Start with no more than 100 active users per JVM/OC4J instance.
– Start with 1 active JVM/OC4J instance per CPU core
Note:- Each 'core' in a multi-core system is considered to be a separate CPU. For example, a dual quad-
core chip would be the same as stating 2 x 4 x CPU or 8 CPUs.
Useful MOS Articles
JVM: Guidelines to setup the Java Virtual Machine in Apps Ebusiness Suite 11i and R12 (Doc ID 362851.1)
MOS Note 357597.1 on how to enable SQL trace for OA Framework applications
Application Tier
11/14/2014
13
EBS Concurrent Processing Analyzer
• The EBS Concurrent Processing Analyzer is a self-service health-check script
• Reviews the overall Concurrent Processing
• Analyzes the current configurations & settings for the environment.
• Providing feedback and recommendations on best practices.
• APPS Workload (Concurrent, FORM, ICX) observations.
• Mandatory Concurrent Programs fro purging.
Sample Output
Useful MOS Articles
Application Tier
2DEMO_cp_analyzer.html
11/14/2014
14
Best Practices for Performance for Concurrent Managers in E-Business Suite [Doc ID- 1057802.1]
Concurrent Processing - CP Analyzer for E-Business Suite (Doc ID 1411723.1)
EBS Workflow Analyzer
• The EBS Workflow Analyzer is a script that reviews the current Workflow Footprint.
• Analyzes the workflow configurations & Provides feedback and makes
recommendations on best practices and areas of concern.
• Provides immediate analysis and output of the EBS Workflow environment.
• Workflow Process Stuck & Work Flow Checks
Sample Output
Useful MOS Articles
Application Tier
2DEMO_wf_analyzer.html
11/14/2014
15
How to run EBS Workflow Analyzer Tool as a Concurrent Request (Doc ID 1425053.1)
11i-12 Workflow Analyzer script for E-Business Suite Workflow Monitoring and Maintenance [Video] (Doc
ID 1369938.1)
How To Use Concurrent Program "Purge Order Management Workflow" (Doc ID 878032.1)
OAM Diagnostics Help
• Oracle Application Object Library Best Practices: Database Security Tests Health
Check Test
• Oracle Application Object Library Best Practices: E-Business Suite Security Tests
Health Check Test
• Oracle Application Object Library Best Practices: E-Business Suite Diagnostic
Tests Health Check Test
• And many more……
Application Tier
11/14/2014
16
CBO Statistics
• FND_STATS uses the standard the DBMS_STATS package, but enhances the
functionality as it provides several additional PL/SQL procedures for
gathering statistics at the table, schema, or database level.
• The FND_STATS package also supports histograms, table exclusions,
extended stats, incremental stats gathering for partitioned tables, and
concurrent statistics gathering.
Useful MOS Articles
Application Tier
11/14/2014
17
Best Practices for Gathering Statistics with Oracle E-Business Suite (Doc ID - 1586374.1)
bde_last_analyzed.sql - Verifies CBO Statistics (Doc ID - 163208.1)
Application Patching
• Thorough patch analysis with timing reports on sand box & non-prods
environments before proceeding with the Prod patching.
• In Release 12, you register your customized files in the Register Flagged Files tool
in Oracle Applications Manager (OAM), which replaces the
$APPL_TOP/admin/applcust.txt file.
Useful MOS Articles
Application Tier
11/14/2014
18
See Note 9766881 "My server does not have internet connection Can I Still use Patch Wizard?“
Patching Best Practices And Reducing Downtime (Doc ID 225165.1)
• There are two diagnostic tools available in the Oracle E-Business Suite:
The Network test Form – This form can be added to user’s menu , So that they can
run the tests when they feel a performance degradation
Note:- Network latency should be always low (<3ms) and bandwidth should be high.
Application Tier
Network & Latency
11/14/2014
19
Useful MOS Articles
The Client Analyzer
Application Tier
Network & Latency
11/14/2014
20
Oracle E-Business Suite Network Utilities: Best Practices (Doc ID 556738.1)
CPU Utilization Observations and
analysis
• CPU spikes for more than 30 minutes
continuously is a candidate for RCA.
• High DB_IO observation and
correlation with CPU usage.
• I/O Thresholds: Logical RDS >
300K/sec, Physical RDS> 3000/Sec are
candidate for RCA.
– How many of you think RAM
access is 10,000 times faster than
Physical disk access?
– In real world, LIO is only 25-100
times cheaper than PIO
– Internal locks & latch serialization
mechanisms involved.
– Targeting only PIO counts(or high
cache hit ratios) important pitfall
to avoid. Even with no PIOs, a
query can still be outrageously
inefficient
– LIO are a critical component of
query cost
Database Tier
11/14/2014
21
AWR, ASH, ADDM Reports
• Identify Top SQL, Latch Spin Counts
etc., Memory Advisors
• Identify top wait events (System, User
IO, Cluster, Concurrency,
Configuration, Applications, Network)
• Fragmented Interface tables
• Object to be pinned – (Frequently used
database objects)
• RAC Check (From Oracle RAC
assurance team) RACcheck - RAC
Configuration Audit Tool (Doc ID
1268927.1)
• ORAchk - Health Checks for the Oracle
Stack (Doc ID 1268927.2)
• Sample ORACHK report
• ORAchk-Collection Manager
– ORAchk daemon auto-start mode
after node reboot (init integration)
– Merge multiple ORAchk collection
reports
– Exclude checks based on profile
– Upload of installed patches to
database
– Collection Manager for ORAchk,
RACcheck and Exachk (Doc ID
1602329.1)
– ORAchk signature file in /tmp on
all nodes to verify last ORAchk run
– New checks and bug fixes,
including o 30 Oracle Ebusiness
AP module data integrity checks
– 12 new Database checks
– 8 new Solaris system checks
Database Tier
ORAchk-Report-Example.html
11/14/2014
22
• ADRCI has multiple features such as
– Analyze diagnostic data within the Automatic Diagnostic Repository (ADR).
– Create a package with incident / problem information for Oracle Support.
– Diagnostic data includes incident and problem descriptions, trace files,
dumps, health monitor reports, alert log entries, and more.
– Run the Health Checks
– Helps in purging old diagnostics trace & dump files
– Simple to use a rich command set
Set correct ORACLE_HOME and just enter adrci
The utility starts and displays the following prompt:
adrci>
Database Tier
11/14/2014
23
ADR Command Interpreter (ADRCI)
• At the ADRCI prompt, enter the following command:
adrci> HELP
To get help for a specific ADRCI command:
adrci> HELP command
• For example, to get help on the SHOW TRACEFILE command, enter the following:
adrci> HELP SHOW TRACEFILE
adrci> set homepath diag/rdbms/orclbi/orclbi2
adrci> show homes
ADR Homes:
diag/rdbms/orclbi/orclbi2
• To view the alert log:
1. Start ADRCI in interactive mode, and ensure that the homepath points to the
correct directory within the ADR base directory hierarchy.
Database Tier
11/14/2014
24
Useful MOS Articles
2. At the ADRCI prompt, enter the following command:
SHOW ALERT
The following are variations on the SHOW ALERT command:
SHOW ALERT -TAIL
SHOW ALERT -TAIL 50
SPOOL /tmp/MYALERT.LOG
SHOW ALERT
SPOOL OFF
This outputs the alert log, without XML tags, to the file
/tmp/MYALERT.LOG.
SHOW ALERT -P "MESSAGE_TEXT LIKE '%ORA-600%'"
Database Tier
11/14/2014
25
11G ADR DOCUMENTATION (Doc ID 445022.1)
How to Invoke ADR Command Interpreter (adrci) in FMW home? (Doc ID 1669923.1)
Database Tier
#!/bin/ksh
# # Author: Ajith Narayanan
## http://oracledbascriptsfromajith.blogspot.com
## Version 1.0
## This callout script is extended to report/mail the affected weblogic services when any Oracle cluster event occurs.
##
umask 022
FAN_LOGFILE=$ORACLE_HOME/racg/usrco/`hostname`_uptime.log
EVENTLINE=$ORACLE_HOME/racg/usrco/`hostname`_eventline.log
EVENTLINE_MID=$ORACLE_HOME/racg/usrco/`hostname`_eventline_mid.log
MAIL_CONT=$ORACLE_HOME/racg/usrco/`hostname`_mail.log
WEBLOGIC_DS=$ORACLE_HOME/racg/usrco/weblogic_ds
echo $* "reported="`date` >> $FAN_LOGFILE &
tail -1 $FAN_LOGFILE > $EVENTLINE
awk '{
for (f = 1; f <= NF; f++) { a[NR, f] = $f } } NF > nf { nf = NF } END {
for (f = 1; f <= nf; f++) { for (r = 1; r <= NR; r++) { printf a[r, f] (r==NR ? RS : FS) } }
}' $EVENTLINE > $EVENTLINE_MID
SER=`grep "service=" $EVENTLINE_MID|awk -F= '{print $2}'`
DB=`grep "database=" $EVENTLINE_MID|awk -F= '{print $2}'`
INST=`grep "instance=" $EVENTLINE_MID|awk -F= '{print $2}'`
HOST=`grep "host=" $EVENTLINE_MID|awk -F= '{print $2}'`
STAT=`grep "status=" $EVENTLINE_MID|awk -F= '{print $2}'`
if [ "$SER" != " " | "$DB" != " " | "$INST" != " " | "$HOST" != " " | "$STAT" != " " ]; then
if [ $STAT = nodedown ]; then
cat $EVENTLINE_MID > $MAIL_CONT
11/14/2014
26
Cluster callout scripts. – Quickly get alerted on any cluster events.
echo "**============================SERVICES AFFECTED===============================**" >> $MAIL_CONT
grep -i "$DB_" $WEBLOGIC_DS >> $MAIL_CONT
elif [ $STAT = up ]; then
cat $EVENTLINE_MID > $MAIL_CONT
echo "**============================SERVICES RESTORED===============================**" >> $MAIL_CONT
grep -i "$DB_" $WEBLOGIC_DS|grep "SERVICE_NAME=$SER" >> $MAIL_CONT
else
cat $EVENTLINE_MID > $MAIL_CONT
echo "**============================SERVICES AFFECTED===============================**" >> $MAIL_CONT
grep -i "$DB_" $WEBLOGIC_DS|grep "SERVICE_NAME=$SER" >> $MAIL_CONT
#fi
cat $MAIL_CONT| /bin/mail -s "Cluster $STAT event: $DB $INST $SER $HOST" ajithpathiyil@gmail.com
fi
#cat $MAIL_CONT| /bin/mail -s "Cluster $STAT event: $DB $INST $SER $HOST" ajithpathiyil@gmail.com
fi
rm $EVENTLINE $EVENTLINE_MID $MAIL_CONT
Database Tier
11/14/2014
27
Looking At Issues Proactively & From
Greater Heights
11/14/2014
28
References
• My Oracle Support
• Steven Chan’s blog (https://blogs.oracle.com/stevenChan)
11/14/2014
29
Q&A
11/14/2014
30
11/14/2014
31
Thank You!
Best practices for large oracle apps r12 implementations apps14

More Related Content

PDF
Oracle Real Application Clusters 19c- Best Practices and Internals- EMEA Tour...
PPTX
oracle ebs free web service integration tools
DOC
Garbage Collection, Tuning And Monitoring JVM In EBS 11i And R12
PDF
Database option SDO mismatch: PDB installed version 12.1.0.2.0. CDB installed...
PPTX
Oracle GoldenGate Performance Tuning
DOCX
Oracle architecture
PPTX
[Oracle DBA & Developer Day 2014] しばちょう先生による特別講義! RMANの運用と高速化チューニング
PPTX
Oracle RAC features on Exadata
Oracle Real Application Clusters 19c- Best Practices and Internals- EMEA Tour...
oracle ebs free web service integration tools
Garbage Collection, Tuning And Monitoring JVM In EBS 11i And R12
Database option SDO mismatch: PDB installed version 12.1.0.2.0. CDB installed...
Oracle GoldenGate Performance Tuning
Oracle architecture
[Oracle DBA & Developer Day 2014] しばちょう先生による特別講義! RMANの運用と高速化チューニング
Oracle RAC features on Exadata

What's hot (20)

PDF
Active dataguard
PDF
Preparing for EBS R12.2-upgrade-full
DOCX
Rac questions
PPTX
Data Guard Architecture & Setup
PDF
Oracle RAC Virtualized - In VMs, in Containers, On-premises, and in the Cloud
PDF
Understanding oracle rac internals part 1 - slides
PDF
Architecture of exadata database machine – Part II
PPTX
What to Expect From Oracle database 19c
PDF
Best Practices for the Most Impactful Oracle Database 18c and 19c Features
PDF
OOW15 - managing oracle e-business suite auditing and security
PDF
Understanding oracle rac internals part 2 - slides
PDF
Oracle WebLogic Server製品紹介資料(2020年/3月版)
PDF
EBS-technical_upgrade_best_practices 12.1 or 12.2
PDF
OOW16 - Oracle E-Business Suite Integration Best Practices [CON6709]
PDF
Clone Oracle Databases In Minutes Without Risk Using Enterprise Manager 13c
PDF
Oracle Extended Clusters for Oracle RAC
PDF
Oracle GoldenGate FAQ
PPT
Dataguard presentation
PDF
Oracle E-Business Suite R12.2.5 on Database 12c: Install, Patch and Administer
PDF
Oracle 12c PDB insights
Active dataguard
Preparing for EBS R12.2-upgrade-full
Rac questions
Data Guard Architecture & Setup
Oracle RAC Virtualized - In VMs, in Containers, On-premises, and in the Cloud
Understanding oracle rac internals part 1 - slides
Architecture of exadata database machine – Part II
What to Expect From Oracle database 19c
Best Practices for the Most Impactful Oracle Database 18c and 19c Features
OOW15 - managing oracle e-business suite auditing and security
Understanding oracle rac internals part 2 - slides
Oracle WebLogic Server製品紹介資料(2020年/3月版)
EBS-technical_upgrade_best_practices 12.1 or 12.2
OOW16 - Oracle E-Business Suite Integration Best Practices [CON6709]
Clone Oracle Databases In Minutes Without Risk Using Enterprise Manager 13c
Oracle Extended Clusters for Oracle RAC
Oracle GoldenGate FAQ
Dataguard presentation
Oracle E-Business Suite R12.2.5 on Database 12c: Install, Patch and Administer
Oracle 12c PDB insights
Ad

Viewers also liked (12)

PDF
Best practices for_large_oracle_apps_r12_implementations
PDF
Oracle ERP Cloud
PDF
OOW15 - Getting Optimal Performance from Oracle E-Business Suite
PDF
OOW15 - Simplified and Touch-Friendly User Interface in Oracle E-Business Suite
PDF
OOW15 - Installation, Cloning, and Configuration of Oracle E-Business Suite 12.2
PDF
OOW15 - personalize and extend oracle ebs for desktops and tablets
PDF
OOW16 - Oracle E-Business Suite Information Discovery: Your Journey to the Cl...
PDF
OOW16 - Planning Your Upgrade to Oracle E-Business Suite 12.2 [CON1423]
PDF
OOW16 - Technical Upgrade Best Practices for Oracle E-Business Suite 12.2 [CO...
PDF
OOW16 - Oracle E-Business Suite: What’s New in Release 12.2 Beyond Online Pat...
PDF
Oracle e-business suite (ebs) r12.2.6 - new functionality
PDF
OOW15 - Oracle E-Business Suite Technology: Latest Features and Roadmap
Best practices for_large_oracle_apps_r12_implementations
Oracle ERP Cloud
OOW15 - Getting Optimal Performance from Oracle E-Business Suite
OOW15 - Simplified and Touch-Friendly User Interface in Oracle E-Business Suite
OOW15 - Installation, Cloning, and Configuration of Oracle E-Business Suite 12.2
OOW15 - personalize and extend oracle ebs for desktops and tablets
OOW16 - Oracle E-Business Suite Information Discovery: Your Journey to the Cl...
OOW16 - Planning Your Upgrade to Oracle E-Business Suite 12.2 [CON1423]
OOW16 - Technical Upgrade Best Practices for Oracle E-Business Suite 12.2 [CO...
OOW16 - Oracle E-Business Suite: What’s New in Release 12.2 Beyond Online Pat...
Oracle e-business suite (ebs) r12.2.6 - new functionality
OOW15 - Oracle E-Business Suite Technology: Latest Features and Roadmap
Ad

Similar to Best practices for large oracle apps r12 implementations apps14 (20)

PDF
OOW16 - Getting Optimal Performance from Oracle E-Business Suite [CON6711]
PDF
Con8289 r12 maintenance tips heisler heisler-con8289
PPTX
Oracle EBS Production Support - Recommendations
PDF
Ebs performance tuning session feb 13 2013---Presented by Oracle
PDF
ebs-performance-tuning-part-1-470542.pdf
PDF
OOW16 - Maintenance Strategies for Oracle E-Business Suite [CON6725]
PPT
Collaborate 2011-tuning-ebusiness-416502
PPTX
Oracle EBS R12.2 - Deployment and System Administration
PPTX
Performance Assurance for Packaged Applications
PDF
collab2011-tuning-ebusiness-421966.pdf
PDF
Ebs performance tune_con9030_pdf_9030_0001
PDF
2. oracle days sebastiaan vingerhoed_buckarest_november3rd
PDF
cmandtracing-1560359.pdf
PDF
OOW15 - Oracle Enterprise Manager Cloud Control for Managing Oracle E-Busines...
PPTX
Oracle EBS database upgrade to 12c
PPT
Managing EBS Testing, Performance, Configurations, Change & User experience
PPT
Adop and maintenance task presentation 151015
PDF
Summer training oracle
PDF
Ebs performance tune2_con9030_pdf_9030_0002
PDF
AskTom: How to Make and Test Your Application "Oracle RAC Ready"?
OOW16 - Getting Optimal Performance from Oracle E-Business Suite [CON6711]
Con8289 r12 maintenance tips heisler heisler-con8289
Oracle EBS Production Support - Recommendations
Ebs performance tuning session feb 13 2013---Presented by Oracle
ebs-performance-tuning-part-1-470542.pdf
OOW16 - Maintenance Strategies for Oracle E-Business Suite [CON6725]
Collaborate 2011-tuning-ebusiness-416502
Oracle EBS R12.2 - Deployment and System Administration
Performance Assurance for Packaged Applications
collab2011-tuning-ebusiness-421966.pdf
Ebs performance tune_con9030_pdf_9030_0001
2. oracle days sebastiaan vingerhoed_buckarest_november3rd
cmandtracing-1560359.pdf
OOW15 - Oracle Enterprise Manager Cloud Control for Managing Oracle E-Busines...
Oracle EBS database upgrade to 12c
Managing EBS Testing, Performance, Configurations, Change & User experience
Adop and maintenance task presentation 151015
Summer training oracle
Ebs performance tune2_con9030_pdf_9030_0002
AskTom: How to Make and Test Your Application "Oracle RAC Ready"?

More from Ajith Narayanan (11)

PPTX
Analyze database system using a 3 d method
PPTX
Oracle applications r12.2, ebr, online patching means lot of work for devel...
PPTX
How oracle 12c flexes its muscles against oracle 11g r2 final
PPTX
Crack the complexity of oracle applications r12 workload v2
PPTX
Oracle real application clusters system tests with demo
PDF
Oracle databasecapacityanalysisusingstatisticalmethods
PDF
Create your oracle_apps_r12_lab_with_less_than_us1000
PDF
Why is my_oracle_e-biz_database_slow_a_million_dollar_question
PDF
Performance Tuning Oracle Weblogic Server 12c
PPTX
Oracle ebs capacity_analysisusingstatisticalmethods
PDF
An introduction to_rac_system_test_planning_methods
Analyze database system using a 3 d method
Oracle applications r12.2, ebr, online patching means lot of work for devel...
How oracle 12c flexes its muscles against oracle 11g r2 final
Crack the complexity of oracle applications r12 workload v2
Oracle real application clusters system tests with demo
Oracle databasecapacityanalysisusingstatisticalmethods
Create your oracle_apps_r12_lab_with_less_than_us1000
Why is my_oracle_e-biz_database_slow_a_million_dollar_question
Performance Tuning Oracle Weblogic Server 12c
Oracle ebs capacity_analysisusingstatisticalmethods
An introduction to_rac_system_test_planning_methods

Recently uploaded (20)

PDF
Overview of Fundamentals of Project Management
PDF
Criminology Midterm-Ed Gein Presentation
PPTX
History Subject for High School_ Military Dictatorships by Slidesgo.pptx
PPTX
08mendelian-genetics-punnett-square.pptx
PPTX
Challenges, strengths and prospects of Pakistan in.pptx
PPTX
1_055gggggggggggh054_مراجعهالاختبار.pptx
PDF
Community User Group Leaders_ Agentblazer Status, AI Sustainability, and Work...
PDF
Yoken Capital Network Presentation Slide
PDF
The History of COBSI, a Community-based Smallholder Irrigation, and its Regio...
PDF
Lessons Learned building a product with clean core abap
PPTX
Special Occasion Speech by NBA YoungBoy.pptx
PDF
Enhancing the Value of African Agricultural Products through Intellectual Pro...
PDF
Echoes of AccountabilityComputational Analysis of Post-Junta Parliamentary Qu...
PPTX
Training for Village Watershed Volunteers.pptx
PPTX
Family and technology lecture notes.pptx
PDF
Unit 3 Ratio Analysis.pdf xdvdssdfsdfsd sdf
PDF
Financial Managememt CA1 for Makaut Student
PPTX
Swadesh sapthaha - Athma Nirbhar Bharath.
PDF
Pitch Perfect Minimal Presentation for PPT
PPTX
Brief presentation for multiple products
Overview of Fundamentals of Project Management
Criminology Midterm-Ed Gein Presentation
History Subject for High School_ Military Dictatorships by Slidesgo.pptx
08mendelian-genetics-punnett-square.pptx
Challenges, strengths and prospects of Pakistan in.pptx
1_055gggggggggggh054_مراجعهالاختبار.pptx
Community User Group Leaders_ Agentblazer Status, AI Sustainability, and Work...
Yoken Capital Network Presentation Slide
The History of COBSI, a Community-based Smallholder Irrigation, and its Regio...
Lessons Learned building a product with clean core abap
Special Occasion Speech by NBA YoungBoy.pptx
Enhancing the Value of African Agricultural Products through Intellectual Pro...
Echoes of AccountabilityComputational Analysis of Post-Junta Parliamentary Qu...
Training for Village Watershed Volunteers.pptx
Family and technology lecture notes.pptx
Unit 3 Ratio Analysis.pdf xdvdssdfsdfsd sdf
Financial Managememt CA1 for Makaut Student
Swadesh sapthaha - Athma Nirbhar Bharath.
Pitch Perfect Minimal Presentation for PPT
Brief presentation for multiple products

Best practices for large oracle apps r12 implementations apps14

  • 1. Imagination at work. Ajith Narayanan Technical Lead-Oracle ERP Configuration Management GE Healthcare, Bangalore, India 8th Dec-2014, Liverpool, U.K. Best Practices For Large Oracle Apps R12 Implementations
  • 3. The views/contents in this slides are those of the author and do not necessarily reflect that of General Electric Company or Oracle Corporation and/or their respective affiliates/subsidiaries. The material in this document is for informational purposes only, and is provided on an AS-IS basis. 11/14/2014 3
  • 4. Who Am I? Ajith Narayanan Technical Lead – Oracle ERP Configuration Management GE Healthcare, Bangalore, India • 10 years of Oracle [APPS] DBA/Technical Architect experience. • Oracle ACE Associate • Blogger :- http://oracledbascriptsfromajith.blogspot.com • Member:-OAUG, AIOUG • Website Chair (2011-2013) – Oracle RACSIG http://www.oracleracsig.org • AIOUG Real Application Clusters SIG Leader 11/14/2014 4
  • 5. Agenda Why do we need to implement best practices? • Application Tier • R12 Tech Stack • Forms • Response Time • Web Applications • Concurrent Manager • Workflow Engine • Taking Diagnostics Help • CBO Statistics • Application Patching • Network & Latency Check 11/14/2014 5
  • 6. Agenda • Database Tier • CPU Utilization Observations and analysis • High DB_IO observation and correlation with CPU usage. • Identify Top SQLs • Effective usage of AWR, ADDM Reports • ORACHK Check (From Oracle RAC assurance team) • ADR Command Interpreter (ADRCI) • Cluster Callout scripts example. • Looking At Issues Proactively & From Greater Heights • References • Q & A 11/14/2014 6
  • 7. Why do we need to implement best practices? 11/14/2014 7
  • 8. Oracle Applications R12 • Huge infrastructure – Oracle Applications R12 – 8 Node middle tiers – 16 Node RAC database tier. – Database Size 40+ TB – Annual DB growth of 2 TB – Daily Orders: 45 K –3 M order lines – 1500 online users – 1M+ XML messages/day Best Practices • Benefits – Enables us being proactive – simple in terms of manageability – Helps in support cost reduction. – Time & effort saving Why do we need to implement best practices? 11/14/2014 8
  • 9. Upgrade Tech Stack • R12 Tech Stack • OC4J: Oracle AS 10g 10.1.3./ Weblogic Managed Servers (FMW) • Forms: Oracle AS 10.1.2 • JAVA, JRE Plugin Useful MOS Articles Oracle E-Business Suite Technology Stack Release Notes for Release 12.1.3 (MOS Note - 1098650.1) Oracle E-Business Suite Technology Stack Release Notes for Release 12.2* Oracle E-Business Suite - Technology Stack : Navigation (landing) Page (MOS Note - 1480550.1) Troubleshooting Assistant: EBS Technology Stack (Doc ID 1607365.2) Application Tier 11/14/2014 9
  • 11. Forms • Socket Mode for Internal users (MOS 384241.1) • Servlet mode is default in R12 and recommended for external access. – cat $FORMS_WEB_CONFIG_FILE|grep serverURL= If the serverURL parameter has no value then Forms is implemented in socket mode else it is servlet • Forms dead client detection (DCD) and Abnormal termination handler. – Value specified in minutes : FORMS_TIMEOUT=10 env | grep -i FORMS_TIMEOUT – Terminates fwebmx processes for dead clients. – Enable Forms Abnormal Termination Handle – Do not set FORMS_CATCHTERM – SQLNET.EXPIRE_TIME – Probes client connection at regular interval. Useful MOS Articles Application Tier 11/14/2014 11 Forms Process (FRMWEB) Consumes 100% of CPU in Oracle Applications R12 (Doc ID 745711.1)
  • 12. Response Time/CPU Issues • When users complain about response time, configure Apache to log the time it takes to service a request. • Access logs monitoring should be good way to keep a tab on the response times of user requests. – Configure Apache to log the time it takes to service a request – Logs: $LOG_HOME/ora/10.1.3/Apache/access_log* – Edit: $ORA_CONFIG_HOME/10.1.3/Apache/Apache/conf/httpd.conf LogFormat "%h %T (Or) – Enable Execution Content ID's (ECID) for the access_log in Release 12. ECID's allow correlation of requests across log files so that one can map the flow of a given request across the various components of iAS. LogFormat "%h %l %u %t [ecid: %{Oracle-ECID}i] "%r" %>s %b [%T (secs)]" combined Refer to http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html for getting http return code definitions Note - R12.2 replaces Oracle 10gAS OC4J containers with Weblogic managed servers. Application Tier 11/14/2014 12
  • 13. Web Applications • Train users to logout when transactions are complete. – Logging out gracefully releases the memory and corresponding resources (i.e. connections, etc.) Releases process resources sooner • JVM/OC4J Sizing + Heap Size – OACORE, OAFORMS, OAFM etc.. – Start with no more than 100 active users per JVM/OC4J instance. – Start with 1 active JVM/OC4J instance per CPU core Note:- Each 'core' in a multi-core system is considered to be a separate CPU. For example, a dual quad- core chip would be the same as stating 2 x 4 x CPU or 8 CPUs. Useful MOS Articles JVM: Guidelines to setup the Java Virtual Machine in Apps Ebusiness Suite 11i and R12 (Doc ID 362851.1) MOS Note 357597.1 on how to enable SQL trace for OA Framework applications Application Tier 11/14/2014 13
  • 14. EBS Concurrent Processing Analyzer • The EBS Concurrent Processing Analyzer is a self-service health-check script • Reviews the overall Concurrent Processing • Analyzes the current configurations & settings for the environment. • Providing feedback and recommendations on best practices. • APPS Workload (Concurrent, FORM, ICX) observations. • Mandatory Concurrent Programs fro purging. Sample Output Useful MOS Articles Application Tier 2DEMO_cp_analyzer.html 11/14/2014 14 Best Practices for Performance for Concurrent Managers in E-Business Suite [Doc ID- 1057802.1] Concurrent Processing - CP Analyzer for E-Business Suite (Doc ID 1411723.1)
  • 15. EBS Workflow Analyzer • The EBS Workflow Analyzer is a script that reviews the current Workflow Footprint. • Analyzes the workflow configurations & Provides feedback and makes recommendations on best practices and areas of concern. • Provides immediate analysis and output of the EBS Workflow environment. • Workflow Process Stuck & Work Flow Checks Sample Output Useful MOS Articles Application Tier 2DEMO_wf_analyzer.html 11/14/2014 15 How to run EBS Workflow Analyzer Tool as a Concurrent Request (Doc ID 1425053.1) 11i-12 Workflow Analyzer script for E-Business Suite Workflow Monitoring and Maintenance [Video] (Doc ID 1369938.1) How To Use Concurrent Program "Purge Order Management Workflow" (Doc ID 878032.1)
  • 16. OAM Diagnostics Help • Oracle Application Object Library Best Practices: Database Security Tests Health Check Test • Oracle Application Object Library Best Practices: E-Business Suite Security Tests Health Check Test • Oracle Application Object Library Best Practices: E-Business Suite Diagnostic Tests Health Check Test • And many more…… Application Tier 11/14/2014 16
  • 17. CBO Statistics • FND_STATS uses the standard the DBMS_STATS package, but enhances the functionality as it provides several additional PL/SQL procedures for gathering statistics at the table, schema, or database level. • The FND_STATS package also supports histograms, table exclusions, extended stats, incremental stats gathering for partitioned tables, and concurrent statistics gathering. Useful MOS Articles Application Tier 11/14/2014 17 Best Practices for Gathering Statistics with Oracle E-Business Suite (Doc ID - 1586374.1) bde_last_analyzed.sql - Verifies CBO Statistics (Doc ID - 163208.1)
  • 18. Application Patching • Thorough patch analysis with timing reports on sand box & non-prods environments before proceeding with the Prod patching. • In Release 12, you register your customized files in the Register Flagged Files tool in Oracle Applications Manager (OAM), which replaces the $APPL_TOP/admin/applcust.txt file. Useful MOS Articles Application Tier 11/14/2014 18 See Note 9766881 "My server does not have internet connection Can I Still use Patch Wizard?“ Patching Best Practices And Reducing Downtime (Doc ID 225165.1)
  • 19. • There are two diagnostic tools available in the Oracle E-Business Suite: The Network test Form – This form can be added to user’s menu , So that they can run the tests when they feel a performance degradation Note:- Network latency should be always low (<3ms) and bandwidth should be high. Application Tier Network & Latency 11/14/2014 19
  • 20. Useful MOS Articles The Client Analyzer Application Tier Network & Latency 11/14/2014 20 Oracle E-Business Suite Network Utilities: Best Practices (Doc ID 556738.1)
  • 21. CPU Utilization Observations and analysis • CPU spikes for more than 30 minutes continuously is a candidate for RCA. • High DB_IO observation and correlation with CPU usage. • I/O Thresholds: Logical RDS > 300K/sec, Physical RDS> 3000/Sec are candidate for RCA. – How many of you think RAM access is 10,000 times faster than Physical disk access? – In real world, LIO is only 25-100 times cheaper than PIO – Internal locks & latch serialization mechanisms involved. – Targeting only PIO counts(or high cache hit ratios) important pitfall to avoid. Even with no PIOs, a query can still be outrageously inefficient – LIO are a critical component of query cost Database Tier 11/14/2014 21
  • 22. AWR, ASH, ADDM Reports • Identify Top SQL, Latch Spin Counts etc., Memory Advisors • Identify top wait events (System, User IO, Cluster, Concurrency, Configuration, Applications, Network) • Fragmented Interface tables • Object to be pinned – (Frequently used database objects) • RAC Check (From Oracle RAC assurance team) RACcheck - RAC Configuration Audit Tool (Doc ID 1268927.1) • ORAchk - Health Checks for the Oracle Stack (Doc ID 1268927.2) • Sample ORACHK report • ORAchk-Collection Manager – ORAchk daemon auto-start mode after node reboot (init integration) – Merge multiple ORAchk collection reports – Exclude checks based on profile – Upload of installed patches to database – Collection Manager for ORAchk, RACcheck and Exachk (Doc ID 1602329.1) – ORAchk signature file in /tmp on all nodes to verify last ORAchk run – New checks and bug fixes, including o 30 Oracle Ebusiness AP module data integrity checks – 12 new Database checks – 8 new Solaris system checks Database Tier ORAchk-Report-Example.html 11/14/2014 22
  • 23. • ADRCI has multiple features such as – Analyze diagnostic data within the Automatic Diagnostic Repository (ADR). – Create a package with incident / problem information for Oracle Support. – Diagnostic data includes incident and problem descriptions, trace files, dumps, health monitor reports, alert log entries, and more. – Run the Health Checks – Helps in purging old diagnostics trace & dump files – Simple to use a rich command set Set correct ORACLE_HOME and just enter adrci The utility starts and displays the following prompt: adrci> Database Tier 11/14/2014 23 ADR Command Interpreter (ADRCI)
  • 24. • At the ADRCI prompt, enter the following command: adrci> HELP To get help for a specific ADRCI command: adrci> HELP command • For example, to get help on the SHOW TRACEFILE command, enter the following: adrci> HELP SHOW TRACEFILE adrci> set homepath diag/rdbms/orclbi/orclbi2 adrci> show homes ADR Homes: diag/rdbms/orclbi/orclbi2 • To view the alert log: 1. Start ADRCI in interactive mode, and ensure that the homepath points to the correct directory within the ADR base directory hierarchy. Database Tier 11/14/2014 24
  • 25. Useful MOS Articles 2. At the ADRCI prompt, enter the following command: SHOW ALERT The following are variations on the SHOW ALERT command: SHOW ALERT -TAIL SHOW ALERT -TAIL 50 SPOOL /tmp/MYALERT.LOG SHOW ALERT SPOOL OFF This outputs the alert log, without XML tags, to the file /tmp/MYALERT.LOG. SHOW ALERT -P "MESSAGE_TEXT LIKE '%ORA-600%'" Database Tier 11/14/2014 25 11G ADR DOCUMENTATION (Doc ID 445022.1) How to Invoke ADR Command Interpreter (adrci) in FMW home? (Doc ID 1669923.1)
  • 26. Database Tier #!/bin/ksh # # Author: Ajith Narayanan ## http://oracledbascriptsfromajith.blogspot.com ## Version 1.0 ## This callout script is extended to report/mail the affected weblogic services when any Oracle cluster event occurs. ## umask 022 FAN_LOGFILE=$ORACLE_HOME/racg/usrco/`hostname`_uptime.log EVENTLINE=$ORACLE_HOME/racg/usrco/`hostname`_eventline.log EVENTLINE_MID=$ORACLE_HOME/racg/usrco/`hostname`_eventline_mid.log MAIL_CONT=$ORACLE_HOME/racg/usrco/`hostname`_mail.log WEBLOGIC_DS=$ORACLE_HOME/racg/usrco/weblogic_ds echo $* "reported="`date` >> $FAN_LOGFILE & tail -1 $FAN_LOGFILE > $EVENTLINE awk '{ for (f = 1; f <= NF; f++) { a[NR, f] = $f } } NF > nf { nf = NF } END { for (f = 1; f <= nf; f++) { for (r = 1; r <= NR; r++) { printf a[r, f] (r==NR ? RS : FS) } } }' $EVENTLINE > $EVENTLINE_MID SER=`grep "service=" $EVENTLINE_MID|awk -F= '{print $2}'` DB=`grep "database=" $EVENTLINE_MID|awk -F= '{print $2}'` INST=`grep "instance=" $EVENTLINE_MID|awk -F= '{print $2}'` HOST=`grep "host=" $EVENTLINE_MID|awk -F= '{print $2}'` STAT=`grep "status=" $EVENTLINE_MID|awk -F= '{print $2}'` if [ "$SER" != " " | "$DB" != " " | "$INST" != " " | "$HOST" != " " | "$STAT" != " " ]; then if [ $STAT = nodedown ]; then cat $EVENTLINE_MID > $MAIL_CONT 11/14/2014 26 Cluster callout scripts. – Quickly get alerted on any cluster events.
  • 27. echo "**============================SERVICES AFFECTED===============================**" >> $MAIL_CONT grep -i "$DB_" $WEBLOGIC_DS >> $MAIL_CONT elif [ $STAT = up ]; then cat $EVENTLINE_MID > $MAIL_CONT echo "**============================SERVICES RESTORED===============================**" >> $MAIL_CONT grep -i "$DB_" $WEBLOGIC_DS|grep "SERVICE_NAME=$SER" >> $MAIL_CONT else cat $EVENTLINE_MID > $MAIL_CONT echo "**============================SERVICES AFFECTED===============================**" >> $MAIL_CONT grep -i "$DB_" $WEBLOGIC_DS|grep "SERVICE_NAME=$SER" >> $MAIL_CONT #fi cat $MAIL_CONT| /bin/mail -s "Cluster $STAT event: $DB $INST $SER $HOST" [email protected] fi #cat $MAIL_CONT| /bin/mail -s "Cluster $STAT event: $DB $INST $SER $HOST" [email protected] fi rm $EVENTLINE $EVENTLINE_MID $MAIL_CONT Database Tier 11/14/2014 27
  • 28. Looking At Issues Proactively & From Greater Heights 11/14/2014 28
  • 29. References • My Oracle Support • Steven Chan’s blog (https://blogs.oracle.com/stevenChan) 11/14/2014 29