Loading

Temp Tables in Tableau Desktop and Tableau Server

Дата публикации: Sep 24, 2025
Задача
When and why do Tableau Desktop and Tableau Server create temp tables?
Действия

Temp Table Creation 

A temp table is created for both Live and Extract connection when a workbook is opened on Tableau Desktop or when a user signs into Tableau Server and accesses a view. These temp tables are stored in the temporary storage of the data source the view is connected to, and can be identified in the database by the #Tableau prefix. Temp tables can contain information about the connection or information necessary to prepare the view. For example: 

  • Information used to check for data source permissions 
  • Filters, such as context filters, quick filters, top n filters, and user filters
  • Data blending information

Temp Table Removal

A temp table is deleted when the corresponding database connection is closed, as long as the user who opened the workbook has Delete permissions for the database. The connection is closed when the workbook is closed on Tableau Desktop, or when the Tableau Server connection is inactive for a period of time. If Tableau Desktop or Server closes unexpectedly, the connection will be automatically closed and the corresponding temp tables will be deleted from the database. 

If needed, the creation of temp tables can be managed by restricting permissions to the database. Also, you can stop the creation of temp tables by using a Tableau Data Customization (.tdc) file with the following flag: CAP_CREATE_TEMP_TABLES=NO. 
For more information on .tdc files, see Tableau Capability Customizations Reference.

Note: Restricting the creation of temp tables may have an impact on the overall performance of your workbooks and views. 
Important: Tableau does not test or support TDC files. These files should be used as a tool to explore or occasionally address issues with your data connection. Creating and maintaining TDC files requires careful manual editing, and there is no support for sharing these files.

Temp Tables for Tableau Server VizQL Process 

The Tableau Server VizQL process creates temp tables because it establishes connections to the database to load and render views. Some user sessions will share the same VizQL process, and therefore the same temp table. 

For example, a temp table created by the VizQL process will be shared among multiple user sessions if the connection is made to a database on the same server and is being accessed by the same database user.  However, the temp table will not be shared if any of these properties are different. 

Дополнительные ресурсы
Live Connections:
  • Tableau may generate temporary tables when performing complex operations such as joins, level-of-detail (LOD) calculations, or aggregations that the database cannot efficiently execute in a single query. These temporary tables exist only for the duration of the session and are managed within the database.
Extract Connections:
  • Extracts are optimized for Tableau’s internal data engine, which reduces the need for temporary tables. However, Tableau may still create temp tables in certain cases, such as when using RAWSQL functions or when a virtual connection interacts with a live database.
To verify temp table usage, you can monitor database query logs (e.g. using pg_stat_activity in PostgreSQL, SQL Server Profiler, or MySQL General Query Log) while running Tableau queries.
Номер статьи базы знаний

001458036

 
Загрузка
Salesforce Help | Article