通过数据库触发器异步触发气流DAG

时间:2019-11-11 14:24:38

标签: postgresql events airflow-scheduler

我想合并几个历史增长的脚本(Python,Bash和Powershell),目的是在许多不同数据库后端(主要是postgres,还有oracle和sqlserver)之间以及不同站点上同步数据。并没有真正的主人,它更像是几个松散的合作伙伴公司,在相同的领域特定用例上工作,每个人都有自己的数据孤岛,而我的工作就是尽我所能。 >

目前,我提到的那些脚本是按cron计划的,并且需要在最初写入数据集的原始服务器上运行,以便在一夜之间将其同步到每个伙伴。

我还熟悉并在另一个项目中使用Apache Airflow。因此,我的想法是使用Airflow之类的工作流程管理工具来简化同步过程并使之更加集中。但是,对于Airflow,只有一个时间间隔调度程序可用于触发DAG。

由于大多数写入操作都是通过postgres数据库进行的,所以我想利用NOTIFY / LISTEN功能,并且已经有了一个python守护程序based on this来监听任何数据库更改(通过触发器)并调用事件处理程序。然后。

最后一个缺失的部分是如何最好地使用此处理程序触发气流DAG,以及如何使所有这些可靠地运行?

也许有更好的解决方案?

0 个答案:

没有答案