:py:mod:`airflow.providers.google.cloud.example_dags.example_trino_to_gcs`
==========================================================================

.. py:module:: airflow.providers.google.cloud.example_dags.example_trino_to_gcs

.. autoapi-nested-parse::

   Example DAG using TrinoToGCSOperator.



Module Contents
---------------


Functions
~~~~~~~~~

.. autoapisummary::

   airflow.providers.google.cloud.example_dags.example_trino_to_gcs.safe_name



Attributes
~~~~~~~~~~

.. autoapisummary::

   airflow.providers.google.cloud.example_dags.example_trino_to_gcs.GCP_PROJECT_ID
   airflow.providers.google.cloud.example_dags.example_trino_to_gcs.GCS_BUCKET
   airflow.providers.google.cloud.example_dags.example_trino_to_gcs.DATASET_NAME
   airflow.providers.google.cloud.example_dags.example_trino_to_gcs.SOURCE_MULTIPLE_TYPES
   airflow.providers.google.cloud.example_dags.example_trino_to_gcs.SOURCE_CUSTOMER_TABLE
   airflow.providers.google.cloud.example_dags.example_trino_to_gcs.create_dataset


.. py:data:: GCP_PROJECT_ID
   

   

.. py:data:: GCS_BUCKET
   

   

.. py:data:: DATASET_NAME
   

   

.. py:data:: SOURCE_MULTIPLE_TYPES
   :annotation: = memory.default.test_multiple_types

   

.. py:data:: SOURCE_CUSTOMER_TABLE
   :annotation: = tpch.sf1.customer

   

.. py:function:: safe_name(s)

   Remove invalid characters for filename


.. py:data:: create_dataset
   

   

