Get Inspire insights from former attendees in our AMA discussion thread on Inspire Buzz. ACEs and other community members are on call all week to answer!

Alteryx Designer Desktop Discussions

Find answers, ask questions, and share expertise about Alteryx Designer Desktop and Intelligence Suite.

Is there a way to display number of Iterations in Iterative macro through an alteryx app?

Kurohits
10 - Fireball

Hi All, 

 

I am looking for a solution to display exact time that an iterative macro will take to run an Alteryx app. There are huge number of iterations that run through iterative macro and when anyone run workflow through Alteryx interface app, then no messages or runtime displays in the app that how much time it will take to run the overall workflow. 

 

I would really appreciate if any of you can help me to set this up in an Alteryx app. I just want that Alteryx interface app should display runtime message in the app while running so that users can see how much time it will take run iterative macro or complete workflow. 

 

Thanks in advance!!

 

  

6 REPLIES 6
TheOC
15 - Aurora
15 - Aurora

Hey @Kurohits 

Great question. So from what i understand (and please, correct me if im wrong), you are looking to calculate how long a workflow will take to run, and present that to a user prior to running?

The main solution i can think for this, is calculating an average time to run per iteration based on other executions of the workflow, and making some kind of prediction prior to running based on the data the input. However with iterative macros its almost impossible to calculate how many iterations will be required in some use-cases. 

 

What you could do, is have this calculated at the first step of a chained app, and display this in the user interface to the user at the very next step. I don't think this solution would be perfect however, as it would only be an estimate based on past runtimes, and there are many factors at play (power of machine, how many other applications/workflows are running at the same time, etc. There is an interactive lesson on chained apps which may be useful:
https://community.alteryx.com/t5/Interactive-Lessons/Chaining-Analytic-Apps/ta-p/243120 

Hope this helps, let me know if i've misunderstood your question.

Cheers,
TheOC


Bulien
danilang
19 - Altair
19 - Altair

Hi @Kurohits 

 

There currently is no way to have a dynamic display in a app while the app is running.  There's no way to show a progress bar, or have a text display that periodically updates.  As alternative to the chaining the app, as @TheOC's suggested, a another solution would be to run the app several times for small, medium and large inputs, take some averages and present this info to user in a Label.   

 

Dan   

Kurohits
10 - Fireball

Hey @TheOC 

 

Thanks for your response. Exactly I am looking for same solution as you tried to convey in your message. I have watched all the chained app videos previously and know how does chain app works. I understood that currently there is not any perfect way to display exact execution time in an app. The solution that you have shared seems like there are some way we can do it. I need your help in creating the workflow and then presenting it in an app. Can you please share any workaround workflow? How to calculate average time to run per iteration and then linking this to chained app? 

 

It would be great help if you could share any workflow so that I can implement this successfully. If possible please share step by step process. 

 

Thanks in advance !!

Kurohits
10 - Fireball

Hi @danilang 

 

Thanks for your reply. Can you please share any example workflow how to do this? I would really appreciate if you help me in this. 

 

Thanks in advance !!

danilang
19 - Altair
19 - Altair

Hi @Kurohits 

 

The method that I suggested doesn't involve a new workflow.  It's a manual process that you would perform.  Publish your workflow to the server and then run it with a series of sample data sets, small, medium and large with multiples runs of each size.  Gather all the run times and take some averages.  To the workflow that is on the server add a label that simply states the results of your tests.   The text could be something like this

 

You can expect that the run time of this workflow will vary according to the size of the input data set.   

Small datasets (<xxx records) should finish in about 2 minutes

Medium datasets (>xxx and < yyy) should finish in about 10 minutes

Large datasets (>yyy) may take up to an hour to run.

 

The sample I've given above assumes that the only factor is the number of records, but in your case the run time may depend on a number of factors, especially if it uses any kind of cross join or nested macros.   Tailor the message to your specific situation. 

 

Dan  

TheOC
15 - Aurora
15 - Aurora

hi @Kurohits 

My example would be virtually the same as @danilang.
I dont believe this is something i can provide a sample workflow for you, as it's completely dependent on your iterative macro's usecase. It's also impossible to say if it's possible to predict the number of iterations without knowing your use case.

 

As mentioned, you will have to work out a rough average using datasets that you have, and present these findings to the user prior to running the workflow.

 

Hope this helps,
TheOC

 

 


Bulien
Labels