Host / Database Mapping
In the setup of some Tools (Tableau, Power BI, dbt etc) you will need to map sources used by these tools to sources that are onboarded in K. Mapping allows K to resolve sources that might be named differently across different tools.
There are 2 methods for mapping
Mapping via Guided workflow: Recommended
Mapping via Configuration: Required for dbt
1. Mapping via the guided workflow
This step is performed after the initial load. After the initial load, K will identify all the sources for you to map.
Go to Platform Settings. Select Sources
On the tool, select the Map sources option
Select a source identified in the tool
Complete the workflow by selecting the matching database that is loaded into K
You may not be able to map all sources if they have not been loaded to K. Sources that are not loaded will be added as Understanding Reference Objects
2. Mapping via Configuration
This step is required for dbt. We recommend option 1 for all other Tools
During the onboarding process, you will see the option to add mappings via a configuration
Find the mapping details
To find the appropriate mapping, click on Platform Settings and select Sources.
Locate the source you need to map. Sources are listed in alphabetical order.
Click on the copy icon next to the host name (under the host column) of the source you are onboarding
Adding the mapping
The mapping is added using properly formatted JSON.
The general format of the mapping depends on whether the tool references a host or a host + database
For the following examples, a Snowflake database will have a hostname like ab12345.australia-east.azure
For sources that use just a host (e.g. dbt)
Enter the following mapping template
{
"tool-hostname": "k-source-hostname",
}
Where tool-hostname is the Tool reference (like a Project ID or Data Source name) as it appears in the source, host are those that are onboarded into K already or that you intend to onboard into K. See example below for DBT which matches Project to Snowflake.
Example: dbt
Add an entry for each project you have in dbt cloud. The tool-hostname to use is the Project ID.
You can find the Project ID in the URL by browsing to a project asset and finding the ID after /project/
{
"38566":"ab#####.australia-east.azure",
"40840":"ab#####.australia-east.azure",
"61207":"ab#####.australia-east.azure"
}
For sources that use host + database (e.g. Power BI)
Enter the following mapping template
{
"myDSN":
{
"host": "myhost",
"database": "mydatabase"
}
}
Where myDSN is the Data Source Name as it appears in the data source, host and database are those that are onboarded into K already or that you intend to onboard into K. See example below for Power BI. Make sure the host and database values match onboarded or intended onboarding values.
Power BI example
{
"oracle...":
{
"host": "myhost",
"database": "mydatabase"
}
}
If you don’t know any in advance, you will be able to request a log extract from KADA to tell you what DSNs were encountered by the extractor that it couldn’t map to populate it for the next run.
DaxParser.parse_oracle: Encountered an unknown DSN myDSN that was not in the mapping.json