Skip to main content

Generate lookml view files from dbt models for Bigquery

Project description

dbt2looker

Use dbt2looker-bigquery to generate Looker view files automatically from dbt models in Bigquery.

This is a fork of dbt2looker that is specific to bigquery. The intention is to allow one to define most of the simple and tedious lookml settings in dbt. That way the lookml code gets less bloated, and can be more focused on advanced metrics and explores.

Want a deeper integration between dbt and your BI tool? You should also checkout Lightdash - the open source alternative to Looker

Features

  • Column descriptions synced to looker
  • Dimension for each column in dbt model
  • Define Dimensions define common lookml settings in dbt like label, group label, hidden
  • Opinionated Primary key automatically set the first column to be the primary key, and hide it.
  • Dimension groups for datetime/timestamp/date columns
  • Measures defined through dbt column metadata see below
  • Looker types
  • Warehouses: BigQuery

Quickstart

Run dbt2looker in the root of your dbt project after compiling looker docs.

Generate Looker view files for all models:

dbt docs generate
dbt2looker

Generate Looker view files for all models tagged prod

dbt2looker --tag prod

**Generate Looker view files for all exposed models **

dbt2looker --exposed_only

Install

Install from PyPi repository

Install from pypi into a fresh virtual environment.

# Create virtual env
python3.7 -m venv dbt2looker-venv
source dbt2looker-venv/bin/activate

# Install
pip install dbt2looker-bigquery

# Run
dbt2looker

Build from source

Requires poetry and python >=3.7

For development, it is recommended to use python 3.7:

# Ensure you're using 3.7
poetry env use 3.7  
# alternative: poetry env use /usr/local/opt/python@3.7/bin/python3

# Install dependencies and main package
poetry install

# Run dbtlooker in poetry environment
poetry run dbt2looker

Defining measures

You can define looker measures in your dbt schema.yml files. For example:

models:
  - name: pages
    columns:
      - name: url
        description: "Page url"
      - name: event_id
        description: unique event id for page view
        meta:
            looker:
              hidden: True
              label: event
              group_label: identifiers
              value_format_name: id
              
            looker_measures:
              - type: count_distinct
                sql_distinct_key: ${url}
              - type: count
                value_format_name: decimal_1

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dbt2looker_bigquery-0.12.10.tar.gz (14.6 kB view details)

Uploaded Source

Built Distribution

dbt2looker_bigquery-0.12.10-py3-none-any.whl (15.6 kB view details)

Uploaded Python 3

File details

Details for the file dbt2looker_bigquery-0.12.10.tar.gz.

File metadata

  • Download URL: dbt2looker_bigquery-0.12.10.tar.gz
  • Upload date:
  • Size: 14.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.11

File hashes

Hashes for dbt2looker_bigquery-0.12.10.tar.gz
Algorithm Hash digest
SHA256 bdd6974be58f4f91d692ccf0b62bbe5f3f9b24ee7b9c78e1d3b55aee1bba9419
MD5 8689b499ded7abb696c28287ec37dcb1
BLAKE2b-256 1a199c27a61247ec4778dbc724b5f4e9157510d7512a2df5a8cfe30ad576f206

See more details on using hashes here.

File details

Details for the file dbt2looker_bigquery-0.12.10-py3-none-any.whl.

File metadata

File hashes

Hashes for dbt2looker_bigquery-0.12.10-py3-none-any.whl
Algorithm Hash digest
SHA256 5682c752489e342717e7a95a73e66181a71944e31f6df05f625b75e2f9d27c96
MD5 0bd7ec592ceb581c7201f74720f3211b
BLAKE2b-256 84b5e0c17c5a182e03318b1ea50372467ac8197616114cd3b7024f82ec995251

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page