Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content
Announcements
Gartner® Magic Quadrant™: 15 YEARS A LEADER - GET THE REPORT
cancel
Showing results for 
Search instead for 
Did you mean: 
MattE
Creator II
Creator II

How to parallelise a db input

Hi, i've got a fairly simple job (see below). I get some data out of redshift via sql, use that data to construct a json body string then pass that data to a tRunJob which essentially just does a REST API call in a loop. The problem is the sql brings back around 8000 rows a day and calling each one in sequence takes a number of hours so i want to parallelise the output of the tDBInput component.

Capture.PNG

 

I've tried to use the iterate row out of tDBInput but then i don't know how to reference the row data as you would usually do something like rownumber.fieldname but there is no row number for the iterate output. 

Capture1.PNG

Thanks

 

Labels (1)
  • v7.x

1 Solution

Accepted Solutions
Shicong_Hong
Support
Support

Hi

You need a tFlowToIterate component to iterate input rows, then you can access the current column on other component like this:

rowNumber.columnName

(eg: row1.name)

Click Iterate connector and check the 'Enable parallel execution' checkbox in the basic setting panel if you want to parallelise the input rows.

Shicong_Hong_0-1720165555105.png

Regards

Shicong

View solution in original post

2 Replies
Shicong_Hong
Support
Support

Hi

You need a tFlowToIterate component to iterate input rows, then you can access the current column on other component like this:

rowNumber.columnName

(eg: row1.name)

Click Iterate connector and check the 'Enable parallel execution' checkbox in the basic setting panel if you want to parallelise the input rows.

Shicong_Hong_0-1720165555105.png

Regards

Shicong

MattE
Creator II
Creator II
Author

Thanks Shicong this worked.