BIRT でApache Airflow のデータのレポートを作成
CData JDBC Driver for Apache Airflow は、データドリブンな Java アプリケーションにApache Airflow API への接続機能を統合します。CData JDBC Driver for Apache Airflow を BIRT(Business Intelligence Reporting Tools)プラットフォームと組み合わせることで、データの変更をリアルタイムに反映する BIRT レポートを作成できます。
- まだインストールしていない場合は、BIRT Framework プラグインと Database Development プラグインを Eclipse にインストールします。
- 「File」->「New」->「Report」をクリックします。Report Design パースペクティブが開きます。
- Data Explorer で「Data Sources」を右クリックし、「New Data Source」をクリックします。
- 「Create from a Data Source Type in the Following List」オプションを選択し、「JDBC Data Source」を選択します。
- 「Manage Drivers」をクリックし、インストールフォルダの lib サブフォルダにあるドライバー JAR を追加します。
- 「Database URL」ボックスに、接続文字列を含む JDBC URL を入力します。
まず、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 を設定する際、Max Rows 接続プロパティも設定しておくと良いでしょう。返される行数が制限されるため、レポートやビジュアライゼーションの設計時のパフォーマンスが向上します。
一般的な JDBC URL は以下のとおりです:
jdbc:api:Profile=C:\profiles\ApacheAirflow.apip;AuthScheme=APIKey;ProfileSettings='APIKey=your_jwt_token;Server=http://localhost:8080'; - 「Data Sets」フォルダを右クリックし、Apache Airflow用の JDBC データソースを選択します。
- 表示されるダイアログで、レポート用のデータを取得する SELECT クエリを作成します。この記事では以下のクエリを使用します:
SELECT DagRunId, State FROM DagRuns WHERE DagId = 'example_dag' - 「Palette」からエディターにチャートをドラッグします。チャートウィザードが表示されます。
- チャートタイプを選択した後、「Select Data」タブでカラムをチャートフィールドにドラッグします。
- 「Run」->「View Report」->「In Web Viewer」をクリックしてレポートを表示します。
これで、BIRT レポートがApache Airflow のデータの更新を反映できるようになりました。
レポートをアプリケーションサーバーに公開するには、ドライバー JAR を BIRT Viewer のクラスパスに追加します。詳細については、Java アプリケーションサーバーへの JDBC ドライバのデプロイに関する CData KB ガイドを参照してください。