In this tutorial, you will learn the step-by-step approach for extracting OBIEE data using Tableau Desktop and then using incremental refresh to fetch the latest OBIEE data.
The benefit of this approach is that it allows you to alleviate the query performance issues of OBIEE by using Tableau's in-memory database to locally store OBIEE data in a secure manner. Plus, the entire process is almost completely automated, so no need for manual, risky CSV extracts and uploads.
Pre-requisites
- BI Connector Desktop edition should be installed and configured in your PC (which has Tableau Desktop). Refer to the install guide.
- You should know how to use BI Connector to create Tableau visualizations for OBIEE data. Refer to the user guide.
Creating an extract
1. After connecting to OBIEE using BI Connector, select the tables from the subject area into the Join area. At this point, keep the Connection as Live connection.
2. Next go to the Worksheet and create the needed visualization.
3. Once you have the visualization ready, go back to the Data Source and select Extract in the Connection.
4. Click on Edit next to Extract radio button. In the Extract Data UI,
a. Set the required filters
b. Select Incremental refresh. Select the column to be used for determining new data.
c. Optionally, click on Hide All Unused Fields. This would reduce the columns being extracted from OBIEE into Tableau and improve query performance for extracting data from OBIEE.
Click Ok.
5. Click on Worksheet. You will be prompted to save the Extract. Save it.
6. The extract will be created. Depending on your OBIEE data source, volume of data, number of tables being extracted, and number of columns being extracted, this could take some time. Please be patient since you could be extracted a huge volume of data from OBIEE into your Tableau.
Note: Some consultants who are not familiar with OBIEE or databases incorrectly recommend customers to bypass OBIEE and connect directly from Tableau to the underlying database when they hear about slow queries. If the problem is with the tables/joins/columns/volume of data, going directly to the database is not going to solve the performance issue. Query performance will remain more or less the same whether you execute the query through OBIEE or directly in the database!
In addition to not solving the problem, by going directly to the data warehouse, you are opening a Pandora’s box by not using the business data model and security model in OBIEE. Just imagine the cost of recreating all this logic (if at all possible), maintaining it in the database layer, and enhancing it as your business needs grow. To learn more on why connecting directly to the data warehouse is not a good idea, refer to this blog.
7. When the extract is completed, you will be taken to the Worksheet. You are now ready to visualize the extracted data as needed.
Refreshing an extract
Once you have created an extract, you can incrementally refresh the extract with new data from OBIEE. The incremental refresh will be much faster than a full refresh. Here are the steps:
1. First, it is important to learn what not to do to execute an incremental refresh. If you just want to incrementally refresh the extract, you should avoid going back and forth between Data Source tab and Worksheet tab. You should stay in the Worksheet tab only. This is because, whenever you go from Data Source tab to Worksheet, Tableau will perform a Full Refresh of the extract. Depending upon your volume of data, this could take considerable time. So avoid going to the Data Source tab once you have created an extract.
2. In the Worksheet, Select Data --> <Your Extract Name> --> Extract --> Refresh (Incremental). This will execute an incremental refresh.
3. You can verify the Extract History to see the time of latest refresh.
You can use this approach to refresh the extract with the latest OBIEE data as needed.
Summary
BI Connector provides a convenient and simple way to avoid the query performance issues of OBIEE while using the data model and security model of OBIEE. It allows you to extract OBIEE data into Tableau and incrementally refresh it as needed. Users can create visualizations instantly without any delays from slow queries.