Batch Jobs Performance Testing

Similar documents

CSE 544: Principles of Database Systems

CSE544 Database Architecture

Process a program in execution; process execution must progress in sequential fashion. Operating Systems

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

(Extended) Entity Relationship

Module 4: Processes. Process Concept Process Scheduling Operation on Processes Cooperating Processes Interprocess Communication

Module 4: Processes. Process Concept Process Scheduling Operation on Processes Cooperating Processes Interprocess Communication

2 TEST: A Tracer for Extracting Speculative Threads

Announcements. Reading. Project #1 due in 1 week at 5:00 pm Scheduling Chapter 6 (6 th ed) or Chapter 5 (8 th ed) CMSC 412 S14 (lect 5)

Infrastructure Tuning

Azure SQL Database for Gaming Industry Workloads Technical Whitepaper

CS 326: Operating Systems. CPU Scheduling. Lecture 6

Chapter 3: Processes. Operating System Concepts 8 th Edition,

Multiprocessor and Real- Time Scheduling. Chapter 10

Performance Evaluation of Virtualization Technologies

Small verse Large. The Performance Tester Paradox. Copyright 1202Performance

CS162 Operating Systems and Systems Programming Lecture 11 Page Allocation and Replacement"

Infor Lawson on IBM i 7.1 and IBM POWER7+

Oracle Database 11g: Real Application Testing & Manageability Overview

White Paper. Major Performance Tuning Considerations for Weblogic Server

Operating System. Operating System Overview. Structure of a Computer System. Structure of a Computer System. Structure of a Computer System

Infosys. Working on Application Slowness in Mainframe Infrastructure- Best Practices-Venkatesh Rajagopalan

davidklee.net heraflux.com linkedin.com/in/davidaklee

Performance Testing Online Training

WebLogic Server- Tips & Tricks for Troubleshooting Performance Issues. By: Abhay Kumar AST Corporation

Performance Profiling

Announcements. Operating Systems. Autumn CS4023

Reduces latency and buffer overhead. Messaging occurs at a speed close to the processors being directly connected. Less error detection

Workload Characterization and Optimization of TPC-H Queries on Apache Spark

Informatica Power Center 10.1 Developer Training

DB2 Performance Essentials

Manjunath Subburathinam Sterling L2 Apps Support 11 Feb Lessons Learned. Peak Season IBM Corporation

Oracle 1Z0-054 Exam Questions and Answers (PDF) Oracle 1Z0-054 Exam Questions 1Z0-054 BrainDumps

Oracle Business Activity Monitoring 12c Best Practices ORACLE WHITE PAPER DECEMBER 2015

06-Dec-17. Credits:4. Notes by Pritee Parwekar,ANITS 06-Dec-17 1

Impact of Dell FlexMem Bridge on Microsoft SQL Server Database Performance

Objectives and Functions Convenience. William Stallings Computer Organization and Architecture 7 th Edition. Efficiency

SAS workload performance improvements with IBM XIV Storage System Gen3

[MS10987A]: Performance Tuning and Optimizing SQL Databases

An Oracle White Paper September Oracle Utilities Meter Data Management Demonstrates Extreme Performance on Oracle Exadata/Exalogic

Operating System Support

Oracle Tuning. Ashok Kapur Hawkeye Technology, Inc.

Using Data Transfer Services

SQL Diagnostic Manager Management Pack for Microsoft System Center

Forecasting Oracle Performance

Process Scheduling. Copyright : University of Illinois CS 241 Staff

Best Practices. Deploying Optim Performance Manager in large scale environments. IBM Optim Performance Manager Extended Edition V4.1.0.

Full Text Search Agent Throughput

SEDA: An Architecture for Well-Conditioned, Scalable Internet Services

Chapter 3: Processes. Operating System Concepts 9 th Edit9on

Oracle EXAM - 1Z Oracle Database 11g: Performance Tuning. Buy Full Product.

Welcome to this course on Operating System Concepts

MAINVIEW Batch Optimizer. Data Accelerator Andy Andrews

It s. slow! SQL Saturday. Copyright Heraflux Technologies. Do not redistribute or copy as your own. 1. Database. Firewall Load Balancer.

Sizing Guidelines and Performance Tuning for Intelligent Streaming

Course Outline. Performance Tuning and Optimizing SQL Databases Course 10987B: 4 days Instructor Led

OPERATING SYSTEM. Functions of Operating System:

Operating Systems Lecture #9: Concurrent Processes

DQpowersuite. Superior Architecture. A Complete Data Integration Package

Historical Collection Best Practices. Version 2.0

What it does not show is how to write the program to retrieve this data.

Process- Concept &Process Scheduling OPERATING SYSTEMS

The Self-Managing Database: Automatic SGA Memory Management. An Oracle White Paper Nov. 2003

IBM Education Assistance for z/os V2R2

E-BUSINESS SUITE APPLICATIONS R12 (RUP 4) LARGE/EXTRA-LARGE PAYROLL (BATCH) BENCHMARK - USING ORACLE10g ON A HEWLETT-PACKARD PROLIANT DL380 G6 SERVER

DAT (cont d) Assume a page size of 256 bytes. physical addresses. Note: Virtual address (page #) is not stored, but is used as an index into the table

Performance Tuning & Optimizing SQL Databases Microsoft Official Curriculum (MOC 10987)

Virtual SQL Servers. Actual Performance. 2016

Multiprogramming. Evolution of OS. Today. Comp 104: Operating Systems Concepts 28/01/2013. Processes Management Scheduling & Resource Allocation

Oracle JD Edwards EnterpriseOne Object Usage Tracking Performance Characterization Using JD Edwards EnterpriseOne Object Usage Tracking

Processes. CS 475, Spring 2018 Concurrent & Distributed Systems

IMPROVING THE PERFORMANCE, INTEGRITY, AND MANAGEABILITY OF PHYSICAL STORAGE IN DB2 DATABASES

Ch. 13: Measuring Performance

Chapter 9: Virtual Memory

The Role of Database Aware Flash Technologies in Accelerating Mission- Critical Databases

EsgynDB Enterprise 2.0 Platform Reference Architecture

Automation for IMS: Why It s Needed, Who Benefits, and What Is the Impact?

Chapter 9: Virtual Memory. Operating System Concepts 9 th Edition

Low Latency Data Grids in Finance

Chapter 3: Processes. Operating System Concepts 8th Edition,

Bipul Sinha, Amit Ganesh, Lilian Hobbs, Oracle Corp. Dingbo Zhou, Basavaraj Hubli, Manohar Malayanur, Fannie Mae

J2EE Performance Tuning. Jayesh Patel Northern Virginia Java/BEA User Group January 11 th, 2005.

Course Syllabus. Operating Systems

Best Practices for Setting BIOS Parameters for Performance

Key metrics for effective storage performance and capacity reporting

Processes. Process Scheduling, Process Synchronization, and Deadlock will be discussed further in Chapters 5, 6, and 7, respectively.

Product Guide. McAfee Performance Optimizer 2.2.0

Memory Allocation. Static Allocation. Dynamic Allocation. Dynamic Storage Allocation. CS 414: Operating Systems Spring 2008

CA IDMS 18.0 & 18.5 for z/os and ziip

Misc. Third Generation Batch Multiprogramming. Fourth Generation Time Sharing. Last Time Evolution of OSs

Oracle JD Edwards EnterpriseOne Object Usage Tracking Performance Characterization Using JD Edwards EnterpriseOne Object Usage Tracking

10 MONITORING AND OPTIMIZING

CSE 544 Principles of Database Management Systems

Performance Benchmark and Capacity Planning. Version: 7.3

CHAPTER 2: PROCESS MANAGEMENT

J2EE: Best Practices for Application Development and Achieving High-Volume Throughput. Michael S Pallos, MBA Session: 3567, 4:30 pm August 11, 2003

PAGE REPLACEMENT. Operating Systems 2015 Spring by Euiseong Seo

IBM XIV Storage System

Managing Storage: Above the Hardware

Transcription:

Batch Jobs Performance Testing October 20, 2012 Author Rajesh Kurapati

Introduction Batch Job A batch job is a scheduled program that runs without user intervention. Corporations use batch jobs to automate tasks that they need to perform on a regular basis. Batch jobs usually run during off peak hours when systems are not being used for online processing. (For example, systems can run to update files, create printed reports, or purge files.) Batch jobs that need to be processed on a regular basis are incorporated into batch schedules. Batch jobs usually run overnight, during the so called batch window". During this time, online activity is restricted or even completely forbidden. So a good first reason for batch jobs is to be sure that the batch window will end before the agreed online start time. This is becoming more and more important because batch activity is still growing at many sites while the batch window is normally shrinking due to 24X7 online demands. Batch jobs usually run overnight, during the so called batch window". During this time, online activity is restricted or even completely forbidden. The intent of Batch Test is to find errors in job setup or output distribution and correct them before go-live. There is no approach or method to guarantee a schedule completely free of defects 2

Importance of batch job Performance testing Irrespective of the volume of the data, performance of the batch should be good enough to complete the processing within the allowed time frame. Execution of batch job should never affect the performance of other processes. Batch Performance Testing Approach Determine those jobs and jobsets currently used in Production which will need to be setup for the new server/environment and subsequently tested during the appropriate phases Determine any new jobs to be added to the existing schedule as a result of new development/functionality Determine which jobs and jobsets residing on the Production server are obsolete and should be deleted before the testing phase Submit documentation for jobs/jobsets to be copied to the testing environment

Possible ways to predict There can be multiple ways to predict batch performance. Please note that a single option or hybrid of them can be used to predict batch performance. Following are some of the options. 1. Do a proof of concept (PoC) of batches and extrapolate based on to be data volume as per workload model. 2. Get benchmark numbers of the batches from core application vendor (if applicable) and extrapolate. 3. Get performance metrics from other similar projects and extrapolate as per workload model. 4. Profile the batches to get details of SQLs executed, apply base response time and overhead and estimate as per workload model. Environment Setup An environment similar to production environment has to be set up to performance test the batch job. This will include a similar system configuration set up, all the expected concurrent processes running and a similar data setup as in production. In most of the cases since replicating production like environment is expensive a relatively less configured system setup is made for testing and proportionate changes are made in the expected throughput during the test 4

Figure: Batch Performance Testing Process 5

Performance Monitoring All the system resources have to be efficiently and optimally utilized to obtain best performance from batch process Throughput No. of records processed per minute (second) statistics has to be collected. A script can be executed or a DB query lookup can be made to collect to collect throughput metrics of the batch process over the given time period. CPU & Memory Utilization These metrics should be always within the limit of what the batch job is expected to consume. Unlike other applications, high CPU of 90% is acceptable for batch process provided no other concurrent tasks will run and the application is finely tuned. This implies optimal utilization of resources by batch thus resulting in maximum throughput. In case, CPU utilization is higher than expected, it s always advisable to collect server level statistics which eases digging into the issue. DB Query Response Time This is one of the most important monitoring counters to be captured while doing batch job performance testing. Most of the Batch jobs do DB updates. If the Query response time is low, any type of code or configuration changes won t be able to bring any commendable improvement in the batch performance. Application level statistics Need to keep track of no. of concurrent threads or sessions during the batch run. These values have to be increased or decreased as situation demands. 6

Monitoring Tools 1. For applications with Windows OS perfmon is used to collect the System statistics. This includes, total CPU utilization, Memory utilization, process level breakdown of processor utilization, context switches, queue length etc. 2. For UNIX and AIX there will be scripts executing commands in regular intervals to collect all the metrics during the test run. there are commands which can collect CPU, memory, network statistics, DB connections etc. Issues There are few performance issues which are frequently seen to occur during Performance testing batch process 1. Throughput 2. CPU Utilization 3. SQL Queries time out 4. Memory Issues 7

Tuning CPU Utilization 8

If the CPU utilization goes down infrequently during the run, it will be due to slowly responding backend. Whenever backend responds slowly, it makes the processor wait for the Response brings down the CPU utilization. Data or queries taking long time have to be analysed and tuned to respond like other queries. Memory Issues Memory issues in batch jobs are similar to other applications. Whenever the application hits out of memory, either the application will be in need for additional memory or there will be a memory leak in the application. If it s the first case then appropriate memory as required by the process has to be allocated. If it s a memory leak, the leaking objects in the batch process has to be identified and fixed using tools like Heap dump analyser, JProbe Memory debugger etc. 2011 Capgemini. All rights reserved. 9

www.capgemini.com and www.sogeti.com