Insync10 anthony spierings


Published on

Enterprise users make heavy demands on the information systems infrastructure. When using Oracle Primavera on top Windows 32-bit Operation Systems users may reach the limits of 32-bit computing. By observing the application’s memory consumption, End Users can develop simple “rules of thumbs” and operational techniques to maximise their ROI in computing resources.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • One solution is to bypass Job Services and to get the required information directly from the database. There is, however, a small problem; particularly when dealing with time-series data. The Primavera application makes clever use of the concept of logical data. We define logical data as information that can be reconstructed logically. This reconstruction is often done on the fly. Consider the following equation; If we wanted to store this equation inside the database, we only need to store n 1 and n 2 inside the database. When we retrieve these two values, we can logically reconstruct n 3 (as n 1 + n 2 ) on the fly. As mentioned before, Primavera makes extensive use of logical data. Some of the time-series data that we were after simply does not exist inside the database. It is reconstructed by the desktop client, web client, or Job Services when the project is loaded into memory. It is theoretically possible to reverse engineer the calculations using the information inside the database, but this was beyond our technical capability and resources available at the time. Logical data is sometimes called “virtual data” or “non-persistent” data. We define time-series data as information that has temporal ordering. For example a monthly cash flow forecast.
  • The impact of splitting up the jobs into smaller chunks is a reduction in CPU and memory usage. Figure 14 shows the CPU load on the Job Server XBNEWAS06. This snapshot was taken during the week from Sunday, 11 July 2010 to Sunday, 18 July 2010. The higher CPU usage is attributable to improved database I/O performance (a separate exercise that is discussed later). Improving database performance meant that CPU performance is now a constraint on performance. What is perhaps more instructive is the graph of available memory on the server as shown in Figure 15. This virtual server has 4GB of memory and 4GB page file. The assumption is that Primavera’s memory usage is now down to 0.79G of memory (3.45G – 2.66G). Recall that XBNEWAS18 has been replaced by XBNEWAS06 for Job Services.
  • Insync10 anthony spierings

    1. 1. Heavy duty Oracle Primavera usage in enterprise environments: maximising ROI Anthony Spierings ENERGEX 16 August 2010 The most comprehensive Oracle applications & technology content under one roof
    2. 2. Presentation Overview <ul><li>About ENERGEX </li></ul><ul><li>How ENERGEX uses Oracle Primavera as part of its EPPM methodologies </li></ul><ul><li>Understanding 32-bit computing (with examples of tests that you can try) </li></ul><ul><li>Primavera Job Services in ENERGEX </li></ul><ul><li>Data extraction solutions </li></ul><ul><li>Database performance </li></ul>
    3. 3. About ENERGEX <ul><li>Electricity distribution network business, based in south east Queensland, Australia </li></ul><ul><li>Over 3500 staff </li></ul><ul><li>$7B in assets, annually investing over $1B in the network </li></ul>
    4. 4. How ENERGEX uses Oracle Primavera <ul><li>Core application for forecasting; cash consumption, internal labour requirements, major material dates, and modelling contractor capability </li></ul><ul><li>Three time horizons of interest </li></ul><ul><ul><li>Now to +18 months (yearly planning) </li></ul></ul><ul><ul><li>Now to +5 years (regulatory planning) </li></ul></ul><ul><ul><li>Now to +10 years (strategic planning) </li></ul></ul>
    5. 5. High level data flows
    6. 6. Extracting ROI from Oracle Primavera <ul><li>35,000 projects in the database, approximate 1.4M activities </li></ul><ul><ul><li>10,000 projects are visible, </li></ul></ul><ul><ul><ul><li>approximately 445,000 activities, </li></ul></ul></ul><ul><ul><ul><li>AUD$30B in value </li></ul></ul></ul><ul><ul><ul><li>Time span is (current date – 2 years) to (current date + 20 years) </li></ul></ul></ul><ul><ul><li>25,000 are baselines </li></ul></ul><ul><ul><ul><li>Automatically create baselines for every active project using API at key points of the yearly governance cycle. </li></ul></ul></ul><ul><li>1,000 projects under intense project management at any one point in time </li></ul><ul><ul><li>Project managers are responsible for maintaining their own project in P6 </li></ul></ul><ul><ul><li>Acquiring and maintaining necessary P6 skill sets is an ongoing issue </li></ul></ul><ul><ul><li>In house training and testing is applied </li></ul></ul>
    7. 7. Extracting ROI from Oracle Primavera <ul><li>API are used to connect Oracle Primavera to; </li></ul><ul><ul><li>Substation Investment Forecasting Tool </li></ul></ul><ul><ul><ul><li>SIFT is an in-house database of future works </li></ul></ul></ul><ul><ul><li>Mincom Ellipse </li></ul></ul><ul><ul><ul><li>High level project data (independent LTD, YTD, approvals, etc) into Primavera Project UDF </li></ul></ul></ul><ul><ul><ul><li>Synchronise Oracle Primavera material resource pool with Mincom Stores (transformers, switchgear, etc) </li></ul></ul></ul><ul><ul><ul><li>Synchronise Oracle Primavera contractor resource pool with Mincom contract module </li></ul></ul></ul><ul><ul><ul><li>Mincom Ellipse works order data into Oracle Primavera Activity UDF </li></ul></ul></ul><ul><ul><ul><li>Mincom Ellipse actual into Oracle Primavera as “past period” actual </li></ul></ul></ul><ul><ul><li>Business Objects </li></ul></ul><ul><ul><ul><li>Exported cash flows are process for further financial modelling (nominal, real, real-inflation, etc) in Business Objects before being imported back into Oracle Primavera UDF at Project level. </li></ul></ul></ul><ul><li>We thrash Oracle Primavera hard, very hard. </li></ul><ul><li>Only product that we are aware of that is so amenable to crunching project data into temporal data. </li></ul>
    8. 8. How much memory am I using?
    9. 9. How much memory am I using?
    10. 10. How much memory am I using?
    11. 11. How much memory am I using?
    12. 12. A day in the life of XBNEWAS18
    13. 13. A day in the life of XBNEWAS18
    14. 14. A day in the life of XBNEWAS18
    15. 15. Potential data extraction solutions <ul><li>Read directly from database </li></ul><ul><li>Use Oracle Primavera Enterprise Reporting Database </li></ul><ul><li>Use a mixture of Job Services, scripting, and ETL </li></ul><ul><li>Upgrade to 64-bit solutions </li></ul>
    16. 16. What is “Logical Data” If you know this side of the equation Then one can logically construct this side of the equation
    17. 17. Option 1 – Extract data directly from the database <ul><li>Key Learning’s for ENERGEX </li></ul><ul><li>Important that data extractors understand the difference between persistent and non-persistent data. </li></ul><ul><li>Only extract persistent data directly from the database. And only then if you must. </li></ul>
    18. 18. Option 2 - Oracle Primavera Enterprise Reporting Database <ul><li> </li></ul><ul><li>Key Learning’s for ENERGEX </li></ul><ul><li>ERD turns logical data into persistent data for integration into Business Intelligence solutions </li></ul><ul><li>ERD will remove a lot of stress from the daily working life </li></ul><ul><li>ERD is immune to 32-bit computing limitations </li></ul><ul><li>ERD is a complementary product </li></ul>
    19. 19. Option 3 – Mixture of Job Services, Scripting, and ETL <ul><li>“ Workarounds for using Project Management in a non-LAA environment: </li></ul><ul><li>Using the PM client, open smaller EPS nodes/download less data” </li></ul><ul><li>Primavera Knowledge Article ID 910591.1 </li></ul>
    20. 20. Option 3 – Mixture of Job Services, Scripting, and ETL See Appendix in the accompanying paper for details on this technique <ul><li>Key Learning’s for ENERGEX </li></ul><ul><li>Existing Job Services tool suite is a cost effective use of existing functionality </li></ul><ul><li>Splitting jobs across the Enterprise Project Structure is an effective technique to manage memory requirements </li></ul><ul><li>Job Services outputs are available in time-series data </li></ul><ul><li>Tip: consider use TAB delimiters in the output </li></ul>
    21. 21. Option 3 – Mixture of Job Services, Scripting, and ETL
    22. 22. Option 4 – Go 64-bit (when available)
    23. 23. Option 4 – Go 64-bit (when available) <ul><li>ENERGEX Position </li></ul><ul><li>P6 V7 64-bit packaged version offers immediate relief for memory limitations </li></ul><ul><li>Eagerly await the release of Oracle Primavera EPPM full 64-bit desktop client </li></ul>
    24. 24. Other issues <ul><li>Database performance (in heavy duty environments) </li></ul><ul><ul><li>Recommend the assistance of a database application tuning expert </li></ul></ul><ul><ul><li>Watch I/O performance </li></ul></ul><ul><ul><li>Check for network issues </li></ul></ul><ul><ul><li>UDF and Project Codes have an accumulative performance hit (use layouts to efficiently manage UDF and Project Codes) </li></ul></ul><ul><ul><li>Have your friendly DBA monitor database performance (e.g. Index) </li></ul></ul>
    25. 25. Conclusions
    26. 26. More Information <ul><li>Full text of this presentation is also available as a white paper </li></ul><ul><li>Details of the electricity network projects discussed in the presentation are available at </li></ul>
    27. 27. Tell us what you think… <ul><li> </li></ul>
    28. 28. Appendix
    29. 29. Option 3 – Mixture of Job Services, Scripting, and ETL
    30. 30. Option 3 – Mixture of Job Services, Scripting, and ETL
    31. 31. Option 3 – Mixture of Job Services, Scripting, and ETL
    32. 32. Option 3 – Mixture of Job Services, Scripting, and ETL
    33. 33. Option 3 – Mixture of Job Services, Scripting, and ETL
    34. 34. Option 3 – Mixture of Job Services, Scripting, and ETL copy/b /y %INPATH%%INFILE1% + %INPATH%%INFILE2% + %INPATH%%INFILE3% + %INPATH%%INFILE4% %OUTPATH%%OUTFILE1%