关于构建基于 hadoop 的数据管道的调度工具的建议
Suggestion for scheduling tool(s) for building hadoop based data pipelines
在 Apache Oozie 之间,Spotify/Luigi and airbnb/airflow,它们各自的优缺点是什么?
我过去曾使用 oozie 和 airflow 使用 PIG 和 Hive 构建数据摄取管道。目前,我正在构建一个管道,该管道查看日志并提取有用的事件并将它们放在红移上。
我发现气流更容易 use/test/setup。它有一个更酷的 UI 并允许用户从 UI 本身执行操作,而 Oozie 则不是这样。欢迎提供有关 Luigi 的任何信息或有关稳定性和问题的其他见解。
- Azkaban:不错UI,相对简单,非程序员也能上手。在 LinkedIn 拥有悠久的历史。
- 查看 GitHub 上的 Azkaban CLI project for programmatic job creation. I have an Azkaban example workflows 项目。
- Airflow:体面的 UI,Python-ish 作业定义,非程序员半可访问,依赖声明语法很奇怪。
- Luigi:好的UI,工作流程是纯粹的Python,需要扎实掌握Python编码和面向对象的概念,因此不适合非程序员。
- Oozie:疯狂的 XML 基于工作定义。这里是龙。 ;-)
恕我直言,Azkaban 强调简单性(不能使用不存在的功能),而其他人巧妙地鼓励复杂性。
更简单的管道优于复杂的管道:更容易创建、更容易理解(尤其是当您没有创建时)并且更容易 debug/fix。
当需要复杂的操作时,您希望以完全成功或完全失败的方式封装它们。
如果你能使它幂等(运行它再次产生相同的结果)那就更好了。
此 post 将让您初步了解不同的可能工作流程
在 Apache Oozie 之间,Spotify/Luigi and airbnb/airflow,它们各自的优缺点是什么?
我过去曾使用 oozie 和 airflow 使用 PIG 和 Hive 构建数据摄取管道。目前,我正在构建一个管道,该管道查看日志并提取有用的事件并将它们放在红移上。
我发现气流更容易 use/test/setup。它有一个更酷的 UI 并允许用户从 UI 本身执行操作,而 Oozie 则不是这样。欢迎提供有关 Luigi 的任何信息或有关稳定性和问题的其他见解。
- Azkaban:不错UI,相对简单,非程序员也能上手。在 LinkedIn 拥有悠久的历史。
- 查看 GitHub 上的 Azkaban CLI project for programmatic job creation. I have an Azkaban example workflows 项目。
- Airflow:体面的 UI,Python-ish 作业定义,非程序员半可访问,依赖声明语法很奇怪。
- Luigi:好的UI,工作流程是纯粹的Python,需要扎实掌握Python编码和面向对象的概念,因此不适合非程序员。
- Oozie:疯狂的 XML 基于工作定义。这里是龙。 ;-)
恕我直言,Azkaban 强调简单性(不能使用不存在的功能),而其他人巧妙地鼓励复杂性。
更简单的管道优于复杂的管道:更容易创建、更容易理解(尤其是当您没有创建时)并且更容易 debug/fix。
当需要复杂的操作时,您希望以完全成功或完全失败的方式封装它们。
如果你能使它幂等(运行它再次产生相同的结果)那就更好了。
此 post 将让您初步了解不同的可能工作流程