Showing results for 
Search instead for 
Did you mean: 

Alteryx designer Discussions

Find answers, ask questions, and share expertise about Alteryx Designer.
Announcement | We'll be doing maintenance between 9am-11am MT on Saturday, January 25th, which may impact your experience. Thanks for your patience as we work on improving the community!

Order of tools for performance of workflow


If i redesign my workflow should I delete some tools and rebuild so that the run order matches how I think it should flow on run?


My workflow seems to run in the order I added the tools.  Is that how it works?

If I do a redesign, is it best to delete and rebuild rather than drag around and rebuild the connections? 


How does this effect run performance?

ACE Emeritus
ACE Emeritus

Yes, no guarantee, but re-ordering tools can have a significant impact on performance.  Not necessarily, but it's good to study the order and think about it once initial development is complete.  (Actually, Dean mentioned this in his keynote at Inspire:


PS, it's probably OK to drag around to reorder.  Just make sure you're working with a copy of the original  Don't want to lose the one that works.  :-)


Hi @brendafos,


I once spoke to some folks at Alteryx about a similar problem. I had a workflow with an input at the top and an additional input joined to the main stream near the bottom of the workflow. However, I added the bottom input to the canvas first, so Alteryx would import the bottom input and then hold it there while it processed everything else above it (not very efficient).


From what I can remember from the conversation, Alteryx uses the order the tools were added to the canvas (aka ID#) to determine how it runs unless it can't process a tool with a lower ID# without processing a tool with a higher ID# first. I believe they are looking into making the run order/streaming logic better, but I do not know where on the roadmap it is exactly.


Until then, I will be deleting and adding tools back in the correct order (or copying the tools to another workflow, deleting them from the main workflow, and then copying them from the other workflow and pasting them back to the main workflow).


Hmm... VERY interesting discussion, and makes me curious.... frequently I will build something and then decide there's a better way, so I'll drop in a filter or a select tool mid-stream. I wonder how the order of the tools in the flow (where) and the number of the tool (when) play together. I think I'll test it to see.


That aside, I have been able to SUBSTANTIALLY improve the efficiency of a workflow by swapping the position of 2 adjacent tools. For instance, if you have a filter and then a formula, even if it doesn't technically which happens when, sometime Alteryx does care for whatever reason.


Sometimes I'll make a copy of a workflow and then just play around with swapping adjacent tools to see where I can speed things up.

ACE Emeritus
ACE Emeritus

One way that might help is by using the block until done tool.  On large data sets I will use this right after the input, right before the output and at various points inside the module just to have some control over the sequence of events ie... sometimes I like to make sure one section is done before data goes to the next section and so on.