Tableau (dagster-tableau)
Dagster allows you to represent your Tableau workspace as assets, alongside other your other technologies like dbt and Sling. This allows you to see how your Tableau assets are connected to your other data assets, and how changes to other data assets might impact your Tableau workspace.
Tableau API
Here, we provide interfaces to manage Tableau projects using the Tableau API.
Assets (Tableau API)
class
dagster_tableau.TableauCloudWorkspace- beta
This API is currently in beta, and may have breaking changes in minor version releases, with behavior changes in patch releases.
Represents a workspace in Tableau Cloud and provides utilities to interact with Tableau APIs.
class
dagster_tableau.TableauServerWorkspace- beta
This API is currently in beta, and may have breaking changes in minor version releases, with behavior changes in patch releases.
Represents a workspace in Tableau Server and provides utilities to interact with Tableau APIs.
class
dagster_tableau.DagsterTableauTranslatorTranslator class which converts raw response data from the Tableau API into AssetSpecs. Subclass this class to implement custom logic for each type of Tableau content.
- dagster_tableau.load_tableau_asset_specs
- beta
This API is currently in beta, and may have breaking changes in minor version releases, with behavior changes in patch releases.
Returns a list of AssetSpecs representing the Tableau content in the workspace.
Parameters:
- workspace (Union[TableauCloudWorkspace, TableauServerWorkspace]) – The Tableau workspace to fetch assets from.
- dagster_tableau_translator (Optional[Union[DagsterTableauTranslator, Type[DagsterTableauTranslator]]]) – The translator to use to convert Tableau content into
dagster.AssetSpec
. Defaults toDagsterTableauTranslator
.
Returns: The set of assets representing the Tableau content in the workspace.Return type: List[AssetSpec]
- dagster_tableau.build_tableau_materializable_assets_definition
- beta
This API is currently in beta, and may have breaking changes in minor version releases, with behavior changes in patch releases.
Returns the AssetsDefinition of the materializable assets in the Tableau workspace.
Parameters:
-
resource_key (str) – The resource key to use for the Tableau resource.
-
specs (Sequence[AssetSpec]) – The asset specs of the executable assets in the Tableau workspace.
-
refreshable_workbook_ids (Optional[Sequence[str]]) –
A list of workbook IDs. The workbooks provided must have extracts as data sources and be refreshable in Tableau.
When materializing your Tableau assets, the workbooks provided are refreshed, refreshing their sheets and dashboards before pulling their data in Dagster.
Returns: The AssetsDefinition of the executable assets in the Tableau workspace.Return type: AssetsDefinition
-
- dagster_tableau.parse_tableau_external_and_materializable_asset_specs
Parses a list of Tableau AssetSpecs provided as input and return two lists of AssetSpecs, one for the Tableau external assets and another one for the Tableau materializable assets.
In Tableau, data sources are considered external assets, while sheets and dashboards are considered materializable assets.