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.
It's the most wonderful time of the year - Santalytics 2020 is here! This year, Santa's workshop needs the help of the Alteryx Community to help get back on track, so head over to the Group Hub for all the info to get started!
The output tool in my workflow is trying to run before some of the tools in my logic, is complete. This should be because of the additional inputs that I added recently. I am going through some difficulties because of my lack of understanding of sequence of Alteryx tools execution. Is there a documentation which explains how Alteryx decides the sequence of tool execution?
I understand that the question is not very specific, but, I am just trying to locate the complete/official documentation of how Alteryx decides the sequence.
I don't think there's a perfect documentation on that. As far as I know, Alteryx process everything in parallel, so that doesn't mean it follows a sequence. I think it really depends on the tool category and how it processes data.
This is something you'll run into frequently, so I can give you three alternatives when going down this road:
Yes, I came across the "Block until done" tool and I think that might solve my current problem. Based on the little research I did, though the Alteryx engine runs parallel, there must be factors like the sequence in which the tool is added, type of tool, dependencies of the tool on previous tools and so on, which decides the sequence.
I was just curious to know if there is a documentation from Alteryx which explains how Alteryx engine thinks once it starts running a workflow.
This is a simplification, but the order of operations of Alteryx tools becomes a bit easier to understand if you think about the way records flow out of each tool in your workflow.
The are two ways this can happen:
one by one
all at once
A "one by one" tool is able to pass records out incrementally as they are processed. Generally this will apply to any tools that perform an operation on each row of your data. Things like Formula, Filter, and so on fall into this category. The tool can pass a record out to downstream tools as soon as it has applied its operation to that record, and there is no need to wait for other records to be received before passing records out.
An "all at once" tool only passes out the records once it has received all records from upstream tools. Generally this applies to tools that perform an operation based on the columns in your data. Things like Sort and Summarize fall into this category. The tool cannot start passing out records until it has received all upstream records. The Sort tool, for example, cannot know what the first output row is until it has received all the input rows.
This is a huge oversimplification but I find it useful as a way to understand how a workflow will execute, and where to expect bottlenecks (typically on the "all at once" tools).