气流数据库查询

时间:2018-10-05 10:58:56

标签: flask sqlalchemy airflow

我有一个使用气流数据的Flask应用程序。我想从我的Flask应用程序访问气流数据库并查询数据。我能够运行原始SQL查询。但是我应该有一个如何使用SQL的解决方案炼金术查询技术。例如,如果我需要数据表数据。我应该可以运行Dag.query.all()来获取所有dag数据。

1 个答案:

答案 0 :(得分:0)

Airflow使用SQLAlchemy(当前1.1.x用于Airflow 1.10中继)来管理其模型,因此您可以使用本教程中记录的标准SQLAlchemy API进行交互并查询它们。

https://docs.sqlalchemy.org/en/rel_1_1/orm/tutorial.html

您也可以使用标准的数据库连接字符串从任何Python代码(例如Flask应用程序)访问数据库,如上述教程中所述。

这里有create_engine()支持的各种数据库连接URL格式的示例。

https://docs.sqlalchemy.org/en/rel_1_1/core/engines.html#database-urls

您可以在Airflow的models.py文件中找到更多信息,例如特定模型上的字段。

https://github.com/apache/incubator-airflow/blob/master/airflow/models.py

您可以在此处找到更多SQLAlchemy文档。

https://docs.sqlalchemy.org/en/rel_1_1/