SQL Task Push vs Pull

Post any question you may have in regards to GoAnywhere Director and let our talented support staff and other users assist you.
2 posts Page 1 of 1

LPrendergast

Verified User
Posts: 14
Joined: Tue May 26, 2009 8:54 am

Post by LPrendergast » Wed May 16, 2012 10:40 am
Hi, we have a procedure which use the sql tasks to PULLS records from a remote db (server B) and inserts them into the local db( server A, both are Iseries servers). This was pulling in 19 million records and was taking approx. two hours to complete.

Due to some process timing issues with the remote box, we changed the procedure from a pull to a push, so now when the processes complete on the remote server (server B) it then PUSHES the records to the local server (server A). When we made this change the process has slowed down considerable, it takes sevaral hours to process one tenth of the file (about 1.2 million records) before it would eventually timeout (about 4 hours).

My question is there any communication differences between pulling and pushing data using the SQL tasks? or do you have any ideas as why the transfer speed would change so dramatically?

RElliott63

Posts: 14
Joined: Thu Jul 01, 2010 10:42 am

Post by RElliott63 » Mon Jul 02, 2012 12:29 pm
LP,

Usually, this will have more to do with your iSeries than the communication. There are several tweaks and such that can be made when dealing with situations like this.

A few (but not all) could be running the SQL Statement through an SQL Analyzer (iSeries Navigator) and seeing what it recommends.

Some things that stand out is whether or not it's going through the CQE or SQE. The analyzer will probably recommend an index (or more) to help with the retrieval of the data... There are also issues where the table you are inserting this data into might have multiple indexes that need updating as you insert the data.

Not knowing the full scope of the project, this could be a situation where you want to just get the data from System A to System B, then run a local job on System B to insert the data. You will probably find that to run much faster.

-hth

Rick
2 posts Page 1 of 1