Pentaho Data Integration でApache Airflow のデータを連携

Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
Pentaho Data Integration で Apache Airflow のデータ をベースにした ETL パイプラインを構築します。



CData API Driver for JDBC を使用すると、データパイプラインからリアルタイムデータにアクセスできます。Pentaho Data Integration は、ETL(Extraction, Transformation, and Loading)エンジンであり、データをクレンジングし、アクセス可能な統一フォーマットでデータを格納します。この記事では、Apache Airflow のデータ に JDBC データソースとして接続し、Pentaho Data Integration で Apache Airflow のデータ をベースにしたジョブやトランスフォーメーションを構築する方法を説明します。

Apache Airflow への接続を設定

まず、Profile 接続プロパティをディスク上の ApacheAirflow プロファイルの場所に設定します(例:C:\profiles\ApacheAirflow.apip)。次に、ProfileSettings 接続プロパティを ApacheAirflow の接続文字列に設定します(以下を参照)。

ApacheAirflow API プロファイル設定

Apache Airflow 3 では、API 認証に JWT Bearer トークンを使用します。トークンは、Airflow Web UI の「Settings」から生成するか、Airflow CLI の airflow users create と /api/v2/auth/token エンドポイントを使って生成できます。なお、このプロファイルは /api/v2 REST API を使用する Apache Airflow 3.x を対象としています。Airflow 2.x で使われていた従来の /api/v1 エンドポイントには対応していません。

以下の接続プロパティを設定すると、接続できるようになります。

  • AuthScheme:APIKey に設定します。
  • APIKey:Apache Airflow の JWT Bearer トークンに設定します。
  • Server:Airflow インスタンスのベース URL に設定します(例:http://localhost:8080)。

組み込みの接続文字列デザイナー

JDBC URL の構築を支援するには、Apache Airflow JDBC Driver に組み込まれている接続文字列デザイナーを使用してください。JAR ファイルをダブルクリックするか、コマンドラインから JAR ファイルを実行します。


java -jar cdata.jdbc.api.jar

接続プロパティを設定し、接続文字列をクリップボードにコピーします。

組み込みの接続文字列デザイナーを使用して JDBC URL を生成(Salesforce の例)

JDBC URL を設定する際には、Max Rows 接続プロパティの設定も検討してください。これにより返される行数が制限され、レポートやビジュアライゼーションの設計時にパフォーマンスを向上させることができます。

一般的な JDBC URL は次のようになります:

jdbc:api:Profile=C:\profiles\ApacheAirflow.apip;AuthScheme=APIKey;ProfileSettings='APIKey=your_jwt_token;Server=http://localhost:8080';

接続文字列を保存して、Pentaho Data Integration で使用します。

Pentaho DI から Apache Airflow に接続

Pentaho Data Integration を開き、「Database Connection」を選択して CData API Driver for JDBC への接続を設定します。

  1. 「General」をクリックします。
  2. Connection name を設定します(例:Apache Airflow Connection)。
  3. Connection type を「Generic database」に設定します。
  4. Access を「Native (JDBC)」に設定します。
  5. Custom connection URL に Apache Airflow の接続文字列を設定します(例:
    jdbc:api:Profile=C:\profiles\ApacheAirflow.apip;AuthScheme=APIKey;ProfileSettings='APIKey=your_jwt_token;Server=http://localhost:8080';
    )。
  6. Custom driver class name を「cdata.jdbc.api.APIDriver」に設定します。 JDBC Driver 接続の設定
  7. 接続をテストし、「OK」をクリックして保存します。 接続の保存

Apache Airflow のデータパイプラインを作成

CData JDBC Driver を使用して Apache Airflow への接続が設定されたら、新しいトランスフォーメーションまたはジョブを作成する準備が整いました。

  1. 「File」>>「New」>>「Transformation/job」をクリックします。
  2. 「Table input」オブジェクトをワークフローパネルにドラッグし、Apache Airflow 接続を選択します。 Table input オブジェクトの設定
  3. 「Get SQL select statement」をクリックし、Database Explorer を使用して利用可能なテーブルとビューを表示します。 データの選択(QuickBooks Online の例)
  4. テーブルを選択し、必要に応じてデータをプレビューして確認します。 データのプレビュー(QuickBooks Online の例)

ここから、適切な同期先を選択し、レプリケーション中にデータを変更、フィルタリング、その他の処理を行うトランスフォーメーションを追加することで、トランスフォーメーションまたはジョブを続行できます。

完成したトランスフォーメーション/ジョブ

無料トライアルと詳細情報

CData API Driver for JDBC の 30日間無料トライアルをダウンロードして、Pentaho Data Integration で Apache Airflow のデータ のリアルタイムデータを今すぐ活用しましょう。

はじめる準備はできましたか?

API Driver で Apache Airflow のライブデータに接続

Apache Airflow に接続