Overall Satisfaction with Tableau Desktop
Tablea Desktop Overview
Tableau Desktop is used to visualize and analyze data, create workbooks, visualizations, dashboards and stories.The way it works is the developer creates a data source, bring in the data inside Tableau from the corresponding data source, create visualization, grid or dashboard and finally publish it to the server. Once it is published to the server the end users will be able to go to Tableau online and view the visualization or dashboard. With correct permission end users will be also be able to slice and dice the data to get more insight. Apart from developers the business users/end users generally don't have permission to change the underlying data.
Use Case 1
Cooking the data is very important & this is one of most general use case
Here are the steps of creating own data model/data warehouse & reporting via Tableau Desktop
i) Create your own bus matrix to make sure the you are clear about the requirement. Bus matrix gives you an overview about how each fact and dimensions is associated with each other
ii) Extract, transform all the data either using the ETL tool or using SQL in the database
iii) Build your facts and dimensions using the best practices (Build a star or snowflake or hybrid schema based on the requirement)
iv) Bring those facts and dimension in a separate tool for creating the relationship and associate them( for example SSAS). Basically create a SSAS cube and deploy it in server and push it to EDW or DataMart
v) So now the data is residing in a organized way in EDW or DataMart. It is cooked and ready for reporting and visualization
vi) Open Tableau Desktop and connect the cube using the Microsoft SSAS connector
vii) Build your own datasets, visualization, workbooks, dashboards
viii) Once done deploy them to Tableau server for online access
Let me give a perfect scenario where Tableau shouldn't be used -
If you are planning to ETL the data, create your fact and dimensions and bring them inside Tableau for creating your relationship and hierarchies then you are wrong. Tableau doesn't support any sort of data modeling options inside it. If you are ETLing the data and creating your relationship and hierarchy in a separate tool and pushing them to EDW and are expecting to report and visualize out of a reporting tool, then Tableau would be a perfect tool to do that.
- Creating visuals are very quick. Doesn't need much training. Anyone who can handle Excel can also handle Tableau visualization. The interface is well organized and everything is possible with less clicks. The default color layout & representation of graph & grid is very attractive. So excellent use experience.
- Data Source Connectivity- It provides lot of data source connection options. Tableau provides an option to connect to a file (Excel, Text, Access, CSV etc. ), connect to DataBase (Microsoft SQL Server Oracle, Amazon Redshift etc.), ODBC connections, Google Analytics, SAP HANA and many more.
- Excellent mobile support. Tableau put a lot of effort into developing a robust mobile client. Sensitive Control & Reports are pixel perfect.
- There is no concept of Change Management or versioning. The way it works is -i) Connect to your source ii) Build the reports in Desktop iii) Publish them online. Now for example if you did some modification & republished it, Tableau Online would always show the latest version. There is no way to retrieve the previous version of report.
- 3D Charts are not available
- Connecting live to Hadoop via ODBC driver is still painful because of its performance.
- Cost is high,this means you need to buy a Desktop license and server separately. The cost is a major factor desktop - $2000 with yearly maintenance paid upfront. This combined with maintenance of - $200, which you need to pay every year. This is per user.
Based on the use case we use different tools. Here are the pros & cons
i) Suits perfectly for SQL Environment( not big data). We have created the maximum of our dashboard against SQL Server Database. They are perfectly designed, fast while retrieving data, and has very efficient online manipulation.
ii) I prefer using Tableau Online if I want to drill down.
iv) Unlike SSRS Tableau Online helps us to create on the fly calculations in the web browser. So no manipulation is needed every time in the dataset
i) Report Scheduling Options are not the best in Tableau. If we see new a requirement of a report with email distribution, mobile distribution we don't prefer Tableau
ii) Big Data (Hadoop) Live Interactions are slow. You need a special approach and extra implementation using middleware to make data retrieval faster
iii) Architect mode is not available
One thing to keep in mind is if the company is very small and has less of a budget to spend on tools for each ETL layer, architect and visualization layer then Tableau won't be a good choice. It might be expensive for them. Also you can't bring in facts and dimension inside Tableau Desktop to create relationships and logical model like MicroStrategy.