community
cancel
Showing results for 
Search instead for 
Did you mean: 

Alteryx designer Discussions

Find answers, ask questions, and share expertise about Alteryx Designer.
SOLVED

Documentation for Alteryx engine's workflow sequence

Meteoroid

Hi, 

 

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.

 

Thank you,

Manoj Kumar

Alteryx Certified Partner
Alteryx Certified Partner

Hi @manojeaswaran 

 

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:

1) Block Until Done Tool:

https://community.alteryx.com/t5/Alteryx-Knowledge-Base/Tool-Mastery-Block-Until-Done/ta-p/33417?col...

 

This tool works perfectly when you have a single sequence of tools. You can "pause" your workflow until everything is streamed to that point where Block Until Done is.

 

2) Runner Macros:

 

Sometime you'll see that the best way to go is to split your workflows in parts, so you can define order of execution more clearly.

This article explains it well (and also how you install them):

https://community.alteryx.com/t5/Alteryx-Designer-Discussions/Using-the-Runner-Macro-Chaining-Workfl...

 

 

3) Parallel Block Until Done:

This is another tool from the CREW Macros. Similar to the first one.

https://community.alteryx.com/t5/Engine-Works-Blog/Crew-Macro-Pack-2016-Q2-Release/ba-p/26482

 

Cheers,

Highlighted
Meteoroid

 

 

 

 

Alteryx Certified Partner

Hi @manojeaswaran 

 

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).

 

Hope this helps and makes some sense.

 

 

Alteryx Certified Partner
Alteryx Certified Partner

@manojeaswaran 

 

Another way to stop your workflow in a tool is using a Batch Macro.


That's because for the batch process to end every record has to go through the macro. 

 

So this is another way to control your steps. 

 

Cheers,

Labels