Prepare the Tableau <source ID> configuration file

The lineage harvester uses the configuration file to connect to Tableau. You use the Tableau <source ID> configuration file to:

  • Define your Tableau operating model.
  • Provide additional information about databases and files in Tableau. For example, you can define the system name of databases in Tableau.
  • Map a Tableau technical database name to the real database name, to preserve stitching. See the databaseMapping property.
  • Define in which domains in Collibra you want to ingest assets from your Tableau sites and Tableau projects. See the filters property.

Tip "<source ID>" refers to the value of the Id property in the lineage harvester configuration file.

Steps

  1. Create a new JSON file in the lineage harvester config folder.
  2. Give the JSON file the same name as the value of the Id property in the lineage harvester configuration file.
    Example If the value of the Id property in the lineage harvester configuration file is tableau-source-1, then the name of your JSON file should be tableau-source-1.conf.
    Important Your JSON file must have the file extension .conf.
  3. For each database in Tableau, add the following content to the JSON file:
    Tip You can use wildcards to capture multiple string combinations for any of these properties.

    Property

    Description
    collibraSystemNames

    This section contains the system information for different Tableau data sources. Depending on the kind of data source or connection, you have to specify how to connect to this data source.

    Tip For more information, see the Tableau documentation. We also recommend to check the list of supported connectors in Tableau.

    databases

    This section contains connection information to one or more databases in Tableau.

    Tip 
    • If you do not have databases in Tableau, you can remove this section.
    • The values that you specify for this property are not case-sensitive.
    hostname
    The host name of the database.
    collibraSystemName

    The system name of the database.

    Warning The value of this property must exactly match the name of your System asset in Collibra.

    files

    This section contains connection information to one or more files in Tableau.

    Tip If you do not have files in Tableau, you can remove this section.

    filePath
    The full path to the file. For example, the path to a JSON file.
    collibraSystemName
    The system name of the file.
    connectors

    This section contains connection information to one or more connectors in Tableau.

    Tip 
    • If you do not have connectors in Tableau, you can remove this section.
    • The values that you specify for this property are not case-sensitive.
    connectorUrl
    The URL of the connector. For example, the URL to Google Analytics.
    collibraSystemName
    The system name of the connector.
    cloudFiles

    This section contains connection information to one or more cloud files in Tableau's input data.

    Tip If you do not have cloud files in Tableau, you can remove this section.

    name
    The name of the file. For example, the name of a Zendesk file.
    collibraSystemName
    The system name of the cloud file.

    databaseMapping

    The Tableau API returns a technical database name based on the hostname, instead of the actual database name, which breaks stitching. The values that you specify for this property are not case-sensitive.

    This property allows you to map a Tableau technical database name to the real database name, for example:

     
     "databaseMapping": {
    	"<hostname:port>":"<actual database name>" 
     }

    Including the port, as shown in the example, is optional.

    filters

    This section defines the following ingestion rules:

    • The Tableau projects and sub-projects from which you want to ingest metadata.
    • The domains in Collibra into which you want to ingest.

    Filtering is transitive, which means that all resources in a specified project, such as Tableau workbooks and all sub-projects, are ingested.

    Tableau assets that are not mapped to the specified domains, for example the Tableau Server assets and the parent projects (if you specify their sub-projects), are ingested in the default domain.

    Note  
    • If you want to ingest all assets in a Tableau site, use the domainMapping section.

    • The domainMapping and filters sections are mutually exclusive. Do not include both domainMapping and filters sections in your JSON file.
    sites

    The Tableau sites to be ingested and the domain in which you want to ingest metadata from the Tableau sites.

    Tip If you have only one Tableau site, do not include a sites section in your <source ID> file. Instead, use a projects section, to filter on Tableau projects. Include a sites section only if both of the following are true:

    • You have more than one Tableau site and you don't want to filter on Tableau projects.
    • You want to ingest a Tableau site into a domain other than the default domain.

    site_name: domain_id
    site_name
    The name of the site to be ingested. The site name is case-sensitive.
    domain_id
    The unique reference ID of the domain in Collibra in which you want to ingest metadata. The domain ID is case-sensitive.
    To ingest all metadata from a Tableau site in the specified domain, specify the site name and a separate domain ID for each site that you list on the siteIds property in the lineage harvester configuration file for Tableau. If the site_name or domain_id property is not specified for a site, the metadata from the site is ingested in the default domain.
    projects

    Specifies the Tableau projects to be ingested and the domain in which you want to ingest metadata from the Tableau projects or sub-projects.

    site_name > project_name : domain_id

    The site_name should be the Tableau site name. The project_name should be the Tableau project name.

    The domain_id should be the unique reference ID of the domain in Collibra in which you want to ingest metadata.

    When you specify the site and project names, the following rules apply:

    • Add spaces before and after >. The spaces are separators between the site and project.
    • Specify the full exact site and project names.
    • The values are case-sensitive.

    When you specify a Tableau project, all assets in the project are ingested in the specified domain. If you want to ingest assets from different Tableau projects in one domain, you can specify the same value for domain id for different projects.

    Example

    "Collibra_tab_partner_site > JB_Test_2812": "d224a1a5-43b4-43b2-8df0-ddf8f2726b82"

    site_name > project_name > sub-project_name : domain_id

    The site_name should be the Tableau site name. The project_name should be the Tableau project name. Optionally, use sub-project_name to specify the Tableau sub-project name.

    The domain_id property should be the unique reference ID of the domain in Collibra in which you want to ingest metadata.

    When you specify the site, project and sub-project names, the following rules apply:

    • Add spaces before and after >. The spaces are separators between the site and project.
    • Specify the full exact site and project names.
    • The values are case-sensitive.

    Example

    "Collibra_tab_partner_site > JB_Test_2812 > ProjectJJ2": "d224a1a5-43b4-43b2-8df0-ddf8f2726b82"

    domainMapping

    This section defines in which domains in Collibra you want to ingest assets from your Tableau sites and Tableau projects.

    Important 
    • Use this property only if you want to ingest Tableau assets into multiple domains in Collibra Data Intelligence Cloud. If you want to ingest into a single domain, use only the domainID property in the lineage harvester configuration file.
    • The domainID property in the lineage harvester configuration file represents the default domain. Tableau assets that are not mapped to specific domains via this domainMapping section, for example Tableau Server assets, are ingested in that default domain.

    Domain mapping is transitive, meaning that all resources, such as Tableau workbooks and data attributes in a parent Tableau site, project or sub-project, are ingested in the same domain as the parent.

    Note  
    • If you want to ingest all assets in a Tableau site, use the domainMapping section.

    • The domainMapping and filters sections are mutually exclusive. Do not include both domainMapping and filters sections in your JSON file.
    site name

    The Tableau site name, followed by the unique reference ID of the domain in Collibra in which you want to ingest resources from the Tableau site.

    Important In the configuration file, use the actual site name, along with the domain reference ID, for example: "Collibra_tab_partner_site": "afc8cfb0-91f1-4075-a3e5-7ce6d1f9bcc9"
    site name > project name

    The Tableau project name, preceded by the name of the Tableau site to which it belongs, and followed by the unique reference ID of the domain in Collibra in which you want to ingest resources from the Tableau project.

    Important In the configuration file, use the actual site and project names, along with the domain reference ID, for example: "Collibra_tab_partner_site > JB_Test_2812": "d224a1a5-43b4-43b2-8df0-ddf8f2726b82"
    site name > project name > sub-project name

    The Tableau sub-project name, preceded by the name of the Tableau site and project to which it belongs, and followed by the unique reference ID of the domain in Collibra in which you want to ingest resources from the Tableau sub-project.

    Important In the configuration file, use the actual site, project and sub-project names, along with the domain reference ID, for example: "Collibra_tab_partner_site > JB_Test_2812 > ProjectJJ2": "d224a1a5-43b4-43b2-8df0-ddf8f2726b82"
  4. Save the <source ID> configuration file.