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:
TL;DRdbt 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 455, Starburst Enterprise version 443-e.10 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.
First 5 steps are ONLY relevant for bumping minor version:
Create 1.x.latest branch from the latest tag corresponding to current minor version, e.g. git checkout -b 1.6.latest v1.6.2 (when bumping to 1.7). Push branch to remote. This branch will be used for potential backports.
Create new branch (Do not push below commits to 1.x.latest). Add a new entry in .changes/0.0.0.md that points to the newly created latest branch.
Run changie merge to update README.md. After that, remove changie files and folders related to current minor version. Commit.
Bump version of dbt-tests-adapter. Commit.
Merge these 2 commits into the master branch. Add a Skip Changlelog label to the PR.
Continue with the next steps for a minor version bump. Start from this point for a patch version bump:
Run Version Bump workflow. The major and minor part of the dbt version are used to associate dbt-trino's version with the dbt version.
Merge the bump PR. Make sure that test suite pass.
Run dbt-trino release workflow to release dbt-trino to PyPi and GitHub.
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.
FAQs
The trino adapter plugin for dbt (data build tool)
We found that dbt-trino demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago.It has 4 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
An advanced npm supply chain attack is leveraging Ethereum smart contracts for decentralized, persistent malware control, evading traditional defenses.
By Kush Pandya, Philipp Burckhardt, Kirill Boychenko, Orlando Barrera - Oct 31, 2024
The npm package for the LottieFiles Player web component was hit with a supply chain attack after a software engineer's npmjs credentials were compromised.