【发布时间】:2021-06-11 14:55:47
【问题描述】:
我有一个 Apache Airflow DAG,它获取股票代码的数据并将其加载到数据湖中。有数以千计的股票代码。
现在我正在使用模板为每个股票代码创建一个 DAG。我想知道创建单个 DAG 并拥有数千个任务是否会更高效。
我尝试使用只有 500 个股票代码的单个 DAG 和多个任务,但 Airflow UI 开始变得无法响应加载图表视图(仅供参考,我的工作机器有 64GB 内存)。
如果一个包含数千个符号的工作流创建 1000 多个 DAGS 或任务,我真的需要遵循最具可扩展性的做法,因为将来会添加更多工作流。
感谢您的帮助!
【问题讨论】:
-
我会选择一个包含所有任务的 DAG。为了改善 UI 体验,您可以按 10/20 或似乎可行的方式将它们分组到任务组(在 Airflow 2.0 中)。每个符号有一个 dag 听起来不可维护,但从 2.0 的性能角度来看,这应该不会对调度产生太大影响。
-
任务组是要走的路。谢谢你。如果您将您的评论提升为我会批准的答案。
标签: airflow