Post on 10-Mar-2015
<Insert Picture Here>
PeopleSoft Enterprise Upgrade Deep Dive
Presented by Arshad Mirza and Sonya Sawal
Enterprise Upgrade Development and Testing
• Introduction
• Upgrade Process Overview
• Some Key Concepts
• New Data Type Conversion
• Performance Tuning
• Q&A
Agenda
Superior
Ownership
Experience
Upgrade to Release 9Upgrade to Release 9
New Upgrade Process
Re-designed upgrade process
• All application upgrades to 9.0 releases and above
• FSCM 8.9 and EPM 8.9 upgrades as well
• All other upgrades use the old style process
Focus on
Customizations
Improved
Performance
What is an Upgrade?
• The process of getting a customer’s existing production database up on the new release
Application Upgrade
Your Database
New
Release 2. Copy New ReleaseObject Definitions
and Customizations
• Migrate object definitions from new application release to your production database
3. Convert Data
1. Analyze and PreserveCustomizations
Your
Database
• Apply new Tools to your production database
Apply New Tools
Tools Only Upgrade
Upgrade Delivery
• GA of new release CD is prior to Upgrade GA
• Customer installs Demo database and code line
• Demo to Demo compare reports
• Upgrade GA on Customer Connection
• http://www.peoplesoft.com/corp/en/public_index.jsp
• Upgrade Documentation and Template
• Data conversion AE code and upgrade scripts
• Objects for reports and functional analysis on the old release
• Early Success Program
• peoplesoft_early_success_us@oracle.com
• Required for Upgrade fixes on Customer Connection
• Apply via Update Gateway using Change Assistant
Automation: Change Assistant
• Change Assistant is a tool used to automate upgrade steps and to process the entire upgrade
• Upgrade template contains steps for an upgrade path
• Each step corresponds to a step in the upgrade documentation
• Filters steps based on user specified settings
• Upgrade pass type
• Database platform
• Products installed
• Languages installed
• New in PT8.48 – Copy of Current Demo orientation
• More robust and flexible than Upgrade Assistant
Automation: Change Assistant
Completed
Manual Stop
Auto Run
Documentation
Progress Summary
• Introduction
• Upgrade Process Overview
• Some Key Concepts
• Data Type Conversion
• Performance Tuning
• Q&A
Agenda
Upgrade Process Overview
Preparing for the Upgrade
PeopleTools Upgrade
Data Conversion
Install the New Release Database
Alter Tables and Migrate System Data
Complete Manual Setup
Test your Upgrade
New Release Demo
Old
Release Demo
Copy of Production
Identify Customizations
Compare/Preserve Customizations
Copy New Release Objects
*
*
*
* Superior Ownership Experience
Install the New Release
• Install new application release DEMO code line and database from the delivered CD
• Evaluate Demo to Demo compare reports
• Install upgrade scripts, template and documentation
from Customer Connection
• Install Change Assistant
• Create a Change Assistant job using the delivered upgrade template.
New
Demo
1. Install the New release
Reporting/Audits and Analysis
• On a Copy of your Production database
• Apply Upgrade Planning files
• Run audits to identify integrity issues
• DDDAUDIT, SYSAUDIT, Alter Audit and application audits
• Run application reports to ensure consistency of data
• Functional analysis and pre-upgrade transaction processing
• Data mappings and default values
2. Functional analysis, Application reports/audits andTools audits
Copy of
Production
Identify Customizations
• Rename Records and Fields
• Run on Copy of Production and Old Release Demo
• Full database compare between Copy of Production and old release Demo database
• Resultant project contains customized objects
• Project has to be named UPGCUST
Old
Demo Copy of
Production
5. Remove non-custom patches from UPGCUST project
4. Database compare from COP to Old Release Demo
“UPGCUST”project
3. Rename Records/Fields
* Superior Ownership Experience
Tools Upgrade
• Upgrade Copy of Production database to new Tools release
• Upgrades to 9.0 require PT8.48 or above
• ELS 9.0 upgrade is the only exception
• Data type conversion on Oracle and MSS for 9.0
• Integration Broker Conversion
6. Upgrade COP to new Tools release
Copy of
Production
Tools Upgrade: IB Conversion
MessageMessage
QueueQueue
Pre-8.48Pre-8.48 8.488.48
MessageMessage
ChannelChannel
Services, Service Operations,
Service Operation Versions/Routings
Services, Service Operations,
Service Operation Versions/RoutingsNode Transactions
and Relationships
Node Transactions
and Relationships
NodeNodeNodeNode
Message/Subscription
PeopleCode
Message/Subscription
PeopleCode
Application Classes and Service Operation Handlers
Compare/Copy Customizations
• Rename database tables in COP database
• Compare custom projects in COP to new release Demo database• UPGCUST project definition is re-used
• UPGCUSTIB project is created by comparing IB objects
• Analyze upgrade status for custom objects
• Apply customizations to new Demo database• Copy custom objects to preserve them
New
Demo
7. Compare and analyze Customizations
8. Apply Customizations
Copy of
Production
* Superior Ownership Experience
Copy New Release Objects
• Migrate object definitions plus customizations from the new Demo to the COP
• Data mover scripts have replaced time consuming full database compare/copy
• Copy trees and roles using UPGNONCOMP
• Copy Integration Broker objects using UPGIBCOPY
• Create tables
• Alter tables without deletes
New
Demo
9. Copy object definitions
10. Creates/Alters without Deletes
Copy of
Production
* Superior Ownership Experience
Run Data Conversion
• Move data from old structures to new structures using Application Engine programs• Programs are designed to be restartable
• Database is in hybrid state• Old, new and renamed tables/columns exist
• Driver program called UPG_DATACONV is run from
Change Assistant
11. Run Data ConversionCopy of
Production
Completing the Migration
• Alter tables, deleting obsolete columns from the COP target database
• Create Views
• Create Indexes again
• Copy System Data from new release database
• Copy application data to COP as needed
New
Demo 13. Copy System Data
Copy of
Production
12. Alter Tables with Deletes
Final Audits and Manual Steps
• Set up Application/Web server and Portal
• Run final audits
• Manual Application tasks for new/changed features
• Security needs to be updated at this time
• Some features require steps to complete the upgrade when data cannot be fully converted by the automated process
• Re-apply customizations (if needed)
• Functional experts need to be involved
14. Final Audits
15. Manual changes to complete the upgrade
Copy of
Production
(Upgraded)
Upgrade Process Overview
Preparing for the Upgrade
PeopleTools Upgrade
Data Conversion
Install the New Release Database
Alter Tables and Migrate System Data
Complete Manual Setup
Test your Upgrade
New Release Demo
Old
Release Demo
Copy of Production
Identify Customizations
Compare/Preserve Customizations
Copy New Release Objects
• Introduction
• Upgrade Process Overview
• Some Key Concepts
• New Data Type Conversion
• Performance Tuning
• Q&A
Agenda
Initial Pass vs Move to Production
Initial Pass
Copy Objects
New Demo
Prepare DBIdentify CustomizationsUpgrade ToolsExport objects
Save Customizations
Create/AlterData ConversionComplete MigrationManual Setup
Copy of
Production
*possible shortcut
*Prepare DBUpgrade ToolsImport objects
Create/AlterData ConversionComplete Migration*Manual Setup
Move to Production Pass
New Copy of
ProductionOld Demo
Initial Pass vs Move to Production
Move to ProductionMove to Production
• Greater degree of automation and shortcuts compared to Initial pass
• Multiple “test” moves to production are completed before final one
• Goal is to shorten go-live window
• Recommended window for final move to production is 3 days
• Previously upgraded copy of production becomes the new source database
Initial PassInitial Pass
• Typically done only once in the life cycle of an upgrade
• Usually takes about 8 weeks *
• Most functional decisions and upgrade preparation activities
• Analyze, preserve and re-apply Customizations
• Set up security
• Troubleshooting and performance tuning done here are key for time saving in MTP
• Freeze Tools objects
* Depends on size of database and level of customization
Understanding Upgrade Compares• Object statuses are depicted in Application Designer and
in Upgrade Compare reports• Comparison by Release is the default comparison option
• Uses a comparison release date
• Vanilla Compare is the default orientation• Other option is to Keep Customizations
Absent Object definition was not found on database
Changed Object was modified by PeopleSoft after the comparison release date
Unchanged Object was modified by PeopleSoft before the comparison release date
*Changed Object was modified by customer after the comparison release date
*Unchanged Object was modified by customer before the comparison release date
Source and target definitions are identical; no differences were found Same
Understanding Upgrade Compares
ChangedChanged
Copy?Copy?UnchangedUnchanged
Copy?Copy?*Unchanged*Unchanged
Copy?Copy?*Changed*Changed
Copy?Copy?
AbsentAbsent
Source StatusSource Status Target StatusTarget Status
Decide whether to take
PeopleSoft Vanilla
OR
Keep Customizations
ActionAction
(*)Changed or (*)Unchanged(*)Changed or (*)Unchanged
Comparisons in new process are typically done with COP as the source
database and Old release or New release Demo as the target database
AnyAny AbsentAbsent Copy?Copy?
(*)Changed or (*)Unchanged(*)Changed or (*)Unchanged
(*)Changed or (*)Unchanged(*)Changed or (*)Unchanged
(*)Changed or (*)Unchanged(*)Changed or (*)Unchanged
(*)Changed or (*)Unchanged(*)Changed or (*)Unchanged
Delete?Delete?
SameSame SameSame NoneNone
System Data
DLXXSYS_N
•Deletes rows in COP based on
WHERE conditions•Imports data using
Import * option
DLXXSYS_I
•Skips rows in COP with same keys as new release data•Imports data using
IGNORE_DUPS option
New Release
Demo
Copy of
Production
DLXXSYS_R
•Overwrites the data on COP for the specified tables•Imports data using REPLACE_DATA
option
DLXXSYS_U
•Updates rows in COP with same keys as new release•Imports data using
UPDATE_DUPS option
Data that is necessary for any transaction processing
Tablespaces and PeopleTools
• REL SQL scripts are delivered with new tablespace information
• DBTSFIX aligns tablespaces in the delivered release scripts with those on the Copy of Production (target) database
• Generates new REL scripts – RELxxxDBTSFIX.sql
DBTSFIX.sqr
• Contains Tools records that moved to different tablespaces in the new release
• Record DDL is set to the new tablespace information
• TABLESPACEALTERTABLES.sql is a generated script to alter tables in PT84TBLSPC project
• Edit the script for tablespace names and sizing and then run it
PT84TBLSPC Project
Oracle, DB2 or Informix database
Tablespaces
How Tools delivers and resets tablespace mappings
Application Tablespaces
1. Update Tools for each record that will go into a custom tablespace (App Designer or update PSRECTBLSPC)
2. Change the SQL in the Create/Alter scripts to create tables in the correct tablespaces
Custom Tablespaces (use either of these methods)
• Identifies missing tablespaces from the system catalog
• Identifies tables mapped to invalid tablespaces
• Reset the combinations to correspond to COP for all existing tables
• Synch App Designer with System Catalog for Custom tablespaces
• Run multiple times at various stages to ensure DDL integrity
SETSPACE.sqr
• Contains DDL commands to create all PeopleSoft tablespaces
• Edit the script to create just the new tablespaces
XXDDL.sql script (XX is product line identifier)
Oracle, DB2 or Informix database
Tablespaces
PeopleSoft based tablespaces and Custom tablespaces
• Introduction
• Upgrade Process Overview
• Some Key Concepts
• New Data Type Conversion
• Performance Tuning
• Q&A
Agenda
New DataType Conversion
• Benefits of the New Data Types
• Releases supporting the New Data Types
• New Data Types
• Mapping of the Old Data Types to the New Data Types
• Conversion Process
New DataType Conversion
• MS SQL Server
• Variable length Data types – padding blanks overhead is eliminated
• Avoid deprecated data types
Benefits of the New Data Types
• Oracle
• No limit on # of LOBs on a table – a record can now have more than one LONG
• LOBs can be used in the INSERT/SELECT type SQL
• String Search is possible against a LOB data type
• Tables with LOBs can be replicated and/or used in most 3rd party ETL Tools
New Data Type Conversion
• PeopleTools 8.48 or later
AND
• PeopleSoft Enterprise release 9 or later
• Oracle 9i/10g or later
• MS SqlServer 2005 or later
• Both Unicode and Non-Unicode databases
New DataTypes are supported on
New Data Type Conversion
Supported New Data Types on Oracle 9i/10g or later
Non-Unicode
• LOBs for Long Varchar and Long Raw
Unicode
• LOBs for Long Varchar and Long Raw
• Character Length Semantics for CHAR
New Data Type Conversion
Supported New Data Types on MS SQL Server 2005 or later
• Non-Unicode
• VARCHAR(n) for CHAR and Long Character
• VARCHAR(max) for Long Character
• VARBINARY(max) for Image
• Unicode
• NVARCHAR(n) for NCHAR and Long Character
• NVARCHAR(max) for Long Character
• VARBINARY(max) for Image
New Data Type Conversion New Data Type Mapping on Oracle 9i/10g or later
Image
Long Character(n)
Character(n)
VARCHAR2 (n)
when 1 <= n <= 1333VARCHAR2 (n*3)
when 1 <= n < = 4000
CLOBLONG VARCHARwhen n = 0 or n > 4000
BLOB
VARCHAR2(n)
LONG RAW
VARCHAR2 (n*3)
Image
Long Character(n) CLOBLONG VARCHAR
when n = 0 or n > 2000
BLOBLONG RAW
PeopleTools Field
Types
New Data TypesPre 8.48 Data Types
Non-
Unicode
Unicode
New Data Type ConversionNew Data Type Mapping on MS SQL Server 2005 or later
Image
Long Character(n)
Character(n)
NVARCHAR(n)When n>0 and m<= 4000
NVARCHAR(max)When n=0 and n>4000
NTEXT
VARBINARY(max)
NVARCHAR(n)
IMAGE
NCHAR (n)
Image
Long Character(n)
Character(n)
VARCHAR(n)When n>0 and n <= 8000
VARCHAR(max)When n=0 and n>8000
TEXT
VARCHAR(n)CHAR(n)
VARBINARY(max)IMAGE
PeopleTools Field
Types
New Data TypesPre 8.48 Data Types
Non-
Unicode
Unicode
New Data Type ConversionConversion Process in 9.0 Application Upgrade
• Oracle
• Database settings and Instance level parameters
• Generate Alter table scripts (delivered Java Utility)
• Run the Alter scripts
• Bit flag update on PSSTATUS
ALTER TABLE PSARCHIVE_AET MODIFY (PSARCH_SQL CLOB);
ALTER TABLE PSBUSPRIMGLANG MODIFY (IMGSEG BLOB);
• MS SQL Server• Copy of Production on MSS2005 and PT8.48 or higher
• Verify Database Settings
• Create/Build Alter project
• Run the Alter scripts
• Bit flag update on PSSTATUS
CREATE TABLE PSYEMPL_PHOTO (EMPLID VARCHAR(11) NOT NULL,
EMPLOYEE_PHOTO VARBINARY(MAX) NULL)
New Data Type Conversion
Change Assistant Job for 9.0 Application Upgrade
Oracle
Non-Unicode
MS SQL Server
Non-Unicode
• Introduction
• Upgrade Process Overview
• Some Key Concepts
• Data Type Conversion
• Performance Tuning
• Q&A
Agenda
Performance Tuning
• Tuning for Move to Production
• Process Improvement, Automation, Concurrency, Best Practices
• Customer Database Upgrade program
Performance TuningTuning for Move to Production
Preparing Your Environment
• Network
• Server – Database and File Server
• Workstations
• Database sizing
• Database level parameters
• Split the alter table script into small units, especially for large
tables, and then run them all concurrently
• Run Data Conversion concurrently (unless otherwise instructed in
the upgrade documentation)
• Run Data Conversion AE program via Change Assistant on the
server
Performance TuningProcess Improvement, Automation & ConcurrencyProcess Improvements
• Database compare between old release DEMO and the COP
• Streamlined compare report analysis
• Simplified process to preserve customizations
• New release metadata imported to COP via Data Mover
• Replaces long-running, memory-intensive copy process
• ReCreate only modified indexes
Change Assistant templates provide automated steps
Concurrency available in Change Assistant
• Create tables and Alter w/o Delete script steps
• Data Conversion groups, unless otherwise documented
• Data Type Conversion Alter scripts
Performance TuningBest Practices
Data Conversion Code
• Mutually exclusive code allows conversion concurrency
• Set based processing for high volume tables
• Recommended performance indexes for data conversion
• Use of temp tables reduces I/O & avoids locking contention
• ReUse flag eliminates SQL recompile in DoSelect
• %UpdateStatistics after high volume row inserts
• %TruncateTable, faster than “Delete from table”
• Avoid Log Messages in Row-based processing
Performance TuningBest Practices
Leverage RDBMS-specific Features
• Oracle
• PARALLEL & NOLOGGING clauses in CREATE INDEX syntax
• Faster index creation for tables that have large # of rows
• EXTENT MANAGEMNT LOCAL AUTOALLOCATE in Create Tablespace DDL
• Extent information tracking is done using bitmaps
• DB2 z/OS
• VOLATILE clause on Create table eliminates incorrect statistics on temp tables and their instances
• DB2 LUW
• VOLATILE and LOCKSIZE TABLE clause on Alter table eliminates incorrect statistics & database locking on temp tables and their instances
Customer Database Upgrade Program
Benefits
• Tuned code and process improvements folded into certified upgrade paths
• Apply before starting your upgrade project
Program Objective
• To identify and resolve upgrade performance issues related to customer data volume and composition.
• Extends Superior Ownership Experience commitment
Customer Database Upgrade Program
Tuning Methods• Reduce database overhead
• Alter index, remove column that is being updated
• Drop indexes on tables with heavy processing
• Avoid full table scan for large table with small # of row return
• Create index on leading columns in the WHERE clause
• Oracle-specific
• Histograms
• Used on columns frequently used in the WHERE clause and have highly skewed data
• Re-write of Correlated Query
• Outer table has more Rows and is driving the Inner Table
• Split the query into 2 statements and take advantage of the Temp Table & DoSelect-- %Select metasql
• Row Chaining/Fragmentation – increase PCTFREE