eppm upgrade
DESCRIPTION
UPgradeTRANSCRIPT
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted1
Architecture, Performance And Scalability Considerations For A P6 EPPM Upgrade
Matt Leeson
Principal Technical Engineer
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted3
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.
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted4
Program Agenda
Architecture of The P6 EPPM Suite
Performance and Scalability Considerations
Lessons Learned From P6 EPPM Implementations
Q & A
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted5
Architecture Of The P6 EPPM Suite
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted6
Architecture Of The P6 EPPM Suite
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted7
Architecture Of The P6 EPPM Suite
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted8
Architecture Of The P6 EPPM Suite
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted9
Architecture Of The P6 EPPM Suite
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted10
Architecture Of The P6 EPPM Suite
Considerations When Upgrading From P6 EPPM v7.0 or earlier
– P6 Web Changes
Interface to use for administrative tasks and Global Dictionaries
– Job Services Changes
Re-architected to be platform independent, robust, reliable, and highly scalable
Can run following on-demand services as scheduled services in P6: Summarize
Project, Schedule Project, Level Project Resources, Apply Actuals
Have to use the Windows command line interface to run batch reports and
export projects as a service
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted11
Architecture Of The P6 EPPM Suite
Considerations When Upgrading From P6 EPPM v7.0 or earlier
– Reporting Changes
P6 now has additional tables (P6 EPPM Extended Schema) that support
reporting directly from the P6 database.
Allows for near real-time reporting, improved storage, BI Publisher 11g support,
SQL server support, and improved security.
– Workflow Changes
Support for Oracle BPM 10g or 11g for workflows and reviews.
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted12
Architecture Of The P6 EPPM Suite
Considerations When Upgrading From P6 EPPM v7.0 or earlier
– Content Repository Changes
Support Oracle Universal Content Management or Microsoft SharePoint for your
content repository.
JackRabbit Content Repository Migration to Oracle Universal Content
Management (OUCM) (Doc ID 1283730.1)
– Methodology Management and Project Architect Changes
Methodology Management and Project Architect have been removed and
replaced with Project Templates in P6
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted13
Architecture Of The P6 EPPM Suite
Considerations When Upgrading From P6 EPPM v7.0 or earlier
– P6 Team Member Mobile and Email Statusing Service
New methods for Team Members to update their status
– P6 Team Member for iPhone
– P6 Team Member Web
– E-mail Statusing Service
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted14
Architecture Of The P6 EPPM Suite
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted15
Architecture Of The P6 EPPM Suite
Small Deployments, non-clustered
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted16
Architecture Of The P6 EPPM Suite
Medium Deployment, clustered
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted17
Architecture Of The P6 EPPM Suite
Large Deployment, clustered
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted18
Performance & Scalability Considerations
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted19
Performance and Scalability Considerations
Two Categories:
– Vertical Scaling (scaling up)
– Horizontal Scaling (scaling out)
Can decide which to use based on:
– Desired level of performance
– Availability requirements
– Short term versus long term outlook of system usage
– Seasonality and frequently used application areas
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted20
Vertical Scaling
Vertical Scaling (Scaling up)
– Adding additional resources, or upgrading resources on an existing system.
– Good approach if the application bottlenecks are processor and memory-related.
– Usually includes increase in JVM Heap, Hardware, Operating System
JVM Heap
– The application objects (such as Projects, Activities, Assignments, etc.) are stored in
the Java Virtual Machine (JVM) heap allocation.
– Most of these objects are short-lived, and are periodically cleaned up by the JVM’s
garbage collection mechanism.
– As the number of concurrent users increases, performance and scalability is
affected by the available heap space in the JVM.
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted21
Vertical Scaling
Hardware Upgrades
– Upgrading the CPU
– Adding extra cores
– Upgrading to faster I/O devices
– Upgrading from 32-bit to 64-bit hardware
Operating System Upgrades
– Upgrading to latest versions of the operating system
– Installing the latest patch updates,
– Upgrading from a 32-bit to a 64-bit architecture
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted22
Horizontal Scaling
Horizontal Scaling (scaling out)
– Adding additional nodes to an existing application server or database cluster to
handle the increased system load.
– For high availability requirements, horizontal scaling is the better option.
Adding Application Server Nodes
– Should be considered to manage seasonality.
– Provides scalability without interruption of service.
– Provides high-availability so application processing can continue when a server
instance fails.
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted23
Horizontal Scaling
Database Scaling and Clustering
– Provides scalability to enhance the total database engine computing power
– Provides predictable performance as the number of users or the size of the
database increases.
– Provides high-availability so application processing can continue when one of the
nodes fail.
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted24
Database Performance Tuning Tips
Oracle Database
– Memory Tuning:
Properly size your database buffers
– Disk I/O Tuning:
Properly place and size database files to provide maximum disk subsystem throughput.
– Eliminate Database Contention:
Study database locks, latches and wait events carefully and eliminate where possible.
– Tune the Operating System:
Monitor and tune operating system CPU, I/O and memory utilization.
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted25
Database Performance Tuning Tips
SQL Server Database
– Memory Tuning
Automatically maintained
– Snapshot Isolation
Used to avoid reader-writer blocking scenarios
– Index Tuning
Used to avoid fragmentation which leads to degraded query performance
– Statistics
Used to avoid the database query optimizer from choosing an efficient execution plan
Best Practices For Performance Tuning Of The P6 EPPM Database (Doc ID 1327603.1)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted26
Database Performance Tuning Tips
Oracle & SQL Server Database
– Database Design & Application Tuning:
80% of all system performance problems are resolved through coding optimal SQL through
the application and better database design.
Also consider proper scheduling of batch tasks after peak working hours.
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted27
Database Performance Monitoring Tools
Database
– Oracle Performance Monitoring
ADDM (Automated Database Diagnostics Monitor)
SQL Trace and TKProf
Statspack or AWR (Automatic Workload Repository) Report
Oracle Enterprise Manager - Tuning Pack (cost option)
– SQL Server Performance Monitoring Tools
SQL Server Profiler
System Monitor
Activity Monitor
Database Engine Tuning Advisor
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted28
Database Performance Monitoring Tools
Database
– Database Tracing:
Recommendations For Obtaining An Oracle Database Session Trace For Performance
Troubleshooting Of The Project Management Client Application (Doc ID 891566.1)
How To Obtain Database Trace Information From MS SQL Server Using SQL Profiler (Doc
ID 913465.1)
Primavera SQL Monitor For P6 Project Management (Doc ID 910590.1)
How To Trace SQL And Java From The P6 Web Access Server (Doc ID 894429.1)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted29
App Server Performance Tuning Tips
Application Server
– JRockit versus Sun JDK
No significant performances differences between the JVM’s
– Memory and CPU Tuning:
Set initial/minimal heap size & maximum heap size appropriately
Oracle recommends setting the minimum heap size (-Xms) equal to the maximum heap size
(-Xmx) to minimize garbage collections.
Target CPU utilization at 70-80% before horizontal or vertical scaling
– Configure a separate JVM for P6 Services:
How To Configure a Separate Server Or Java Process for P6 Services (Job Services) in P6
EPPM r8.1 And Later Releases (Doc ID 1357440.1)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted30
App Server Performance Monitoring Tools
Application Server
– Performance Monitoring
– Java VisualVM: http://docs.oracle.com/javase/6/docs/technotes/guides/visualvm/index.html
– Jconsole: http://docs.oracle.com/javase/6/docs/technotes/guides/management/jconsole.html
– JRockit Management Console:
http://www.oracle.com/technetwork/middleware/jrockit/overview/index-090630.html
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted31
App Server Performance Monitoring Tools
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted32
Lessons Learned From P6 EPPM Implementations
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted33
Deployment Considerations
P6 Application Server
– P6 Services
Includes: Summarizer, Scheduler, Leveler, Apply Actuals, Publications
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted34
Deployment Considerations
P6 Application Server
– P6 Services (cont.)
Number of concurrent jobs greatly affects the CPU, memory requirements of the application
server, and load on the database servers.
For most deployment categories, recommend setting up a dedicated java process to run P6
service activity and removing services from the application server processes serving web
requests
For long running jobs, recommend scheduling the job when the load on system is low
For initial run of Publication Services, recommend running on long duration of off-peak hours
(such as a weekend).
For heavy data intensive jobs (such as summarizing an entire EPS), recommend sequential
runs versus concurrent scheduling.
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted35
Deployment Considerations
P6 Application Server
– P6 Services (cont.)
Factors which can impact the response of Project Publication:
– Number of activities/assignments
– Length of project
– Length of publication date range
– Number of financial periods
Tune the service settings available & Scale by deploying multiple instances of P6 Services
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted36
Deployment Considerations
P6 Application Server
– P6 Services (cont.)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted37
Deployment Considerations
P6 Application Server
– P6 Services (cont.)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted38
Deployment Considerations
P6 Application Server
– Activity Gantt
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted39
Deployment Considerations
P6 Application Server
– Activity Gantt
Can load up to 100 thousand activities
Factors which can impact the response of the Activity Gantt:
– Number of activities/assignments
– Number of activity relationships
– Number of open projects
– Project length
– Depth of WBS hierarchy
– Activities/assignments length
– Amount of client-side memory allocated
– View being used
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted40
Deployment Considerations
P6 Application Server
– Resource Management
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted41
Deployment Considerations
P6 Application Server
– Resource Management
Factors which can impact the response of the Activity Gantt:
– Number of resources
– Number of resource assignments to activities
– Number of open projects
– Filter usage
– Project length
– Depth of WBS hierarchy
– Amount of client-side memory allocated to the JRE and applets
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted42
Deployment Considerations
P6 Application Server
– Risks
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted43
Deployment Considerations
P6 Application Server
– Risks
Factors which can impact the response of the Activity Gantt:
– Number of risks
– Number of activity assignments to risk
– Number of open projects
– Number of risk scoring matrix assignments
– Number of response plan assignments
– Amount of client side memory allocated to the JRE and applets
– Other load on the application server
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted44
Deployment Considerations
P6 Web Client (Browser)
– Number of concurrent users
– Activities performed within each user session
Activity Gantt, Resource Planning, P6 Services, Reporting
– Maximum Memory Allocated to Applets
How To Improve Applet Performance In P6 When Working With Larger Datasets (Doc ID 1397987.1)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted45
Deployment Considerations
P6 Web Client (Browser)
– Java Runtime Environment Settings
How To Allow More JRE Client Side Memory for Loading Applets In P6 And Override The
'Maximum memory allocated to Java Applets' Variable In The P6 Configuration (Doc ID
1389862.1)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted46
Deployment Considerations
Application Versions
– R8.2 Patch 16361945 - P6 Release 8.2 Service Pack 1 HotFix 22
[SQL] Bug 15829348 - job remains at delegated; pending child jobs never complete and
running jobs = 0
[SQL] Bug 13904862 -
org.springframework.dao.deadlockloserdataaccessexception:preparedstatementcallba
Bug 15876661 - view service status window in p6 web takes several minutes to open
Bug 15877189 - 'published security' svc takes long time to complete and inserts duplicates
rows
Bug 14583845 - p6 web freezes when clicking eps view
Bug 15892160 - summarization uses individual spread objs to be created in db not batch
commit
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted47
Deployment Considerations
Application Versions
– R8.2 Patch 16361945 - P6 Release 8.2 Service Pack 1 HotFix 22
Bug 14579655 - running summarize project gets critical / out of memory error
Bug 16287321 - portfolio view portlet containing udf's performance degradation
Bug 16210261 - resource analysis performance issue when grouped by res team or res
code
Bug 14087521 - project page: performance degradation when view contains 6 udf fields
Bug 14063923 - eps page fails to load due to "io error: socket read timed out"
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted48
Deployment Considerations
Application Versions
– R8.2 Patch 16209855 - Primavera P6 Professional Version 8.2 Service Pack 1
HotFix 16
Bug 14727239 - p6 8.2 optional client performance issue login and opening 1100 projects
Bug 12681286 - system out of memory importing resource assignments from xls
Bug 13842772 - update baseline performance and timeout issues
Bug 14260200 - p6 professional hangs at 98% when re-opening project data
Bug 13998701 - 'loading summary data' causing login to take long time due to high wait
event
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted49
Appendix
Referenced Knowledge Base Documents
– JackRabbit Content Repository Migration to Oracle Universal Content Management
(OUCM) (Doc ID 1283730.1)
– Best Practices For Performance Tuning Of The P6 EPPM Database (Doc ID
1327603.1)
– Recommendations For Obtaining An Oracle Database Session Trace For
Performance Troubleshooting Of The Project Management Client Application (Doc
ID 891566.1)
– How To Obtain Database Trace Information From MS SQL Server Using SQL
Profiler (Doc ID 913465.1)
– Primavera SQL Monitor For P6 Project Management (Doc ID 910590.1)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted50
Appendix
Referenced Knowledge Base Documents
– How To Trace SQL And Java From The P6 Web Access Server (Doc ID 894429.1)
– How To Configure a Separate Server Or Java Process for P6 Services (Job
Services) in P6 EPPM r8.1 And Later Releases (Doc ID 1357440.1)
– How To Improve Applet Performance In P6 When Working With Larger Datasets
(Doc ID 1397987.1)
– How To Allow More JRE Client Side Memory for Loading Applets In P6 And Override
The 'Maximum memory allocated to Java Applets' Variable In The P6 Configuration
(Doc ID 1389862.1)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted51
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted52
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Confidential – Oracle Restricted53