Thursday, 14 November 2013

Tableau Data Extract API

::Tableau Data Extract API::

Use the Tableau Data Extract API to connect to data that is not a supported data source. With
the Tableau Data Extract API, you create a program that accesses and processes your data.
You then use that program to create a Tableau Data Extract (TDE) file.
The Data Extract API is available for developers on Windows platforms. Go to http://www-, and choose the appropriate version for your platform
and programming language:

  •    Data Extract API – Python – 32-bit
  •    Data Extract API – Python – 64-bit
  •    Data Extract API - C/C++/Java – 32-bit
  •    Data Extract API - C/C++/Java - 64bit

::Notes for Developers::

The Data Extract API includes a sample program, makeorder, coded in each supported language
to demonstrate a typical usage scenario: creating an extract containing product orders.
The application creates the extract order.tde with several columns of different types. The general
flow of the sample programs is:
1. Open an Extract object to create a new file.
2. Define the extract’s schema using a TableDefinition.
3. Add the Extract table.
4. Insert rows.
5. Close all objects.

It is important to free memory by closing all objects, and it is particularly critical to ensure
Extract objects are cleaned up properly, particularly in non-native execution environments. See
the note sections below for language-specific details.

String columns in a Data Extract can be 8- or 16-bit and can be sorted according to many available
collations. By default, strings are sorted according to their binary representation, though
this can be changed on a per-table or per-column basis.

::Python Notes::

Objects in the Data Extract API are automatically closed by _del_ when necessary. While garbage collection handles the vast majority of concerns related to releasing resources, it is important to note that the virtual machine provides no guarantee that any particular object will ever be freed. While most objects are merely memory, Extract objects represent physical files
created when close is invoked. Therefore, it is not safe to rely on garbage collection to close
Extract objects. We recommend using with statements to ensure Extract instances are
cleaned up. Alternatively, you can explicitly call close

::Java Notes::

Data Extract API objects are automatically closed by finalize() as necessary. The Java
Virtual Machine does not guarantee that any particular object is ever garbage collected. While
most objects are merely memory that can be safely reclaimed by the operating system at JVM
shutdown, Extract objects represent physical files that are created when close() is invoked.
Therefore, it is important to invoke Java Notes Data Extract API objects are automatically closed by finalize() as necessary. The Java Virtual Machine does not guarantee that any particular object is ever garbage collected. While most objects are merely memory that can be safely reclaimed by the operating system at JVM shutdown, Extract objects represent physical files that are created when close() is invoked.Therefore, it is important to invoke Extract.close() for all Extract instances. We recommend using the try-with-resources construct introduced in Java 7. For earlier versions of Java, you must call Java Notes

::C++ Notes::

Data Extract API objects should be managed according to standard memory management
best practices, such as using stack variables or smart pointers. As in other languages, all
objects have a Close() method to free internal resources. Close() is invoked by the
destructor when necessary. However, it is important to note that Extract::Close() may
throw an exception, so it is safer to call it explicitly, rather than allowing an exception to potentially escape the destructor.

::C Notes::

Objects in the Data Extract C API are managed through opaque TAB_HANDLEs. Every
created object must be closed. It is advisable to free objects in the reverse order of creation. explicitly.

Thanks Guru's,

Optimizing Extracts

::Optimizing Extracts::

  • To improve performance when working with extracts you can optimize the extract. Optimizing moves the calculated fields you’ve created into the extract so that they don’t have to be computed locally every time you use them.
  • Optimize the extract by selecting a data source on the Data menu and then selecting  Extract >Optimize.
  • When you modify the calculated field, the modified version will be used until you optimize the extract again.
  • Each time you optimize the extract, any deleted calculations will be removed fro the extract, new ones will be added, and modified ones will be updated.

Thanks Guru's,


::Extracting Data::

Extracts are saved subsets of a data source that you can use to improve performance, upgradeyour data to allow for more advanced capabilities, and analyze offline. You can create an extract by defining filters and limits that include the data you want in the extract. After you create an extract you can refresh it with data from the original data source. You can either fully refresh the data, replacing all of the extract contents; or you can increment the extract; which only adds rows that are new since the last refresh.

Extracts can:

  • l Improve performance. For file based data sources such as Excel or Access, a full extract takes advantage of the Tableau data engine. For large data sources, a filtered extract can limit the load on the server when you only need a subset of data.

  • l Add functionality to file based data sources, such as the ability to compute Count Distinct.
  • l Provide offline access to your data. If you are traveling and need to access your data offline, you can extract the relevant data to a local data source.

Thanks Guru's,


  • Data blending is when you blend data from multiple data sources on a single worksheet. 
  • The data is joined on common dimensions. Data Blending does not create row level joins and is not a way to add new dimensions or rows to your data. Instead, data blending should be used when you have related data in multiple data sources that you want to analyze together in a single view. For example, you may have Sales data collected in an Oracle database and Sales Goal data in an Excel spreadsheet.
  • To compare actual sales to target sales, you can blend the data based on common dimensions to get access to the Sales Goal measure.
  • To integrate data, you must first define common dimensions between the primary and secondary data sources. For example, when blending Actual and Target sales data, the two data sources may have a Date field in common. The Date field must be specified as a linking field.
  •  If the two dimensions don’t have the same name, you can define a custom relationship that creates the correct mapping between fields.
  • For each data source that is used on the sheet, a query is sent to the database and the results are processed. Then all the results are left joined on the common dimensions.
  •  The join is done on the member aliases of the common dimensions so if the underlying values aren’t an exact match, you can fix it up in Tableau.
  • In general, a good test to see whether data can be integrated smoothly is to drag the dimensions from the primary data source into a text table on one sheet. Then on another sheet, drag the same fields from the secondary data source into a text table. 
  • If the two tables match up then the data is most likely going to blend correctly

Thanks Guru's,

Wednesday, 13 November 2013

Tableau Workspace

  • The Tableau workspace consists of menus, a toolbar, the Data window, cards that containshelves and legends, and one or more sheets. Sheets can be worksheets or dashboards.
  • Worksheets contain shelves, which are where you drag data fields to build views. You canchange the default layout of the shelves and cards to suit your needs, including resizing, moving,and hiding them.
  • Dashboards contain views, legends, and quick filters. When you first create a dashboard, theDashboard is empty and all of the worksheets in the workbook are shown in the Dashboardwindow.
                                                           Workspace in Tableau 8

Workspace in Tableau 9

Thanks Guru's,



  • Tableau workbook files are much like Microsoft Excel workbooks. They contain one or more sheets, which can be worksheets or dashboards. They allow you to organize, save, and share your results.
  • The workbook is the container for all of your work in Tableau.
  • When you open Tableau, a blank workbook is automatically created.
  • You can also create a new workbook by selecting File > New or by pressing Ctrl + N on your keyboard. 
  • You can open an existing workbook by doing one of the following:
  • Click the thumbnail image of the workbook on the start page. The start page shows workbooks that you’ve recently opened.
  • Select File > Open and navigate to the location of your workbook using the Open dialog box. 
  • Tableau workbooks have a .twb or .twbx file extension.
  • Double-click on any workbook file in the Windows explorer.
  • Drag any workbook file onto the Tableau desktop icon or onto the running application.
  • The workbook name is displayed in Tableau’s title bar.

Thanks Guru's,