blob: a709d224476978641771f9cd7921e888a74e5746 [file] [log] [blame]
:py:mod:`airflow.providers.amazon.aws.hooks.redshift_sql`
=========================================================
.. py:module:: airflow.providers.amazon.aws.hooks.redshift_sql
Module Contents
---------------
Classes
~~~~~~~
.. autoapisummary::
airflow.providers.amazon.aws.hooks.redshift_sql.RedshiftSQLHook
.. py:class:: RedshiftSQLHook(*args, schema = None, **kwargs)
Bases: :py:obj:`airflow.hooks.dbapi.DbApiHook`
Execute statements against Amazon Redshift, using redshift_connector
This hook requires the redshift_conn_id connection.
:param redshift_conn_id: reference to
:ref:`Amazon Redshift connection id<howto/connection:redshift>`
.. note::
get_sqlalchemy_engine() and get_uri() depend on sqlalchemy-amazon-redshift
.. py:attribute:: conn_name_attr
:annotation: = redshift_conn_id
.. py:attribute:: default_conn_name
:annotation: = redshift_default
.. py:attribute:: conn_type
:annotation: = redshift
.. py:attribute:: hook_name
:annotation: = Amazon Redshift
.. py:attribute:: supports_autocommit
:annotation: = True
.. py:method:: get_ui_field_behavior()
:staticmethod:
Returns custom field behavior
.. py:method:: conn(self)
.. py:method:: get_uri(self)
Overrides DbApiHook get_uri to use redshift_connector sqlalchemy dialect as driver name
.. py:method:: get_sqlalchemy_engine(self, engine_kwargs=None)
Overrides DbApiHook get_sqlalchemy_engine to pass redshift_connector specific kwargs
.. py:method:: get_table_primary_key(self, table, schema = 'public')
Helper method that returns the table primary key
:param table: Name of the target table
:param table: Name of the target schema, public by default
:return: Primary key columns list
:rtype: List[str]
.. py:method:: get_conn(self)
Returns a redshift_connector.Connection object