Over the next few weeks, leading up to the Tableau Think Data Thursday presentation (register now!), I’ll take a look at some fun facts about Tableau 9 Level of Detail calculations. Today, let’s take a look at life before LOD calcs:
In versions prior to Tableau 9.0, Level of Detail (LOD) calculations were not available. That meant that there were only a few ways to effectively work with different levels of detail in the same view:
All of these had potential draw-backs.
Table calculations are relatively easy when you want to work at higher levels of detail in a view (essentially the equivalent of EXCLUDE), but much more cumbersome when working with lower levels (essentially an INCLUDE or FIXED), because you’d have to include dimensions for the lower level of detail in the view and then hide using some kind of First(), Index() or Last() filter to hide the lower level of detail. You can see the difference here: Charting new distinct values per period?
Data blending was often the most effective, because you could control the level of detail for the blend – however, you could run into issues when using DB2 (data blending with fields from the primary source not present in the view) because certain calculations (such as COUNTD) were not allowed. You’d also have to maintain multiple copies of the data source.
Sets were very effective when you needed to work with a level of detail of a single dimension. But you could only get IN/OUT of the set and you couldn’t use multiple dimensions for a computed set. So, you could get a set of every customer with a first purchase in 2014. But you couldn’t get the first year of purchase per customer at a row level.
Totals represent a higher level of detail within a view and there are some work-arounds to customize them — but there’s not a lot of flexibility.
Tableau 9.0 Level of Detail calcs are a real game-changer and Tableau 9 opens up a lot of possibilities for answering questions that would have previously required quite a bit of complexity.
How have LOD calcs changed the game for you? Let me know in the comments. Stay tuned… there’s more to come!