Apache Airflow ODBC データソースとの間にInformatica マッピングを作成

古川えりか
古川えりか
コンテンツスペシャリスト
Informatica にApache Airflow へのODBC 接続を作成し、Apache Airflow のデータを参照および転送。



Informatica はデータを転送、変換するための強力で洗練された手段です。CData ODBC Driver for API は、Informatica の強力なデータ転送・変換機能とシームレスに連携可能な、業界で実証済みの標準ドライバです。このチュートリアルでは、Informatica PowerCenter でApache Airflow のデータを転送および参照する方法を説明します。

CData ODBC ドライバとは?

CData ODBC ドライバは、以下のような特徴を持ったリアルタイムデータ連携ソリューションです。

  1. Apache Airflow をはじめとする、CRM、MA、会計ツールなど多様なカテゴリの270種類以上のSaaS / オンプレミスデータソースに対応
  2. 多様なアプリケーション、ツールにApache Airflow のデータを連携
  3. ノーコードでの手軽な接続設定
  4. 標準 SQL での柔軟なデータ読み込み・書き込み

CData ODBC ドライバでは、1.データソースとしてApache Airflow の接続を設定、2.Informatica 側でODBC Driver との接続を設定、という2つのステップだけでデータソースに接続できます。以下に具体的な設定手順を説明します。

CData ODBC ドライバのインストールとApache Airflow への接続設定

まずは、本記事右側のサイドバーからAPI ODBC Driver の無償トライアルをダウンロード・インストールしてください。30日間無償で、製品版の全機能が使用できます。

Apache Airflow への接続に関する情報と、Windows およびLinux 環境でのDSN の設定手順を以下で説明します。

まず、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)。

Windows

接続プロパティが未設定の場合は、まずODBC DSN(データソース名)で設定します。ドライバーのインストールの最後にアドミニストレーターが開きます。Microsoft ODBC データソースアドミニストレーターを使ってODBC DSN を作成および設定できます。

Linux

CData ODBC Driver for API をLinux 環境にインストールする場合、ドライバーのインストールによってDSN が事前に定義されます。DSN を変更するには、システムデータソースファイル(/etc/odbc.ini)を編集し、必要な接続プロパティを定義します。

/etc/odbc.ini


[CData API Source]
Driver = CData ODBC Driver for API
Description = My Description
Profile = C:\profiles\ApacheAirflow.apip
AuthScheme = APIKey
ProfileSettings = 'APIKey = your_jwt_token
Server = http://localhost:8080'

これらの構成ファイルの使用方法については、オンラインのヘルプドキュメントを参照してください。

DagRuns データへのリンクテーブルを作成する

「オブジェクトエクスプローラー」からリンクテーブルを作成してライブDagRuns データにアクセスする方法は、次のとおりです。

ODBC 接続を作成する

下記の手順に従って、Informatica PowerCenter のApache Airflow に接続します。

  1. Informatica Developer ツールで、リポジトリに接続してプロジェクトを作成しておきます。
  2. 「Connection Explorer」ペインで右クリックし、「Create a Connection」をクリックします。
  3. 「New Database Connection」ウィザードが表示されたら、接続に名前とID を入力し、「Type」メニューで「ODBC」を選択します。
  4. 「Connection String」プロパティに
    jdbc:api:Profile=C:\profiles\ApacheAirflow.apip;AuthScheme=APIKey;ProfileSettings='APIKey=your_jwt_token;Server=http://localhost:8080';
    を入力します。

注意:Linux オペレーティングシステムで作業している場合は、「Driver Manager for Linux」プロパティをunixODBC 2.3.x に設定します。

Apache Airflow のデータオブジェクトを作成する

Apache Airflow へのODBC 接続を作成したら、Informatica でApache Airflow エンティティにアクセスできるようになります。下記の手順に従って、DagRuns エンティティをプロジェクトに追加します。

  1. 「Object Explorer」でプロジェクトを右クリックし、「New」->「Data Object」をクリックします。
  2. ウィザードが表示されたら「Relational Data Object」オプションを選択します。
  3. 「Connection」ボックス横にある「Browse」ボタンをクリックし、先に作成したODBC 接続を選択します。
  4. 既存のリソースからデータオブジェクトを作成するオプションを選択し、「Resource」ボックス横にある「Browse」ボタンをクリックします。
  5. ダイアログが表示されたら、「Show Default Schema Only」オプションの選択を解除してODBC 接続のノードを展開します。必要なエンティティを選択します。 The driver models Apache Airflow entities as relational tables.(Salesforce is shown.)

これで、Data Viewer でテーブルをブラウズできます。テーブル用ノードを右クリックし「Open」をクリックします。「Data Viewer」ビューで「Run」をクリックします。

Table data and metadata in the Data Viewer.(Salesforce is shown.)

マッピングを作成する

下記の手順に従って、Apache Airflow ソースをマッピングに追加します。

  1. 「Object Explorer」でプロジェクトを右クリックし、「New」->「Mapping」をクリックします。
  2. Apache Airflow 接続のノードを展開してから、テーブル用のデータオブジェクトをエディタ上にドラッグします。
  3. ダイアログが表示されたら「Read」オプションを選択します。
The source Apache Airflow table in the mapping.(Salesforce is shown.)

以下のステップに従って、Apache Airflow カラムをフラットファイルにマッピングします。

  1. 「Object Explorer」でプロジェクトを右クリックし、「New」->「Data Object」をクリックします。
  2. 「Flat File Data Object」->「Create as Empty」->「Fixed Width」と選択します。
  3. Apache Airflow オブジェクトのプロパティで目的の行を選択して右クリックし、コピーします。コピーした行をフラットファイルプロパティにペーストします。
  4. フラットファイルのデータオブジェクトをマッピングにドラッグします。ダイアログが表示されたら「Write」オプションを選択します。
  5. クリックおよびドラッグしてカラムを接続します。

Apache Airflow のデータを転送するには、ワークスペース内で右クリックして「Run Mapping」をクリックします。

The completed mapping.(Salesforce is shown.)

おわりに

このようにCData ODBC ドライバと併用することで、270を超えるSaaS、NoSQL データをコーディングなしで扱うことができます。30日の無償評価版が利用できますので、ぜひ自社で使っているクラウドサービスやNoSQL と合わせて活用してみてください。

CData ODBC ドライバは日本のユーザー向けに、UI の日本語化、ドキュメントの日本語化、日本語でのテクニカルサポートを提供しています。

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

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

Apache Airflow に接続