Skip to main content

The trino adapter plugin for dbt (data build tool)

Project description

dbt-trino

Starburst dbt         trino

Build Status db-presto-trino Slack

Introduction

dbt is a data transformation workflow tool that lets teams quickly and collaboratively deploy analytics code, following software engineering best practices like modularity, CI/CD, testing, and documentation. It enables anyone who knows SQL to build production-grade data pipelines.

One frequently asked question in the context of using dbt tool is:

Can I connect my dbt project to two databases?

(see the answered question on the dbt website).

TL;DR dbt stands for transformation as in T within ELT pipelines, it doesn't move data from source to a warehouse.

dbt-trino adapter uses Trino as a underlying query engine to perform query federation across disperse data sources. Trino connects to multiple and diverse data sources (available connectors) via one dbt connection and process SQL queries at scale. Transformations defined in dbt are passed to Trino which handles these SQL transformation queries and translates them to queries specific to the systems it connects to create tables or views and manipulate data.

This repository represents a fork of the dbt-presto with adaptations to make it work with Trino.

Compatibility

This dbt plugin has been tested against Trino version 414, Starburst Enterprise version 413-e and Starburst Galaxy.

Setup & Configuration

For information on installing and configuring your profile to authenticate to Trino or Starburst, please refer to Starburst and Trino Setup in the dbt docs.

Trino- and Starburst-specific configuration

For Trino- and Starburst-specific configuration, you can refer to Starburst (Trino) configurations on the dbt docs site.

Contributing

Release process

Before doing a release, it is required to bump the dbt-trino version by triggering release workflow version-bump.yml. The major and minor part of the dbt version are used to associate dbt-trino's version with the dbt version.

Next step is to merge the bump PR and making sure that test suite pass.

Finally, to release dbt-trino to PyPi and GitHub trigger release workflow release.yml.

Backport process

Sometimes it is necessary to backport some changes to some older versions. In that case, create branch from x.x.latest branch. There is a x.x.latest for each minor version, e.g. 1.3.latest. Make a fix and open PR back to x.x.latest. Create changelog by changie new as ususal, as separate changlog for each minor version is kept on every x.x.latest branch. After merging, to make a release of that version, just follow instructions from Release process section, but run every workflow on x.x.latest branch.

Code of Conduct

Everyone interacting in the dbt project's codebases, issue trackers, chat rooms, and mailing lists is expected to follow the PyPA Code of Conduct.

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

dbt-trino-1.5.0.tar.gz (27.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dbt_trino-1.5.0-py3-none-any.whl (32.9 kB view details)

Uploaded Python 3

File details

Details for the file dbt-trino-1.5.0.tar.gz.

File metadata

  • Download URL: dbt-trino-1.5.0.tar.gz
  • Upload date:
  • Size: 27.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for dbt-trino-1.5.0.tar.gz
Algorithm Hash digest
SHA256 db8a2b1f4b377a3b9f6a37399723681dd0c528fd4f4c3f8cdb56d50e6991cbda
MD5 f08ae262fd22fec8403c3e12d4f5e20f
BLAKE2b-256 dd51cca47c8760e6b97034ef2b9467a6897cbc218eb65b21b1ea4f7c206b8e10

See more details on using hashes here.

File details

Details for the file dbt_trino-1.5.0-py3-none-any.whl.

File metadata

  • Download URL: dbt_trino-1.5.0-py3-none-any.whl
  • Upload date:
  • Size: 32.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for dbt_trino-1.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cb1681f462719b8bad44da78d6b43c986f9a611b7d2788bfa2e2c9f49ac78d0b
MD5 288e174dec4bf241863ee52cf2f4c100
BLAKE2b-256 e2b49942524b85d9e617fd88b952f8bbf1f7200275bbf04c5ba5eabbe06add6f

See more details on using hashes here.

Supported by

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