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
Metadata
Release files for vdk-trino 0.1.363986988
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| vdk-trino-0.1.363986988.tar.gz | 13.6 kB | Details |
Release files / vdk-trino-0.1.363986988.tar.gz
| Download URL | vdk-trino-0.1.363986988.tar.gz |
|---|---|
| Size | 13.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ce5c3a22a0a99901063941ae2c6607beca36abb605a52251b80ebbbc394b411a
|
|
BLAKE2b-256 checksum How to use checksums |
0e09121714c9c802975c0369a62583751c28780c8c8821c53e9837b2a66bc1a4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.7.11
|