分析用データ基盤を移行! 移行先を選定する際に考えたこと
メルペイは社内分析用データ基盤において、Apache Airflowを用いたワークフローから、Argo Workflowsとdata build tool(以下、dbt)を活用したアーキテクチャへ移行した事例について解説した。
まず、Apache AirflowとArgo Workflowsの機能を比較した。Apache Airflowは、ワークフローをコードで定義できる点が大きな強みで、多様なタスクオペレーターをサポートしており、柔軟性が高い。ただし、スケジューリングやリソース管理に課題があった。
一方、Argo Workflowsは、Kubernetes上で並列ジョブを管理することに特化したオープンソースのワークフローエンジンであり、Kubernetesのリソース管理を活用することでスケジューリングやスケーリングが容易。メルペイの環境により適していると評価され、Apache AirflowからArgo Workflowsへの移行が決定された。
次に、Apache Airflowからdbtへの移行について、ワークフロー定義の観点からいくつかの評価が行われた。dbtは、データ変換とモデリングに特化しており、SQLベースでの定義を行うことから、学習が比較的容易である。一方、Apache Airflowはさまざまなシステムに対応するETLワークフローを定義できるが、Pythonの知識が要求されることに加えて、Apache Airflow固有の概念を学ぶ必要がある。
dbtはシンプルで直感的にデータパイプラインを構築できるため、移行が選ばれた。各ツールの特徴や選定基準が伝わるセッションとなった。