Best Practices to Scale Your Alteryx Server
by Bharti Dalal - 4 years ago in Alteryx
A comprehensive and scalable enterprise-wide analytics solution, Alteryx Server is a powerful analytics and ETL tool.
It helps you make informed business decisions by enabling you to quickly process and analyze relevant data.
The server also gives you complete control over permissions and empowers you to build a secure development environment.
In addition to this, it doesn’t take long to install, configure, and start using server features such as scheduling workflows, building automation, as well as the Gallery API, in order to implement processes.
The server gives you a variety of options to scale and offload data-intensive processes into an architecture based on your preference—with improved governance and extensive analytics-friendly capabilities.
Design architecture for one to one thousand users, on-premise or on cloud, and scale up or scale-out, easily.
In this blog post, we look at best practices to scale your Alteryx Server to help you power business decisions with data-driven insights.
Scenarios to scale your server
Alteryx Server consists of 3 main components:
- The Controller
- The Worker
- The Gallery
The basic server architecture involves installing these components on a single machine and then using them for development tasks.
Here is what the basic architecture looks like:
As your user base increases and results in more server workload, you need to scale server components.
Here are some guidelines from Alteryx Server’s official documentation:
The workload type on your server will determine the components to be scaled.
For example, if you require more redundancy and High Availability (HA) architecture, consider scaling up the Worker, Gallery, and Database at the same time.
On the other hand, you need to scale your Worker component, if:
- You require better workflow execution
- The number of backend jobs has increased
- More workflows are in the queue for a longer period
In case there is an increase in the number of simultaneous users, you need to scale the Worker, as well as the Gallery.
High memory consumption on web nodes indicates that you need to scale the Gallery component of the server.
Best practices to scale your server
When sizing and scaling your Alteryx server, you need to keep in mind overall performance, as well as data availability and management.
It is important to consider the following points with regard to server architecture before making a decision:
- System/machine specifications
- Quantity of users & workflow load
- Nature of automation
- Data volume
- Performance expectations
You can either scale up by adding more capacity to your existing infrastructure or scale out by adding more infrastructure in terms of server components.
If you have a long job queue and multiple nodes already working, consider scaling up existing infrastructure to accommodate the workload.
Increased RAM helps improve performance and is best suited for long-running jobs.
Alteryx documentation suggests that users consider Worker instances vs workflow execution time in order to decide the scaling requirement.
Here are the number of Worker instances required to execute workloads with different run times:
Another important factor to consider here is Worker performance.
Workers have several configuration settings.
The two settings that are the most important for optimizing workflow performance are simultaneous workflows and max sort/join memory.
For a 4 core Worker, consider running one workflow at a time.
For 8 core Workers, you can have 2 workflows running with no performance issues.
Adjust this setting based on your Worker nodes in order to fine-tune performance.
The ‘max sort/join memory’ configuration helps you manage the load on the Worker machine due to workflows.
While determining your Worker configuration and setting up the max sort/join memory, consider keeping memory space of 4 GB for OS processes.
This will help you make the best use of Worker infrastructure.
Here are sort/join memory configurations, as recommended by Alteryx experts:
It is also important to keep cost considerations in mind while scaling up server infrastructure.
The server will have licensing implications based on the number of cores added to the infrastructure, and you’ll need to license additional nodes regardless of function.
Power data-driven decision making with your Alteryx Server!
In this blog post, we looked at best practices to scale your Alteryx Server to help you power business decisions with data-driven insights.
Deploy and share analytics, and collaborate on critical business decisions by taking these into consideration, when scaling your Alteryx Server.
At Grazitti, the data analytics team knows just how important it is to be able to effectively scale your Alteryx server and fuel decision-making with data-driven business insights.
Should you want to know more, feel free to write to us at email@example.com and we’ll take it from there!
Did you like our blog? Subscribe to receive more awesome posts right into your inbox.