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.8.tar.gz (14.7 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: dbt2looker_bigquery-0.12.8.tar.gz
  • Upload date:
  • Size: 14.7 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.8.tar.gz
Algorithm Hash digest
SHA256 5425002390066082fe87a30421760a9e7a9b3dd2982cb29930d2c8bcc010e738
MD5 d2b2e7f888a914d1f098b9e035e30553
BLAKE2b-256 a25e47d9a54dcbb9c570b32f148922b1d5fd6ff37025e967603c427d53d688f5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dbt2looker_bigquery-0.12.8-py3-none-any.whl
Algorithm Hash digest
SHA256 06070f14ebe607dc830f95b079fd5aea66ca009291abf1275e024e48b9e8c6d1
MD5 984ff6703e4a8a40ae853f1d6ddbf9a8
BLAKE2b-256 2bc64345f5f2f1483ddc2957fc7763f10cd31173ada6c3b59a81c4021965fddf

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