Tableau Prep Conductor Supports Custom Schedules

Schedule your Tableau Prep Conductor flows to run using custom schedules.

Take control of your data with the new Custom Schedules feature now available with Tableau Prep Conductor. Custom Schedules elevate your data management experience by scheduling your dataflows with personalized scheduling precision, letting you choose from hourly, daily, weekly, or monthly frequencies. Advanced users have the ability to leverage parameters, linked tasks, and the Flow Task REST API to finely orchestrate flow schedules. These upgraded features not only grant you more control but also enrich your data journey, enabling you to maximize the potential of your data resources.

About Tableau Prep Conductor

Tableau Prep Conductor is a tool that enables you to schedule, monitor, and efficiently manage your Tableau Prep flows. You can purchase a license for Data Management, which includes Prep Conductor, on a per-deployment basis. After purchase, Prep Conductor is automatically enabled on your Tableau Cloud site, allowing you to hit the ground running.

What’s new

With custom schedules, you’re no longer limited to pre-configured schedule options. You can now schedule your flows to run using the following intervals:

  • Hourly: The available frequency is every hour from a specific start time to a specific end time 
  • Daily: The available frequencies are every two, four, six, eight, or twelve hours, or just once a day. You can also choose one or more days of the week, in addition to start and end times 
  • Weekly: The available frequency is one or more days of the week at a specific time 
  • Monthly: This can be set up in two different ways:
    • Option 1: Select day as the frequency interval. This allows for specific dates of the month to be selected 
    • Option 2: Select the first, second, third, fourth, fifth, and the last day of the week at a specific time 

Let’s walk through an example

As an example, let's say I am a business manager for an online retailer. My role involves overseeing the small appliances category and keeping our executives informed on the latest developments. To achieve this, I am responsible for creating daily sales reports to be presented during business review meetings.

My company has adopted a cloud-based database system to keep track of every order that is placed. The orders table is quite massive, containing billions of records, and it has many columns that are irrelevant to my daily sales reports. To present the necessary daily sales figures, I use Tableau Dashboards.

I use Tableau Prep to access the large orders table to ensure that my dashboards update quickly. Previously, I had created a Prep flow to retrieve sales information with per-second granularity and aggregate it into daily summaries. This is what I used to feed my dashboards. I scheduled Tableau Prep Conductor to run the flow once per day before business hours. However, given the huge amount of data I was processing, the flow consistently took hours to complete, and sometimes it would even finish just as I was starting my day, causing me a lot of stress.

Using custom schedules makes my flow faster, and I now receive updated insights when needed. Let me guide you through how I built my flow and how to operate it:

  1. I started by connecting to the orders table. I then followed three steps outlined in the Best Practices to Improve the Performance of Your Data Preparation Flows blog to make my flow run quickly. First, I filtered on Category = ‘Small appliances’ in the Input Step, since I’m only interested in that category.


  2. For the Input Step, I removed unnecessary columns such as Customer Name, Phone Number, and Street Address, and focused only on sales volume. 


  3. Since I run the flow on a schedule, I enabled incremental refresh in the Input Step. This ensures that the flow only pulls data that was added since the last run.


  4. The idea of doing more with less is becoming increasingly common these days. Let me give you an example of my category manager colleagues. They are responsible for managing categories and have similar reporting requirements. To reduce the workload for my team, I have created a flow that my peers can use for their specific needs. For this purpose, I have designed a parameter called "Categories." 


    I updated the original filter in the Input Step to use the "Categories" parameter instead of hard coding it to "Small appliances."


  5. I then authored a basic flow to transform per-transaction order information to hourly aggregates. Using a Clean Step, I am able to truncate the order time and create a new column.


  6. I connected an Aggregate Step to a Clean Step to aggregate orders by hour. 


    I connected an Output Step to the Aggregate Step and finished by publishing my flow. 


  7. At this point, you might be asking yourself why I aggregated orders by hour when I only need to present daily reports. The reason is that I plan to schedule my process to run multiple times throughout the day, and hourly data is a useful level of detail.

    And now to the fun part—scheduling! To schedule the flow, select the Schedule button. This will open a new tab. 

    I need access to sales data before I start my workday, and it would be great to receive updates throughout the day, particularly during peak times of the year. I would like to receive three updates, with one every eight hours. I've scheduled my flow to run on weekdays, starting just after the hour at midnight, 8 a.m., and 4 p.m. This will give me fresh data before I start work and leave for the day, while also reducing the time for my flow to run.


Let us hear from you

The enhanced functionality of Tableau Prep Conductor allows you to gain further control and flexibility over your data refresh process. With the power of Custom Schedules, you can schedule and automate the perfect data refresh cadence to ensure your data is always up to date.

Dive into the latest update of Tableau Prep Conductor in Tableau Cloud and experience the power of Custom Schedules for yourself. We are eager to hear about your experiences and how you're leveraging this new feature. Share your experiences in the comment section below and share your feedback with us in our forums—your insights are invaluable to us.