| :py:mod:`airflow.providers.trino.transfers.gcs_to_trino` |
| ======================================================== |
| |
| .. py:module:: airflow.providers.trino.transfers.gcs_to_trino |
| |
| .. autoapi-nested-parse:: |
| |
| This module contains Google Cloud Storage to Trino operator. |
| |
| |
| |
| Module Contents |
| --------------- |
| |
| Classes |
| ~~~~~~~ |
| |
| .. autoapisummary:: |
| |
| airflow.providers.trino.transfers.gcs_to_trino.GCSToTrinoOperator |
| |
| |
| |
| |
| .. py:class:: GCSToTrinoOperator(*, source_bucket, source_object, trino_table, trino_conn_id = 'trino_default', gcp_conn_id = 'google_cloud_default', schema_fields = None, schema_object = None, delegate_to = None, impersonation_chain = None, **kwargs) |
| |
| Bases: :py:obj:`airflow.models.BaseOperator` |
| |
| Loads a csv file from Google Cloud Storage into a Trino table. |
| Assumptions: |
| 1. CSV file should not have headers |
| 2. Trino table with requisite columns is already created |
| 3. Optionally, a separate JSON file with headers can be provided |
| |
| :param source_bucket: Source GCS bucket that contains the csv |
| :param source_object: csv file including the path |
| :param trino_table: trino table to upload the data |
| :param trino_conn_id: destination trino connection |
| :param gcp_conn_id: (Optional) The connection ID used to connect to Google Cloud and |
| interact with the Google Cloud Storage service. |
| :param schema_fields: The names of the columns to fill in the table. If schema_fields is |
| provided, any path provided in the schema object will be |
| :param schema_object: JSON file with schema fields |
| :param delegate_to: The account to impersonate using domain-wide delegation of authority, |
| if any. For this to work, the service account making the request must have |
| domain-wide delegation enabled. |
| :param impersonation_chain: Optional service account to impersonate using short-term |
| credentials, or chained list of accounts required to get the access_token |
| of the last account in the list, which will be impersonated in the request. |
| If set as a string, the account must grant the originating account |
| the Service Account Token Creator IAM role. |
| If set as a sequence, the identities from the list must grant |
| Service Account Token Creator IAM role to the directly preceding identity, with first |
| account from the list granting this role to the originating account. |
| |
| .. py:attribute:: template_fields |
| :annotation: :Sequence[str] = ['source_bucket', 'source_object', 'trino_table'] |
| |
| |
| |
| .. py:method:: execute(self, context) |
| |
| This is the main method to derive when creating an operator. |
| Context is the same dictionary used as when rendering jinja templates. |
| |
| Refer to get_template_context for more context. |
| |
| |
| |