Re: Batch and OLTP at the same time : Mission possible ?

  • From: "Dennis Williams" <oracledba.williams@xxxxxxxxx>
  • To: danielwfink@xxxxxxxxx
  • Date: Fri, 28 Apr 2006 10:52:49 -0500

Bertrand,

Okay, to put it into simple terms:
   - You currently do the batch task during off-hours and now you are being
asked to move the task to the times when the database is busy?
   - Most of the batch activity is inserts, with just a few updates?

If your site is equipped to do perfomance testing of the database, that
would be ideal. Simulate the interactive load, then start the batch process.
But if you are like most of us, that doesn't exist.

My advice would be to "start slow". Be cautious so the application doesn't
get a bad reputation. Get baseline performance readings with just the
interactive load. STATSPACK does a good job for that sort of thing. Also
research "capacity planning" tools. Also, (per Cary Millsap) try to measure
current interactive user response from the user's terminal as accurately as
possible. If the batch job is running off-hours now, get baseline
performance readings while it is running also. You may be able to get a
rough idea of the combined database load just from those two measurements.
Try to design the batch job so that it can run at variable rates. You want
to prevent it from overwhelming the database such that few resources remain
for the interactive users. Maybe the first time you run it, try to run it
for only one hour when the interactive load is "moderate". Measure the
database performance at that level, as well as  the user response. If the
users scream, you can tell them that the pain will soon be over.

Dennis Williams

Other related posts: