Airflow:如何 运行 在多个数据库上进行相同的查询

Airflow: How to run same query on multiple databases

我需要在具有相同架构的多个数据库 (10K) 上执行 SQL 查询,并使用气流将结果插入到单独的主机中。

你知道我应该如何以最有效的方式为这种项目设计我的 DAG 吗?

如有任何帮助,我们将不胜感激!

Airflow 中每个数据库一个连接。
然后定义这些连接 ID 字符串的列表。
然后在每个连接字符串上重复相同任务的任务定义。

使用 MysqlOperator(另请参阅 MssqlOperator 或 PostgresOperator)

conns = ('db1','db2','db3')
tasks = [MysqlOperator("""
show tables;
""",
                       task_id="update_" + conn,
                       mysql_conn_id=conn,
          ) for conn in conns]