I have a table which has 28 million records. There is a job which updates this table on a monthly basis. The problem is that the job runs for more than 12hrs. I need to optimise the run time for the jobs.
The scope of optimising the Db2 queries is minimal as confirmed by DBAs. I am thinking that if I can run the same job in parallel (may be 4 instances) and each instance updates around 7 million records. Thus instead of table lock, if I can have page locks on DB2 tables.
Actually what matters here is if you have this data(28 mill records) in a partitioned table. Thus you can ensure that your batch programs run for pre-defined partitions on a monthly basis.
Joined: 07 Dec 2006 Posts: 35 Location: Bloomington
It may be silly but I would like to know how we can run the same jobs at a time. At least the job names should be different even having the same functionality.
Joined: 08 Jun 2006 Posts: 308 Location: Pune, India
I have also faced the same situation and done as below.
We had more than 20 million records and divided it into 21 parts. Written a Procedure and written 21 JCLs for 21 different input files. This same procedure was called from each JCL by overriding input files accordingly.