Airflow 如何组合气流操作器?

Airflow 如何组合气流操作器?,airflow,airflow-operator,Airflow,Airflow Operator,几乎我所有的DAG都有重复运算符的子集。由于我的用例,创建新的包装器操作符非常有效,它结合了多个操作符以减少样板文件 我的问题是如何将它们结合起来 例如,查询数据库,然后发送Slack消息 postgres\u operator\u task>>slack\u operator\u task->查询\u然后\u slack\u operator\u task检查子DAG的想法。 资源: 检查subdag的概念。 资源: 实现这一点的方法可能有很多种。您可以定义一个自定义运算符,该

几乎我所有的DAG都有重复运算符的子集。由于我的用例,创建新的包装器操作符非常有效,它结合了多个操作符以减少样板文件

我的问题是如何将它们结合起来

例如,查询数据库,然后发送Slack消息


postgres\u operator\u task>>slack\u operator\u task
->
查询\u然后\u slack\u operator\u task
检查子DAG的想法。
资源:


检查subdag的概念。
资源:


实现这一点的方法可能有很多种。您可以定义一个自定义运算符,该运算符通过执行右图中的指令来组合不同的运算符,或者定义一个子运算符(如果您关心错误恢复,这可能会更好)。请参阅,可能有许多不同的方法来实现这一点。您可以定义一个自定义运算符,通过执行右图中的指令来组合不同的运算符,或者定义一个子运算符(如果您关心错误恢复,这可能会更好)。请参阅。如果我想删除尽可能多的样板文件,我想将
SubDagOperator
+参数包装到一个自定义操作符中。这是一个好的练习吗?听起来对我很好,但是我听说“SubDagOperator”会引起一些麻烦(在v2中会得到改进)。朋友给了我一个想法,你可以写另一个“操作符”,它结合了其他操作符(所以它几乎就是你写的:),这很好。如果我想删除尽可能多的样板文件,我想将
SubDagOperator
+参数包装到一个自定义操作符中。这是一个好的练习吗?听起来对我很好,但是我听说“SubDagOperator”会引起一些麻烦(在v2中会得到改进)。朋友给了我一个想法,你可以写另一个“操作符”,它结合了其他操作符(所以它几乎就是你写的:))