Versatile Data Kit SDK plugin provides support for trino database and trino transformation templates.
Project description
This plugin allows vdk-core to interface with and execute queries against a Trino database. Additionally, it can collect lineage data, assuming a lineage logger has been provided through the vdk-core configuration.
Usage
Run
pip install vdk-tino
After this data jobs will have access to Trino database connection managed by Versatile Data Kit SDK.
If it is the only database plugin installed , vdk would automatically use it. Otherwise, users need to set VDK_DB_DEFAULT_TYPE=TRINO as an environment variable or set 'db_default_type' option in the data job config file (config.ini).
For example
def run(job_input: IJobInput):
job_input.execute_query("select 'Hi Trino!'")
Templates
vdk-trino comes with pre-defined templates for SQL transformations
- SCD1 - Slowly Changing Dimension type 1:
- SCD2 - Slowly Changing Dimension Type 2:
Lineage
The package gathers lineage data for all Trino SQL queries executed in a data job
Other plugins can read that lineage data log it. They need to provide LineageLogger implementation and hook this way:
@hookimpl
def vdk_initialize(context: CoreContext) -> None:
context.state.set(StoreKey[LineageLogger]("trino-lineage-logger"), MyLogger())
Configuration
Run vdk config-help - search for those prefixed with "TRINO_" to see what configuration options are available.
Testing
Testing this plugin locally requires installing the dependencies listed in plugins/vdk-trino/requirements.txt
Run
pip install -r requirements.txt
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file vdk-trino-0.1.358698086.tar.gz
.
File metadata
- Download URL: vdk-trino-0.1.358698086.tar.gz
- Upload date:
- Size: 13.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.7.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 964dde8c718c5e63341dd593ef754ab5bbff8c032feb0bc4e87f13de45e8623b |
|
MD5 | 34661950527a91b13eb3386eafe9c6c4 |
|
BLAKE2b-256 | 461552a891e5974eefd9683f3cf6b3aee0bd6c2ded87379e5f8d56097107a091 |