I recently met with a client who realized the power of Tableau by purchasing enough Desktop and Server licensing to equip nearly everyone in his entire organization with its powerful analytics and reporting capabilities. He then proceeded to ask for estimates on building an OLAP cube on top of his data warehouse database, so he could “make self-service reporting faster” for users. I wanted to respond as politely as possible, but I also wanted to send a clear message: building cubes for use with Tableau can be a waste of time!
“But, we have so much data!”
Performance with large data sets should not be your concern. Tableau handles millions of rows even in very “wide” tables amazingly fast, and is still impressively speedy with hundreds of millions of rows, especially with the release of 9.0 in April this year.
How does Tableau perform so well? For starters, Tableau’s data engine is built on an in-memory analytic database that enables parallel queries, plus it has the “smarts” to reduce and simplify the number of queries from a dashboard to the same data source. But perhaps most importantly, Tableau uses query caching. This can provide near instant load time when opening workbooks. For more details, take a look at Tableau’s performance feature summary. The important takeaway is that this superior level of performance is obtained even on top of relational databases or other sources that are not necessarily optimized for performance and aggregation at different levels of granularity.
There are other time savings as well. Typically cubes require developers to create measures, dimensional hierarchies, and their attributes. But with Tableau, business users don’t need to wait for developers to complete their requests. When Tableau loads a data set, it automatically recognizes which data elements are dimensions, which are likely to be measures. When needed, end users can create hierarchies with a few clicks in the interface, and build any measure they want using calculated fields. Everything can be saved with the data set and published to Tableau Server or Tableau Online for other business users to access. Both enable automated refreshes of data sets. In this way, the business manages the data and IT provides the technical platform to enable business self-service.
In the end, Tableau works amazingly well on relational databases, and while it does connect to OLAP cubes, doing so is duplicative of the aggregation and hierarchy capabilities native to Tableau. And Tableau is even optimized for many non-SQL and big data solutions, such as the direct connector to Google’s BigQuery.
If you’d like to see Tableau in action with large data sets, Marquis Data is happy to provide a live demonstration. In the meantime, tell your developers to stop building cubes for Tableau!