This action might not be possible to undo. Are you sure you want to continue?
An Oracle White Paper March 2010
Moreover. PeopleSoft Applications are an ideal candidate to benefit from Oracle Partitioning. resulting in immediate performance and manageability benefits. enabling these database objects to be managed and accessed at a finer level of granularity. indexes and index-organized tables to be subdivided into smaller pieces. Oracle Partitioning is entirely transparent to PeopleSoft Applications and can be applied without any changes to underlying APIs. Partitioning achieves this by allowing query manipulations of smaller chunks of data. Partitioning allows tables. Oracle Partitioning for Peoplesoft Applications Page 2 . Partitioning can be used to obtain better concurrency as well as to decrease the number of rows to be processed through partition pruning and partition-wise joins. Only simple modifications to the standard PeopleSoft upgrade process are necessary to preserve the partitioning modifications seamlessly throughout an upgrade process INTRODUCTION Partitioning provides significant benefits to a wide variety of applications by improving manageability. and availability.Oracle Partitioning for PeopleSoft Applications EXECUTIVE OVERVIEW Oracle Partitioning provides significant benefits to PeopleSoft Applications by enhancing manageability and performance. performance. It is not unusual for partitioning to improve the performance of certain queries or maintenance operations by an order of magnitude. partitioning can greatly simplify common administration tasks.
splitting partitions. Each piece of a database object is called a partition. and 'Mexico') • Hash Partitioning A hash algorithm is applied to the partitioning key to determine the partition for a given row. However. Oracle Database 10g Release 2 provides six techniques for partitioning tables: • Range Partitioning A range of values of the partitioning key specifies each partition. Each partition has its own name. which can be managed either collectively or individually. Oracle provides a complete set of SQL commands for managing table partitioning.WHAT IS PARTITIONING Partitioning allows a table. From the perspective of a database administrator. no modifications to application queries are necessary when accessing a partitioned table. and may optionally have its own storage characteristics. dropping partitions. from the perspective of the application. 'USA'. These include commands for adding new partitions. and merging partitions TYPES OF PARTITIONING Tables are partitioned using a 'partitioning key'. This gives the administrator considerable flexibility in managing the partitioned object. • List Partitioning Each partition is specified by a list of values of the partitioning key (for a table with a region column as the partitioning key. a partitioned object has multiple pieces. Oracle Partitioning for Peoplesoft Applications Page 3 . a set of columns that determine in which partition a given row will reside. index or index-organized table to be subdivided into smaller pieces. the 'North America' partition may contain values 'Canada'. Data can be divided on the basis of ranges of column values. a partitioned table is identical to a nonpartitioned table.
local indexes perform better when partition elimination takes place and the expected volume of data processed is significant. For example. • Composite Range-List Partitioning A combination of Range and List partitioning techniques. • Global Non-Partitioned Indexes A global non-partitioned index is essentially identical to an index on a nonpartitioned table. whereby a table is first range-partitioned. while an index on that table could be range-partitioned using a different partitioning key and have a different number of partitions. INDEX PARTITIONING • Local Indexes A local index is an index on a partitioned table that is partitioned in the exact same manner as the underlying partitioned table.• Composite Range-Hash Partitioning A combination of Range and Hash partitioning techniques. Global-partitioned indexes can be partitioned using range or hash partitioning. If these conditions are not met. a table could be range-partitioned by month and have twelve partitions. then global index might perform better. Partitioned tables can have (local and Oracle Partitioning for Peoplesoft Applications Page 4 . whereby a table is first range-partitioned. and then each individual range-partition is further subpartitioned using the list partitioning technique. Each partition of a local index corresponds to one and only one partition of the underlying table. The index structure is not partitioned. • Global Partitioned Indexes A global partitioned index is an index on a partitioned or non-partitioned table that is partitioned using a different partitioning-key from the one used to partition the table. and then each individual range-partition is further subpartitioned using the hash partitioning technique. • Global Indexes Vs Local Indexes In general.
depending on the selection criteria specified. Each chunk can be loaded into a new partition without a • • Oracle Partitioning for Peoplesoft Applications Page 5 . Partition Pruning is the simplest and the most powerful way to improve performance using partitioning. It helps to limit the amount of data to be operated on. PARTITION-WISE JOINS Partitioning can also improve performance of multi-table joins by using a technique known as partition-wise joins. Partitioning helps reduce the number of scanned rows with combination partitioning in such applications as Global Consolidations and Accounts Payables. This is called Partition Pruning. old partitions (partitions that contain data of closed fiscal year and accounting period) can be put on Read Only tablespaces. If the table is range partitioned by Fiscal_Year and Accounting_Period. providing orders of magnitude performance improvement. which will reduce time and space required for the nightly backup. An unpartitioned table can have a global partitioned index. ADVANTAGES OF PARTITIONING FOR PEOPLESOFT • Partitioning improves availability and manageability of PeopleSoft Applications containing large tables such as Global Payroll application. unneeded partitions or subpartitions can be eliminated. and both of these tables are partitioned on the join key. Partitioning could be used for data management when applications load data in chunks.global) partitioned and non-partitioned indexes. thus. Partition-wise joins break a large join into smaller joins completing the overall join in less time. PARTITION PRUNING For each SQL statement. Partition-wise joins can be applied when two tables are being joined together.
GUIDELINES FOR PARTITIONING UNDER PEOPLESOFT APPLICATIONS • Determine candidate tables for partitioning by reviewing the biggest tables in the database that cause performance degradation as they grow beyond the application's scalability. Isolating each job stream in its own partition on large. Choose a partition key such that the data is evenly distributed across partitions. 2. Always use DBMS_STATS package to analyze partitioned tables. • • • Oracle Partitioning for Peoplesoft Applications Page 6 . • Partitioning could be used when running PeopleSoft batch process in parallel. highvolume transaction tables reduces I/O contention. They also provide better performance when running huge jobs in parallel. consider composite partitioning using hash partition. Ask the users what processes or reports they run against those tables that are slow Check the Run Control of the above processes to determine their processing criteria Check the AWR report for bad performing Sql’s. 3. Local indexes offer better availability during maintenance operations on the partitions. Determine the likely candidates for partitioning keys by doing the followings: 1. • • • Analyze job process and chose the partitioning based on the data access pattern. Data purge can happen in similar manner: partition can be dropped without using a lot of database resources.need to modify the whole table. If there is a case when most of the data is located in one partition. The WHERE clause of these Sql’s can help to identify the partitioning criteria. Bitmap indexes can be created on partitioned tables but they must be declared as local indexes.
48 to PT8.SQL. If necessary. The RELxxx. At a high level. If customers perform only a PeopleSoft Tools upgrade. If implemented. these RELxxx. Thus. which utilize the newly defined objects.49 Tools upgrade) cannot be used to perform the rest of the upgrade. they are provided with RELxxx. for the upgrade to PT8. otherwise the new codeline corresponding to that specific upgrade (ex. the PeopleSoft upgrade process is not aware of the customized partitioning. PT8. PeopleSoft upgrades are delivered as 'project files' containing new or updated PeopleSoft 'metadata' definitions for database objects as well as the corresponding binaries. customers would lose the partitioning customization during the upgrade. In general.SQL script must be run as the first step during the upgrade.SQL scripts where XXX indicates the PeopleTools release number.UPGRADE IMPACT Implementing partitioning in PeopleSoft Applications does not require changes to the underlying application DML statements but it does require changes to delivered object creation and upgrade scripts. Partitioning is not recommended for PeopleTools metadata tables. For example. Since PeopleSoft does not currently maintain partitioning information within the PeopleTools metadata. the upgrade process flows like this: 1. The following are common steps in the PeopleSoft UPGRADE Oracle Partitioning for Peoplesoft Applications Page 7 . This loss can be avoided by reapplying the partitioning customization during the upgrade process. The step(s) where the partitioning customization could be reapplied are shown in red below In general.SQL scripts could be edited for additional storage parameters including partitioning before being executed. the changes need to be made to the delivered DDL scripts (or scripts generated from PeopleSoft metadata object definitions during the upgrade) to accommodate table and index partitioning. there is not enough data to provide a significant benefit from partitioning. RELxxx.SQL scripts are static scripts that are delivered with each PeopleTools version.49 there is a script called REL849.
The following is a recommendation for upgrading your PeopleSoft system if you have partitioned objects: • • • • • Document all objects you have partitioned Analyze the upgrade impact to the partitioned objects. RUN ALTER SCRIPTS step using SQLPLUS. 2. This is a STOP point where Database Administrator or PeopleSoft Administrator can edit scripts to add partitioning before UPGRADE is finally applied. TEST! TEST! TEST! CONCLUSION Partitioning can greatly enhance performance. PeopleSoft Applications can take full advantage of all partitioning benefits without any need for application modification. At this step all ALTER scripts for the table modifications are generated. This step performs the upgrade. Regenerate the objects. modify PeopleSoft upgrade scripts (delivered or generated) to preserve partitioning information. manageability and availability of PeopleSoft Applications. Perform upgrade. if any. 3.templates for both PeopleTools only and PeopleSoft Applications upgrades: Note: The numbering notation below is an example and does not denote the actual upgrade steps. GENERATE ALTER SCRIPTS step. EDIT GENERATED ALTER SCRIPTS for SITE SPECIFIC STORAGE PARAMETERS step. 4. Thus. the partitioned information will be preserved. If these steps are followed. Oracle Partitioning for Peoplesoft Applications Page 8 . adoption of Oracle Partitioning will lead to better performing applications and greater customer satisfaction. For each impacted object.
Oracle Partitioning for Peoplesoft Applications Page 9 .
S. Oracle.com Copyright © 2007. for any purpose. All rights reserved.506. This document is not warranted to be error-free. CA 94065 U. Oracle is a registered trademark of Oracle Corporation and/or its affiliates.7000 Fax: +1. without our prior written permission. including implied warranties and conditions of merchantability or fitness for a particular purpose. This document is provided for information purposes only and the contents hereof are subject to change without notice. We specifically disclaim any liability with respect to this document and no contractual obligations are formed either directly or indirectly by this document. whether expressed orally or implied in law. Hermann Baer Oracle Corporation World Headquarters 500 Oracle Parkway Redwood Shores.7200 oracle.650. This document may not be reproduced or transmitted in any form or by any means.A. Other names may be trademarks of their respective owners. nor subject to any other warranties or conditions.506. . electronic or mechanical.Oracle Partitioning for PeopleSoft Applications August 2007 Author:Anna Leyderman Contributing Authors: Jerry Zarate .650. Worldwide Inquiries: Phone: +1.
This action might not be possible to undo. Are you sure you want to continue?
We've moved you to where you read on your other device.
Get the full title to continue listening from where you left off, or restart the preview.