I don’t blog often, but when I do, I blog about something awesome. This is the case with Tableau Prep. Tableau Prep has been out for a while, but I had not yet given it a hard look until recently.
The rest of this article will tell the story of my Tableau Prep examination and go into further detail of my findings. However, it may be tl;dr for some of you so here are the highlights.
Tableau Prep = awesome because:
- It creates an easy way to explore what your data looks like.
- It neatly separates data cleaning from data analysis.
- It acts as a log of recommended changes for the data source.
- It enables multi-step data preparation and calculations.
So Many Tech Tools, So Little Time
As an analytics consultant, it is exhausting to keep up with the endless stream of new tools and technologies that are flooding the analytics market. Moreover, I come from a business background instead of a tech one, and as a result, I could not care less about how “cool” a new tool is. I only care about whether the tool helps users do their job. This means that sometimes I view a new tool as more of a burden than something with which to get actual work done. When Tableau initially introduced Tableau Prep, I was hopeful that maybe it would replace the need for so many other tools. At that time, though, I briefly left the Tableau world to do some non-profit work, but when I returned a year later, I was excited to learn what Tableau Prep had become.
Meeting Tableau Prep for the First Time
To be honest, I was a little underwhelmed after my first look at the tool and reading up on some reviews. It mostly seemed to do what Tableau Desktop was already capable of doing. Furthermore, it didn’t seem to do enough other things to replace any of the tools I was already using. It didn’t do enough data science to replace Alteryx or Dataiku, and it didn’t do enough data reshaping and iteration to fully replace SQL queries/views or any other scripting language. I could see how Tableau Prep would be helpful in a narrow set of circumstances, but I thought it wasn’t that impressive or useful of a tool altogether. I was wrong.
I recently had some time between client engagements and decided to give Tableau Prep a more thorough examination. What I discovered blew my socks off. The first thing I noticed was the data exploration features in the profile pane. As a consultant, I am always being given new datasets to work with that I must quickly understand in order to begin dashboard development. What is the primary key? Are there columns that are mostly null? What does the value distribution of a measure look like? So on and so forth. Answering these questions directly in Tableau Desktop is time consuming. In the past, I used the Data Discovery feature in Power Tools for Tableau Desktop by InterWorks, Inc. But now, Tableau Prep has given me a way to perform much of this exploration.
For example, in the image below, I can see that there are only three product categories, making it an excellent candidate to slice or filter data. I can tell that most orders are not returned due to the high No count in the Returned? column. I can see that it takes anywhere from zero (0) to seven (7) days for an item to ship, with four (4) days being most common. I can detect that the Approver field has inconsistencies that need to be cleaned because C. Arnold has at least five different variations. And it appears that Order ID would be an excellent primary key (high cardinality), but there are a lot of nulls that need to be explained.
Moreover, there are useful features that can’t be shown in an image, such as the ability to sort fields and the highlighting of associated records when a value from one field is selected. All this information—and much more—about the dataset is easily found in the profile pane. Getting this insight from exploring directly in Tableau Desktop would take too much time, and this method of data exploration is much faster and easier than any other tool I’ve used.
Practical Benefits of Tableau Prep
The next two primary uses for Tableau Prep I found were highlighted by some recent client work I had done. I had just wrapped up a couple of client engagements where I spent a lot of time cleaning the data. Then, the analysis they wanted required the use of many Tableau tricks and obscure features. By the time it was done, the workbook was cluttered with numerous calculated fields, special formatting, data reshaping tricks, etc. Understanding such a workbook would be difficult, not to mention maintaining it.
Furthermore, it was difficult to then identify what changes the client should make to the underlying data source. What I needed was a way to separate the steps I took to clean and prepare the data versus those I took for analytical or visual purposes.
This is where Tableau Prep is invaluable. Using Tableau Prep, you can isolate and identify all the cleaning and preparing work the data source needs. As an example, let’s look at the sample workflow below provided by Tableau.
Separating and Analyzing Data
First, let’s think of the benefits to downstream users. Most of the steps in the flow below could be implemented directly into the workbook, but this would add extra complexity and constraints to the workbook, and whoever has to maintain it won’t appreciate that. Using Tableau Prep for these changes allows the downstream user to only worry about the visual or analytical aspects of the workbook.
Logging Recommended Data Changes
Secondly, let’s think about how this approach benefits the data team. Viewing this flow, they know exactly how users are changing and/or reshaping the data. This information is incredibly hard to put into words but easy to visually understand due to the way it is presented in the flow. It’s also not diluted with all the analytical and visual steps taken in the actual Tableau workbook.
Finally, the data preparation process can be complex and time consuming. Let’s say the work below was done directly in Tableau Desktop and took the developer a full day to implement. At the end of the day, they wouldn’t have a single view or dashboard to show for their work. Defending the time they spent using just the workbook as evidence is challenging because the work isn’t apparent to end users. But with Tableau Prep, there is a visible product of their work. This helps to justify the time they spent working on the project. The flow itself is valuable not only for the reasons already listed but also because it can be shared with others to reduce similar work needed in the future.
Multi-Step Data Preparation and Logic
The capability of Tableau Prep that I’m most excited to start using is its ability to create multiple layers of logic and data preparation. Lately, a lot of the work clients are requesting involves implementing multiple steps of data logic into their Tableau analysis.
While Tableau Desktop can accommodate some layering, it was not designed for this. Consequently, when doing this work in Tableau Desktop, in order to coax Tableau into doing my bidding, I end up having to use a plethora of tricks in inadvisable ways. This usually involves a combination of methods, such as using lots of LOD calculations specified at different levels of granularity or bringing extra data onto a visualization to get a table calculation to compute correctly but then hiding some data (using a different table calculation as a filter) or separating a data source to allow for the implementation of different operations for each sub-source, only to bring them back together using blending. The end result is always a workbook with logic as hard to understand as the previous sentence!
Workbook Flexibility and Adaptability
Another consequence of these methods (other than increased complexity) is that they make the workbook less flexible to accommodate future changes. Using methods like these may mean that simply changing a chart type requires significant work because perhaps all the underlying table calculations need adjusting, or a whole new set of LOD calculations needs to be created.
In some cases, it is simply impossible to implement all the layers in Tableau Desktop alone. In the past, I have requested access to the client’s SQL database, if they have one, so that I can implement the multi-step preparation there. However, the clients usually deny this request; sometimes for security reasons, but most of the time because they don’t have the skills to use or the permissions to access the database, which means they would lose control of the entire process.
Enter Tableau Prep! Tableau Prep solves this problem for the most part. There are still some forms of data preparation that are prohibitively challenging or currently not possible to do in Tableau Prep, but for the vast majority of the requests I encounter, Tableau Prep gives me everything I need:
- I can create necessary intermediate calculations without carrying them into the ending dataset.
- I can execute special operations to subsets of my data easily.
- I can create many layers of logic where the results of calculations flow into the next layer’s calculations.
- I can join different sets of data at whatever level of aggregation I choose.
- I can pivot, union, rename, split, create a new field, etc. in whatever step of the preparation process I want.
None of this complicates or limits the development of the Tableau workbook!
Why Wouldn’t You Want Tableau Prep?
There are many other useful functions of this tool that I do not have time to evaluate here. My main point is that Tableau Prep is not a niche add-on to Tableau Desktop. It is not another exhausting analytics product to further burden analysts. It is a robust product that can deliver incredible value, and it will only improve as Tableau continues to develop it. While it doesn’t currently replace all need for other tools, I can promise you that I’ll be spending a lot less time using those other tools now that I’ve discovered Tableau Prep.