Skip to main content

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

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())

Ingestion

This plugin allows users to ingest data to a Trino database, which can be preferable to inserting data manually as it automatically handles serializing, packaging and sending of the data asynchronously with configurable batching and throughput. To do so, you must set the expected variables to connect to Trino, plus the following environment variable:

export VDK_INGEST_METHOD_DEFAULT=TRINO

Then, from inside the run function in a Python step, you can use the send_object_for_ingestion or send_tabular_data_for_ingestion methods to ingest your data.

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 vdk-plugins/vdk-trino/requirements.txt

Run

pip install -r requirements.txt

Metadata

Release files for vdk-trino 0.1.460149153

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for vdk-trino 0.1.460149153
File Size Uploaded
vdk-trino-0.1.460149153.tar.gz 17.7 kB Details

Release files / vdk-trino-0.1.460149153.tar.gz

Download URL vdk-trino-0.1.460149153.tar.gz
Size 17.7 kB
Tags Source
SHA-256 checksum
How to use checksums
7fb0e4f606d01368c7308843e4404c29b3a8caa4932e51633d1fdbb3feb8eeda
BLAKE2b-256 checksum
How to use checksums
ec78f0643d230f31b90bcdcc659ea574a7afa929db4c92522c604621901757a0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.12

Release history Release notifications | RSS feed

This release

0.1.460149153 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page