airflow.providers.presto.hooks.presto

Module Contents

Classes

PrestoHook

Interact with Presto through prestodb.

Functions

generate_presto_client_info()

Return json string with dag_id, task_id, execution_date and try_number.

Attributes

T

airflow.providers.presto.hooks.presto.T[source]
airflow.providers.presto.hooks.presto.generate_presto_client_info()[source]

Return json string with dag_id, task_id, execution_date and try_number.

exception airflow.providers.presto.hooks.presto.PrestoException[source]

Bases: Exception

Presto exception.

class airflow.providers.presto.hooks.presto.PrestoHook(*args, **kwargs)[source]

Bases: airflow.providers.common.sql.hooks.sql.DbApiHook

Interact with Presto through prestodb.

>>> ph = PrestoHook()
>>> sql = "SELECT count(1) AS num FROM airflow.static_babynames"
>>> ph.get_records(sql)
[[340698]]
conn_name_attr = 'presto_conn_id'[source]
default_conn_name = 'presto_default'[source]
conn_type = 'presto'[source]
hook_name = 'Presto'[source]
get_conn()[source]

Return a connection object.

get_isolation_level()[source]

Return an isolation level.

get_records(sql='', parameters=None)[source]

Execute the sql and return a set of records.

Parameters
  • sql (str | list[str]) – the sql statement to be executed (str) or a list of sql statements to execute

  • parameters (Iterable | Mapping[str, Any] | None) – The parameters to render the SQL query with.

get_first(sql='', parameters=None)[source]

Execute the sql and return the first resulting row.

Parameters
  • sql (str | list[str]) – the sql statement to be executed (str) or a list of sql statements to execute

  • parameters (Iterable | Mapping[str, Any] | None) – The parameters to render the SQL query with.

get_pandas_df(sql='', parameters=None, **kwargs)[source]

Execute the sql and returns a pandas dataframe.

Parameters
  • sql (str) – the sql statement to be executed (str) or a list of sql statements to execute

  • parameters – The parameters to render the SQL query with.

  • kwargs – (optional) passed into pandas.io.sql.read_sql method

insert_rows(table, rows, target_fields=None, commit_every=0, replace=False, **kwargs)[source]

Insert a set of tuples into a table.

Parameters
  • table (str) – Name of the target table

  • rows (Iterable[tuple]) – The rows to insert into the table

  • target_fields (Iterable[str] | None) – The names of the columns to fill in the table

  • commit_every (int) – The maximum number of rows to insert in one transaction. Set to 0 to insert all rows in one transaction.

  • replace (bool) – Whether to replace instead of insert

Was this entry helpful?