Looker
Create a code repositories integration
Create a code repositories integration that connects Datafold to your Looker repository.
Create a Looker integration
Navigate to Settings > Integrations > Data Apps and add a Looker integration.
Complete the configuration by specifying the following fields:
Field Name | Description |
---|---|
Integration name | An identifier used in Datafold to identify this Data App configuration. |
Project Repository | Select the same repository as used in your Looker project. |
API Host URL | The Looker API Host URL. It has the following format: https://<instance_name>.cloud.looker.com:<port>. The port defaults are 19999 (legacy) and 443 (new), see the Looker Docs for hints. Examples: Legacy (https://datafold.cloud.looker.com:19999), New (https://datafold.cloud.looker.com:443) |
Client ID | Follow these steps to generate Client ID and Client Secret. These are always user specific. We recommend using a group email for continuity. See Looker User Minimum Access Policy for the required permissions. |
Client Secret | See Client ID. |
Data connection mapping | When the correct credentials are entered we will begin to populate data connections in Looker (on the left side) that will need to be mapped to data connections configured in Datafold (on the right side). See image below. |
When completed, click Submit.
It may take some time to sync all the Looker entities to Datafold and for Data Explorer to populate. When completed, your Looker assets will appear in Data Explorer as search results.
TIP
Tracking Jobs explains how to find out when your data app integration is ready.
Looker user: minimum access policy
The user linked to the API credentials needs the predefined Developer role, or you can create a custom role with these permissions:
access_data
download_without_limit
explore
login_special_email
manage_spaces
see_drill_overlay
see_lookml
see_lookml_dashboards
see_looks
see_pdts
see_sql
see_user_dashboards
send_to_integration
Database/schema connection context
Database specification
Using the Fully Qualified Names in your Looker view files is not always possible. If a view references a table asmy_schema.my_table
, Datafold might have difficulty finding which database this table actually is in. There are multiple ways to guide Datafold to make a correct choice, as summarized in the table below.
INFO
Priority #1 takes precedence over #2, and so forth.
# | Source, if defined | Example |
---|---|---|
1 | datafold_force_database User Attribute in Looker | looker_db |
2 | Fully Qualified Names in your Looker view files | my_db.my_schema.my_table |
3 | datafold_default_database User Attribute in Looker | another_looker_db |
4 | Database specified in Looker, at Database connection settings_(We can only read these if Datafold connects to Looker via an admin user, which is probably suboptimal.)_ | my_db |
5 | Database specified in Datafold, at Database Connection settings | my_db |
Supported custom Looker user attributes
User Attribute | Impact |
---|---|
datafold_force_database | Database to use in all cases, even if a fully qualified path in LookML refers to another database. |
datafold_default_database | Database to use if Looker View does not explictly specify a database. |
datafold_default_schema | Schema to use if Looker view does not explicitly specify a schema (which equals a dataset for BigQuery). |
datafold_default_host | (BigQuery only) Default project name. |
INFO
Make sure attributes are:
- Explicitly defined for the user in question (not just falling back to a default);
- Not marked as hidden.
Integration limitations
Datafold lets you connect to Looker and extend our capabilities to your Looker Views, Explores, Looks, and Dashboards. But this is a new feature, so there are some things we don’t support yet:
- PDT/Derived Tables:Datafold only works with the tables that come from your data connections, but not with the tables that Looker makes from your SQL queries.
- Merge Queries: Datafold supports the Queries and Looks that make up your Dashboards, but Merge Queries are not one of them. For some use cases you could achieve the same by joining the underlying views with an explore.
- Usage metrics and popularity: Datafold shows you your Looker objects - such as dashboards, looks, and fields - but not how much you use or like them.
We are improving our Looker integration and adding more features soon. We welcome your feedback and suggestions.