airflow.providers.common.sql.sensors.sql

SqlSensor

重复运行 SQL 语句,直到满足某个条件。

模块内容

class airflow.providers.common.sql.sensors.sql.SqlSensor(*, conn_id, sql, parameters=None, success=None, failure=None, selector=itemgetter(0), fail_on_empty=False, hook_params=None, **kwargs)[source]

基类: airflow.sensors.base.BaseSensorOperator

重复运行 SQL 语句,直到满足某个条件。

这将反复尝试,直到满足成功或失败条件,或者直到第一个单元格不为 0'0'''None。可选的 success 和 failure 可调用对象会以返回的第一个单元格作为参数被调用。

如果定义了 success 可调用对象,传感器将持续重试直到满足条件。如果定义了 failure 可调用对象且条件满足,传感器将引发 AirflowException。失败条件在成功条件之前评估。还可以向传感器传递一个 fail_on_empty 布尔值,在这种情况下,如果没有返回任何行,传感器将失败。

参数:
  • conn_id (str) – 传感器将针对其运行的连接

  • sql (str) – 要运行的 SQL。要通过,它需要返回至少一个包含非零/非空字符串值的单元格。

  • parameters (collections.abc.Mapping[str, Any] | None) – 用于渲染 SQL 查询的参数(可选)。

  • success (Callable[[Any], bool] | None) – 传感器的成功条件是一个可调用对象,它接受 selector 的输出作为唯一参数,并返回一个布尔值(可选)。

  • failure (Callable[[Any], bool] | None) – 传感器的失败条件是一个可调用对象,它接受 selector 的输出作为唯一参数,并返回一个布尔值(可选)。

  • selector (Callable[[tuple[Any]], Any]) – 在将结果行传递给 success 或 failure 之前对其进行转换的函数(可选)。默认为获取第一个单元格。

  • fail_on_empty (bool) – 在未返回行时显式失败。

  • hook_params (collections.abc.Mapping[str, Any] | None) – 要传递给底层 Hook 的额外配置参数。应与所需的 Hook 构造函数参数匹配。

template_fields: collections.abc.Sequence[str] = ('sql', 'hook_params', 'parameters')[source]
template_ext: collections.abc.Sequence[str] = ('.hql', '.sql')[source]
ui_color = '#7c7287'[source]
conn_id[source]
sql[source]
parameters = None[source]
success = None[source]
failure = None[source]
selector[source]
fail_on_empty = False[source]
hook_params = None[source]
poke(context)[source]

派生此类时重写此方法。

此条目有帮助吗?