SSIS を使ってApache Airflow のデータをSQL Server にインポート

古川えりか
古川えりか
コンテンツスペシャリスト
CData SSIS Components を使用して簡単にSQL Server へApache Airflow をバックアップします。



SQL Server に基幹業務データのバックアップを保管しておくことは、ビジネス上のセーフティネットとなります。また、ユーザーはSQL Server のバックアップデータからレポーティングや分析を簡単に行うことができます。

ここでは、SQL サーバー SSIS ワークフロー内でCData SSIS Tasks for API を使用して、Apache Airflow のデータをMicrosoft SQL Server データベースに転送する方法を説明します。

Components の追加

開始するには、新しいApache Airflow ソースとSQL Server ADO.NET 転送先を新しいデータフロータスクに追加します。

The Data Flow task used in this example.(Salesforce is shown.)

新しいコネクションマネジャーを作成

以下のステップに従って、接続マネジャーでApache Airflow 接続プロパティを保存します。

  1. Connection Manager ウィンドウで、右クリックで[New Connection] を選択します。Add SSIS Connection Manager ダイアログが表示されます。
  2. [Connection Manager type]メニューでAPI を選択します。CData Apache Airflow Connection Manager が表示されます。
  3. 接続プロパティを構成します。

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

Apache Airflow Source の構成

以下のステップに従って、Apache Airflow の抽出に使用するクエリを指定します。

  1. Apache Airflow ソースをダブルクリックしてソースコンポーネントエディタを開きます。
  2. [Connection Manager]メニューで、以前作成した接続マネジャーを選択します。The Connection Manager to be used for the source component.(Salesforce is shown.)
  3. データの書き出しに使用するクエリを指定します。例:
    
    SELECT DagRunId, State FROM DagRuns WHERE DagId = 'example_dag'
    
    The SQL query to retrieve records.(Salesforce is shown.)
  4. Apache Airflow Source コントロールを閉じて、ADO.NET Destination に接続します。

SQL Server Destination を構成する

以下のステップに従って、Apache Airflow をロードするSQL サーバーテーブルを指定します。

  1. ADO.NET Destination を選択して、新しい接続を追加します。接続するサーバーおよびデータベースの情報を入力。
  2. Data access モードメニューで、[table or view]を選択します。
  3. [Table Or View]メニューで、設定するテーブルまたはビューを選択します。
  4. [Mappings]画面で必要なプロパティを設定します。 The mappings from the SSIS source component to SQL Server.(Salesforce is shown.)

プロジェクトの実行

プロジェクトを実行できるようになりました。SSIS Task の実行が完了すると、データベースにApache Airflow のデータが入力されます。

The completed import.(Salesforce is shown.)

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

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

Apache Airflow に接続