Tableau Server Content Exploration Service

The Tableau Server Content Exploration Service extends the capabilities of the Search and Browse process and is responsible for indexing all content in Tableau Server. This service is available in Tableau Server 2021.1 and later and required to search and browse external assets such as databases and tables. Databases and tables are only available if you have Tableau Catalogue enabled.

The Content Exploration Service is applicable to both quick and filtered searches. This service is not based on SOLR but depends on the Elastic Search to perform its functions.

Server Configuration

The Content Exploration Service is automatically installed on the initial node.

Multi-Node Configuration

For high availability and better performance, we recommend you install at least one instance of the Content Exploration Service on every node that is running the Application Server.

Process

Content Exploration Service

StatusStatus of the Content Exploration Service is visible on the Status Page and can be accessed using the TSM CLI to view. For more information, see View Server Process Status
LoggingLogs generated by the Content Exploration Service are located in C:\ProgramData\Tableau\Tableau Server\data\tabsvc\logs\contentexploration. For more information, see Tableau Server Logs and Log File Locations

 

What happens when the Content Exploration Service fails?

If the Content Exploration Service stops working, any search requests for the content type it provides would fail to appear on the search results. If multiple instances of the service are installed, subsequent requests are routed to a healthy instance.

A failed Content Exploration service is automatically restarted; as long as the computer itself is otherwise healthy, the service will relaunch.

Performance Tuning

The Content Exploration Service has the ability to scale up as needed but based on the available memory on the node. However, there is a memory allocation set by default that determines the maximum amount of memory that can be used by the service. While it is not typically recommended that you change this setting if you are seeing performance issues due to insufficient memory allocation, you can run the following commands to change the maximum memory allocation setting.

First, retrieve the current maximum memory allocation by running the following command:

tsm configuration get -k contentexploration.vmopts

Run the following set command to change the maximum memory allocation by updating the -Xmx value, followed by applying the pending changes. Do not change any other options:

tsm configuration set -k contentexploration.vmopts -v "-Xmx<new value>m -XX:+ExitOnOutOfMemoryError -Dspring.profiles.active=monolith"

For example:

tsm configuration set -k contentexploration.vmopts -v "-Xmx1024m -XX:+ExitOnOutOfMemoryError -Dspring.profiles.active=monolith"

tsm pending-changes apply

Log Files

The Content Exploration Service creates two sets of log files:

  • control_contentexploration*.log: These logs will contain information about the service starting and being enabled.
  • contentexploration_*.log: Any errors or problems are logged here.

For more information, see Tableau Server Logs and Log File Locations.

Search Accuracy

There are couple of ways the Content Exploration Service is used to make sure that searchable content is kept up to date:

  • Whenever content managed by Tableau Server or Tableau Cloud is modified, including permissions, the Content Exploration Service re-indexes the relevant documents to keep its search indexes up to date.
  • A system generated Backgrounder task that periodically validates that all content is properly synchronised and re-indexes any discrepancies that are found.

Re-indexing

During restore, the restore process will initiate a full re-indexing of the content and external assets managed by Tableau Server. The re-indexing process consumes CPU resources which may be noticeable during backup and restore.

Thanks for your feedback!Your feedback has been successfully submitted. Thank you!