This site uses different types of cookies, including analytics and functional cookies (its own and from other sites). To change your cookie settings or find out more, click here. If you continue browsing our website, you accept these cookies.
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: https://youtu.be/-9f6tkWgkNI?t=1h4m27s)
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. :-)
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.
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.