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.
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.