astro.sql.operators.append

Module Contents

Classes

AppendOperator

Append the source table rows into a destination table.

Functions

append(*, source_table, target_table[, columns])

Append the source table rows into a destination table.

class astro.sql.operators.append.AppendOperator(source_table, target_table, columns=None, task_id='', **kwargs)

Bases: astro.sql.operators.base_operator.AstroSQLBaseOperator

Append the source table rows into a destination table.

Parameters:
  • source_table (astro.table.BaseTable) – Contains the rows to be appended to the target_table (templated)

  • target_table (astro.table.BaseTable) – Contains the destination table in which the rows will be appended (templated)

  • columns (list[str] | tuple[str] | dict[str, str] | None) – List/Tuple of columns if name of source and target tables are same. If the column names in source and target tables are different pass a dictionary of source_table columns names to target_table columns names. Examples: ["sell", "list"] or {"s_sell": "t_sell", "s_list": "t_list"}

  • task_id (str) –

  • kwargs (Any) –

template_fields = ('source_table', 'target_table')
execute(context)

Derive when creating an operator.

Context is the same dictionary used as when rendering jinja templates.

Refer to get_template_context for more context.

Parameters:

context (astro.utils.compat.typing.Context) –

Return type:

astro.table.BaseTable

get_openlineage_facets_on_complete(task_instance)

Collect the input, output, job and run facets for append operator

astro.sql.operators.append.append(*, source_table, target_table, columns=None, **kwargs)

Append the source table rows into a destination table.

Parameters:
  • source_table (astro.table.BaseTable) – Contains the rows to be appended to the target_table (templated)

  • target_table (astro.table.BaseTable) – Contains the destination table in which the rows will be appended (templated)

  • columns (list[str] | tuple[str] | dict[str, str] | None) – List/Tuple of columns if name of source and target tables are same. If the column names in source and target tables are different pass a dictionary of source_table columns names to target_table columns names. Examples: ["sell", "list"] or {"s_sell": "t_sell", "s_list": "t_list"}

  • kwargs (Any) – Any keyword arguments supported by the BaseOperator is supported (e.g queue, owner)

Return type:

airflow.models.xcom_arg.XComArg