PERFORMANCE OPTIMIZATION FOR LARGE SCALE LOGISTICS ERP SYSTEM

Similar documents
In-Memory Data Management Jens Krueger

Automating Information Lifecycle Management with

10/29/2013. Program Agenda. The Database Trifecta: Simplified Management, Less Capacity, Better Performance

Experiences of Global Temporary Tables in Oracle 8.1

MarkLogic Cloud Service Pricing & Billing Effective: October 1, 2018

Oracle Database 11g Direct NFS Client Oracle Open World - November 2007

ORACLE DATA SHEET ORACLE PARTITIONING

Anthony AWR report INTERPRETATION PART I

Oracle Exadata: Strategy and Roadmap

SAS Scalable Performance Data Server 4.3

Veritas Storage Foundation for Oracle RAC from Symantec

Amazon AWS-Solution-Architect-Associate Exam

Configuration changes such as conversion from a single instance to RAC, ASM, etc.

Veritas InfoScale Enterprise for Oracle Real Application Clusters (RAC)

Leng Leng Tan Vice President Server Manageability and Diagnosability Oracle Corporation. Arvind Gidwani Kothandapani Subramaniyam

Oracle Database 11g for Experienced 9i Database Administrators

Two Success Stories - Optimised Real-Time Reporting with BI Apps

Storage Optimization with Oracle Database 11g

Optimizing Database I/O

Providing a first class, enterprise-level, backup and archive service for Oxford University

Experience the GRID Today with Oracle9i RAC

Data Sheet: Storage Management Veritas Storage Foundation for Oracle RAC from Symantec Manageability and availability for Oracle RAC databases

How Do I Manage Multiple Versions of my BI Implementation?

Oracle. 1z Oracle Database 11g- New Features for Administrators.

Accelerate Database Performance and Reduce Response Times in MongoDB Humongous Environments with the LSI Nytro MegaRAID Flash Accelerator Card

WELCOME. Unterstützung von Tuning- Maßnahmen mit Hilfe von Capacity Management. DOAG SIG Database

Oracle 1Z Oracle Database 11g- Administrator I. Download Full Version :

HANA Performance. Efficient Speed and Scale-out for Real-time BI

Oracle Database 10g: New Features for Administrators Release 2

An Insider s Guide to Oracle Autonomous Transaction Processing

An Oracle White Paper September Methods for Upgrading to Oracle Database 11g Release 2

Exym Accelerates Its Fusion Powered Microsoft SQL Server

Evolving To The Big Data Warehouse

Oracle Database 12c: OCM Exam Preparation Workshop Ed 1

Oracle Rdb Hot Standby Performance Test Results

Performance Innovations with Oracle Database In-Memory

Data Warehouses Chapter 12. Class 10: Data Warehouses 1

Oracle Database 18c and Autonomous Database

Copyright 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12

Oracle 1Z0-515 Exam Questions & Answers

An Oracle White Paper September Upgrade Methods for Upgrading to Oracle Database 11g Release 2

ETL Best Practices and Techniques. Marc Beacom, Managing Partner, Datalere

Independent Electricity System Operator Rapid Migration of Big Data - Oracle DB using IBM Enterprise Storage Tools

About Speaker. Shrwan Krishna Shrestha. /

The Evolution of Data Warehousing. Data Warehousing Concepts. The Evolution of Data Warehousing. The Evolution of Data Warehousing

Upgrade Strategies for Oracle E-Business: Leveraging Archiving Best Practices

Datacenter replication solution with quasardb

Real Time Summarization. Copyright 2014, Oracle and/or its affiliates. All rights reserved.

DHCP Capacity and Performance Guidelines

1Z Upgrade to Oracle Database 12cm Exam Summary Syllabus Questions

Compression in Bankware

Cost and Performance benefits of Dell Compellent Automated Tiered Storage for Oracle OLAP Workloads

Data Warehousing 11g Essentials

<Insert Picture Here> MySQL Web Reference Architectures Building Massively Scalable Web Infrastructure

How Oracle Does It. No Read Locks

Oracle 10g on Solaris to Oracle RAC 11gR2 on Linux Upgrade

Oracle 1Z0-053 Exam Questions & Answers

1Z Oracle Database 12c - Data Guard Administration Exam Summary Syllabus Questions

SAS System Powers Web Measurement Solution at U S WEST

Best Practices for Deployment of SQL Compliance Manager

IBM Tivoli OMEGAMON XE for Storage on z/os Version Tuning Guide SC

IT Best Practices Audit TCS offers a wide range of IT Best Practices Audit content covering 15 subjects and over 2200 topics, including:

Effective Testing for Live Applications. March, 29, 2018 Sveta Smirnova

CHAPTER. Oracle Database 11g Architecture Options

Single-pass restore after a media failure. Caetano Sauer, Goetz Graefe, Theo Härder

Oracle Database 11g: SQL Fundamentals I

EMC GREENPLUM MANAGEMENT ENABLED BY AGINITY WORKBENCH

Exadata X3 in action: Measuring Smart Scan efficiency with AWR. Franck Pachot Senior Consultant

Table Compression in Oracle9i Release2. An Oracle White Paper May 2002

User Guide. Sage ERP MAS 90 Online

Eternal Story on Temporary Objects

Microsoft SQL Server Fix Pack 15. Reference IBM

DESIGNING DATABASE SOLUTIONS FOR MICROSOFT SQL SERVER CERTIFICATION QUESTIONS AND STUDY GUIDE

<Insert Picture Here> Oracle Database Security

Oracle Tuning. Ashok Kapur Hawkeye Technology, Inc.

VEXATA FOR ORACLE. Digital Business Demands Performance and Scale. Solution Brief

Real Application Testing Certified for SAP

Condusiv s V-locity Server Boosts Performance of SQL Server 2012 by 55%

Oracle-to-Oracle Data Transfer Options. Sudhanshu Kumar 1 st Feb 2010

Performance Benchmark and Capacity Planning. Version: 7.3

Oracle Platform Performance Baseline Oracle 12c on Hitachi VSP G1000. Benchmark Report December 2014

MAXGAUGE for Oracle Web Version 5.3

Enterprise Planning Large Scale

Copyright 2012, Oracle and/or its affiliates. All rights reserved.

Bigtable. Presenter: Yijun Hou, Yixiao Peng

INFRASTRUCTURE BEST PRACTICES FOR PERFORMANCE

Enterprise Planning Large Scale

1Z Upgrade Oracle9i/10g to Oracle Database 11g OCP Exam Summary Syllabus Questions

VOLTDB + HP VERTICA. page

Taming the Beast: Optimizing Oracle EBS for Radical Efficiency

CIT 668: System Architecture. Amazon Web Services

ITExamDownload. Provide the latest exam dumps for you. Download the free reference for study

10. Replication. CSEP 545 Transaction Processing Philip A. Bernstein. Copyright 2003 Philip A. Bernstein. Outline

Oracle Database Exadata Cloud Service Exadata Performance, Cloud Simplicity DATABASE CLOUD SERVICE

Oracle Exadata: The World s Fastest Database Machine

Using EMC FAST with SAP on EMC Unified Storage

Oracle Database 10g Resource Manager. An Oracle White Paper October 2005

Increasing Performance of Existing Oracle RAC up to 10X

SQL Server 2014 Upgrade

RACKSPACE ONMETAL I/O V2 OUTPERFORMS AMAZON EC2 BY UP TO 2X IN BENCHMARK TESTING

Transcription:

PERFORMANCE OPTIMIZATION FOR LARGE SCALE LOGISTICS ERP SYSTEM Santosh Kangane Persistent Systems Ltd. Pune, India September 2013 Computer Measurement Group, India 1

Logistic System Overview 0.5 millions shipment / day 11000 Packages / day 183 millions shipments / year Warehouse (Station) Warehouse (Station) HUB 24 Operations / shipment 6 Transit hops / shipment 2-4 day s journey Service Point Computer Measurement Group, India 2

System Deployment Node 1 Application Server 16 GBPS Application Server Application Server SAN Storage WCF Node 2 8 CPU & 16 GB RAM Database Server (Oracle 11g R2 - RAC) Solaris 10 8 CPU & 32 GB RAM / Node Computer Measurement Group, India 3

Workload 0.5 Million /Day 6 x ShipmentMaster Same as ShipmentMaster 24 x ShipmentMaster Computer Measurement Group, India 4

Performance Challenges System would hang for more than 5 min at unpredictable intervals Shipment tracking report, started taking up to 10 minutes to load Weekly and Monthly Analysis reports would runs for more than an hour Scheduled Billing Data Extraction job took 6-15 min to complete 1 iteration, Sometimes the job would take 45 to 60 minutes. Oracle Database Archive logs was abnormally high; 200-250 GB/day for total database size of 400GB All service points started taking extra 3-4 hour to complete their operations. Further System rollout was stalled Computer Measurement Group, India 5

Managing Data Growth Problem: 500,000 shipments x 24 shipment operations per day 11,000 packages x 12 package operations per day Managing per day data growth was major concern Data was not archived since system went live (more than 1 year) and excessive data volume was appearing to be main cause for degraded system performance Restriction: Oracle Table Partition is not allowed (Customer not willing to invest on Oracle Table Partitioning feature license) 2 Step Approach: 1. Remove excessive (old than 90 Days) data, One time activity 2. Setup data archive process, to keep data volume in control Computer Measurement Group, India 6

Data Archive Strategy Remove Excessive Data : One Time Activity done in planned 8 Hr System downtime. Mainly intended to remove excessive data and solve current performance problem How we did it? 46% of data was archived and has given some relief on system performance Latest Shipment Data 90 Days & Older Shipment Data Full Database Backup Data Export Import using Oracle Data pump 1. Export Data 2. Drop constraint & Indexes 3. Truncate data from all table 4. Import Latest Shipment data into OLTP tables 5. Create New schema, with exactly same structure as OLTP for Archived data 6. Import Older data in Archive schema 7. Create indexes & constraints 8. Update Database statistics 9. System Up in Action Computer Measurement Group, India 7

Data Archive Strategy Data Archival Job Table partitioning was not allowed No System down should be taken for data archival Archival process should not affect OLTP system performance Remove 500,000 shipments x 24 shipment operations and 11,000 packages x 12 package operations per day Hence, we did it using Oracle PL-SQL. The job had 2 parts, 1. Logic to find eligible shipment to be archived, based on complex business rules and save shipmentid s in a table 2. Move to Archive For all eligible shipment, select batch of 15,000 shipmentid s o Append those shipment data to the archived database tables o Delete rows from the OLTP tables o Commit Update Database statistics Computer Measurement Group, India 8

Data Archive Strategy Computer Measurement Group, India 9

Data Archive Strategy Result : 500,000 shipments x 24 operations and 11,000 packages x 12 operations archived in 6 hours per day with minimal impact on OLTP performance No need to take system downtime for archival No need to pay substantially for advanced Oracle Table partition feature Computer Measurement Group, India 10

Data Extraction Process Shipment billing data was exported and sent to external MIS billing systems. Process was expected to run 24x7 at a 15 minute interval. Problem : Takes 6-15 min to complete 1 iteration, Sometimes the job would take 45 to 60 minutes. Spill over has became a major drag in the business operations. High system resource utilization. Risk in Changing : Any error in calculating the results or incorrectly dropping data would have messed up the all India customer billing. Computer Measurement Group, India 11

Data Extraction Process For all Data Entry Offices in given region Select ShipmentID from DataExportTracker where DataEntryOffice, date and IsDataSent has value NotProcessed Update all above rows to set IsDataSent = InProcess and commit. //logical lock on selected rows Select data from different tables do calculation and transform it in format compatible to billing system. Save selected data in Oracle global temporary tables. Copy data from temporary tables to flat files Update all rows showing InProcess to Processed Delete data from Global temporary tables. Computer Measurement Group, India 12

Data Extraction Process For all Data Entry Offices in given region Select ShipmentID from DataExportTracker where DataEntryOffice, date and IsDataSent has value NotProcessed Update all above rows to set IsDataSent = InProcess and commit. //logical lock on selected rows Select data from different tables do calculation and transform it in format compatible to billing system. Save selected data in Oracle global temporary tables. 900 / 0.5 million Copy data from temporary tables to flat files Update all rows showing InProcess to Processed Delete data from Global temporary tables. Computer Measurement Group, India 13

Data Extraction Process Process actually took snapshot of data between last processed file till current time Computer Measurement Group, India 14

Data Extraction Process o o o o o o o Find lasttimestamp from LastFileProcessed for given region Select ShipmentID from DataExportTracker with criteria region code and timestamp between lasttimestamp and CurrentTimestamp Select data from different tables do calculation and transform it in format compatible to billing system. Save selected data in Oracle global temporary tables. Save file information and CurrentTimestamp as lasttimestamp in LastFileProcessed Copy data from temporary tables to flat files Delete data from Global temporary tables. Computer Measurement Group, India 15

Data Extraction Process Optimization Result Data Extraction process completes in 3-6 seconds. Oracle Database Archive logs creation reduced by 25%. Process completion time : Shipment Count Region Processes Start Timestamp Processes End Timestamp 28000 WEST 02:35:33:22 02:35:36:45 64000 SOUTH 04:20:22:41 04:20:25:36 51000 EAST 04:36:13:14 04:36:17:45 14000 NORTH 04:38:02:69 04:38:06:93 Computer Measurement Group, India 16

Data Extraction Process Timestamp Drift in Oracle RAC 27/9/2013 04:54:13 27/9/2013 04:51:12 27/9/2013 04:53:03 Computer Measurement Group, India 17

Data Extraction Process Now, use LastTimestamp and calculated CurrentTimestamp to select data from OLTP tables > 7 27/9/2013 04:54:13 27/9/2013 04:48:03-5 min 27/9/2013 04:51:12 27/9/2013 04:53:03 Computer Measurement Group, India 18

Application Dragging and Hang issue System would hang for more than 5 min at unpredictable intervals What's happening on Database?? Computer Measurement Group, India 19

Application Dragging and Hang issue What about Web Server?? Does Network shows packet drop?? No packet loss on network Users on Local LAN too faces hang issue Computer Measurement Group, India 20

Application Dragging and Hang issue However, for very short duration IIS process was showing quite high CPU utilization Computer Measurement Group, India 21

Application Dragging and Hang issue Web Garden By default, each Application pool in IIS contains a single worker process. Single Worker Process wasn t able to scale. Hence Web Garden was enabled by changing IIS worker process count to 2. Computer Measurement Group, India 22

Design optimization for reports Computer Measurement Group, India 23

Design optimization for reports 1. Design Changes : How many shipments delivered Today? ~ 90 x 100,000 10,000 ~ 24 x 900,000 90,000 Computer Measurement Group, India 24

Design optimization for reports 1. Design Changes : How many shipments delivered Today? Computer Measurement Group, India 25

Row Lock Contention Up to 65,000 shipment in a transit Hub (Station) Hub (Station) Computer Measurement Group, India 26

Design optimization for reports 2. Code Optimization : Use Metalized views instead of calculating results every time, refresh views in non-peak hours For Complex business rules saved results in table and refresh data using PL-SQL jobs 3. Database Server Configuration : Many of the master tables in ERP system are frequently read but are seldom updated. So enabled in memory Table cache in Oracle To support cache memory requirement Oracle SGA size was increased from 8 to 16 GB The IO activity on disk arrays it was found that, not all disks were equally loaded. Hence separated large volumes, frequently accessed tables and REDO logs onto a different disk array. Computer Measurement Group, India 27

Improvement in Reports Optimized process Old Time Improved Time Shipment tracking reports 10 15 minutes Less than 2 seconds Analytical Monthly/Weekly reports More than an hour Less than 5 minutes Computer Measurement Group, India 28

Database Archive Logs Optimization 1. Oracle WITH Statement Problem: Most of reports and application logic was implemented using Oracles WITH alias feature We observed if WITH alias referred more than twice in SQL statement, it creates REDO as oracle materializes it in temporary table Ex : WITH DataA as ( SELECT ) SELECT FROM DataA UNION ALL SELECT FROM SomeTable WHERE ( sub query using DataA) All such queries reviewed and re-written with simplified logic 2. Minimize use of Oracle Global Temporary Tables 3. Avoid multiple updates on same table in given transaction, if possible merge update statements in one. Reduction in Oracle Archive log creation by 30% Computer Measurement Group, India 29

Achievements Problems Before Optimization After Optimization System hang Unpredictably for 5-10 min No hang issues Data Extraction process 6-15 min 3-6 sec Shipment tracking reports 10 15 min Less than 2 sec Monthly and Weekly analysis More than an Hour Less than 5 min Oracle Archive Log 200-250 GB/Day 50-80GB/Day Data Archival --- 6 Hours / Day Data volume is kept in control without investing substantially for Oracle costly features, Table Partitioning All office across the country are saving 3-4 Hour man-hours per day System has scaled from existing 1800 user base to 4000+ users System rolled out at all service points, Hubs and Warehouses successfully. Computer Measurement Group, India 30