Running a workflow in Alteryx Server may take longer than in Alteryx Desktop for several reasons. Here are some of the things that I noticed ( over the past few months) while working using Alteryx and studying new things as well. Please feel free to add your observations and workaround/solutions so I can learn from your experiences too : (disclosure - I don't have perfect English lol.. I did ask chat gpt to correct my sentences - forgive me ^.^; )
Server Load and Resource Sharing
Shared Resources: Alteryx Server operates in a shared environment where multiple workflows may be running simultaneously. This can lead to resource contention and slower performance.
Higher Load: If the server is handling many users or workflows at once, it may be under more load compared to running a single workflow on a desktop.
Data Source Access
Database Connections: If your workflow accesses databases or external data sources, the connection speed might differ between local and server environments, especially if the server has to go through additional network layers.
Caching and Optimization
No Caching: Alteryx Desktop may leverage caching for repeated operations, while the server might not have the same optimization, especially if the workflow is running for the first time or after changes.
Execution Plan: The execution plan generated by the server might be different and less optimized than the one created during local execution.
(On your desktop, Alteryx may cache results from previous runs. If your workflow includes a transformation step that has already been executed, it might run faster on the desktop. However, on the server, if the workflow runs for the first time or after modifications, it won’t benefit from caching.)
Scheduled Runs
Background Processes: Workflows scheduled to run on the server might also have background processes that affect performance, such as data refreshes or other tasks.
(If your workflow is scheduled to run during peak hours when many other workflows are also executing, it may experience delays. For instance, if numerous data refresh tasks are scheduled at the same time, your workflow may wait longer in a queue before execution begins.)
Tips for Improvement
Optimize Workflows: Review and optimize the workflow for efficiency, such as reducing the number of records processed or simplifying calculations.
(If the Workflow's data comes from a ODB/SQL it's better to limit the extracted data by choosing Table or Specify Query via SQL Editor)
Monitor Server Performance: Check server resource utilization to identify bottlenecks.
(Monitoring your data resources is a plus too. It's not always the Workflow's fault )
Adjust Scheduling: If possible, schedule workflows during off-peak hours to reduce load on the server.
(Haven't experience this, but I heard from other developers that it does happened - so avoid the rush hour)
Understanding these factors (and much more!) can help troubleshoot improve the performance of workflows running on Alteryx Server (that I worked on) compared to Alteryx Desktop.
Solved! Go to Solution.
Hi, This is informative. Also, i would like to add few if it could benefit someone:
1. The default number of workflows scheduled on a server is good to be set to the number of cores of CPU/2 i.e. half of the server's CPU cores should be the default number of workflows to be running on the server.
2. Also, periodical server health checks are mandatory which can include the disk space utilisation, job queue status and a few other important ones.
3. Alteryx server usage report workflow can be kept to run once in a week/ month atleast to study the results and optimise the server in a better way.
You are most welcome! Please feel free to add your personal experiences as a comment.. I also added this in linkedIn as an article for people to take reference too. ☺️
Wow! Yes yes! Thank you! These are very informative too. We do your #2 too 👌🏻..
Please feel free to add more in the future.. I'll do that as well.. 🌟
Thank you for finding it informative @shancmiralles! Sure.