我想使用 ETL 服务,但我被困在 Apache Airflow 和 Matillion 之间。
- 他们是一样的吗?
- 主要区别是什么?
我想使用 ETL 服务,但我被困在 Apache Airflow 和 Matillion 之间。
我从来没有使用过Matillion。因此,我无法回答您拥有的任何特定用例。
但是通过对Matillion 的快速分析,我可以很好地看出Matillion 和Airflow 根本不一样。
Matillion 是一个提取/转换/加载工具。您可以将其与 AWS Glue / Apache NiFi / DMExpress 等工具进行比较。
Airflow 是一种编排工具。您可以将其与 oozie 等工具进行比较。
更重要的是,Matillion 并不是免费的。
Airflow 的主要用例是编排/调度,而不是 ETL。您可以在 Airflow DAG 中执行 ETL 任务,但除非您计划使用容器化/K8 架构来实施 Airflow,否则您将很快看到性能瓶颈,甚至是挂起/卡住的流程。当然,有一些方法可以缓解这种情况,但这不是主要用例。
Matillion 的主要用例是 ETL(实际上是 ELT),因此它不会遇到同样的性能问题,也不会需要复杂的基础架构来实现该性能。它还提供了一个基于 GUI 的代码可选界面,因此您无需成为 Python 专家即可快速获得结果。
实际上,我认为 Airflow 和 Matillion 是互补的(可能)。例如,如果您有应用程序间的依赖关系,您可以使用 Airflow 或其他第三方调度程序来编排 Matillion 工作流程,并获得两者的好处。