チュートリアル: SSIS パッケージを使用して Azure Data Lake Storage Gen2 を介して OneLake にファイルを書き込む

このチュートリアルでは、Azure Data Lake Storage (ADLS) Gen2 にファイルを書き込む既存の SSIS パッケージを実行し、ショートカットを使用して OneLake でそれらのファイルを表示する方法について説明します。 Data Factory for Microsoft Fabric の [SSIS パッケージの呼び出し] アクティビティと OneLake ショートカットを組み合わせることで、従来の SSIS ワークロードによって生成されたデータであっても、OneLake 内のすべてのデータを一元化できます。

利用シーン

多くの組織には、データを抽出して変換し、結果をフラット ファイル (CSV、Parquet、XML など) として Azure Data Lake Storage Gen2 に書き込む SSIS パッケージがあります。 これらのファイルは、ダウンストリーム分析およびレポート システムによって使用されます。

Microsoft Fabric を使用すると、SSIS パッケージ ロジックを変更することなく、これらのファイルを OneLake に取り込むことができます。

  • 既存の SSIS への投資を保持する - Azure Storage 接続マネージャーを介して ADLS Gen2 にファイルを書き込む、バトル テスト済みパッケージの使用を続行します。 パッケージの書き換えは必要ありません。
  • OneLake でデータを一元化 する - Fabric Lakehouse に ADLS Gen2 ショートカットを作成して、SSIS によって書き込まれたファイルが OneLake に自動的に表示されるようにします。このショートカットは、Spark、SQL、Power BI、およびその他の Fabric ワークロードで使用できます。
  • Fabric での調整 - Fabric パイプラインの SSIS パッケージ呼び出しアクティビティを使用して、他の Fabric ネイティブ アクティビティと共にパッケージの実行をスケジュールおよび監視します。

前提条件

開始する前に、以下の項目があることを確認します:

  • Fabric 容量または試用版を含む Microsoft Fabric ワークスペース
  • ワークスペース内の レイクハウス
  • 階層型名前空間が有効になっている Azure Data Lake Storage Gen2 ストレージ アカウント。
  • Azure Storage 接続マネージャーを使用して ADLS Gen2 にファイルを書き込む SSIS パッケージ (.dtsx)。
  • ADLS Gen2 アカウントの資格情報として、アカウント キー、Shared Access Signature (SAS)、サービス プリンシパル、組織アカウントなどと、少なくとも ストレージ BLOB データ共同作成者 権限があること。

概要

エンド ツー エンド ワークフローには、次の 4 つの手順があります。

Step あなたの活動内容 結果
1 ADLS Gen2 にファイルを書き込む SSIS パッケージを構成する パッケージによってストレージ アカウントに出力ファイルが生成される
2 Fabric Lakehouse で ADLS Gen2 ショートカットを作成する ADLS Gen2 に書き込まれたファイルが OneLake に自動的に表示される
3 SSIS パッケージを OneLake にアップロードする パッケージは OneLake に格納され、呼び出す準備ができています
4 Fabric パイプラインからパッケージを実行する パイプラインによって実行が調整され、出力が OneLake に書き込まれます

手順 1 - ADLS Gen2 にファイルを書き込む SSIS パッケージを構成する

この手順では、SSIS パッケージが Azure Storage 接続マネージャーを使用して ADLS Gen2 アカウントにファイルを書き込むかどうかを確認します。

  1. SQL Server Integration Services Projects 拡張機能を使用して、Visual Studio で SSIS プロジェクトを開きます。

  2. Integration Services (SSIS) 用 Azure Feature Pack をインストールします。 Feature Pack には、SSIS パッケージから ADLS Gen2 に接続するために必要な Azure Storage 接続マネージャー、Azure Blob Source、Azure Blob Destination、およびその他の Azure 関連のタスクとコンポーネントが用意されています。

  3. [接続マネージャー] トレイで、Azure Storage 接続マネージャーを追加 (または確認) します。 次のようにプロパティを設定します。

    財産 価値
    サービス ADLS Gen2
    認証 AccessKeyServicePrincipal、または SharedAccessSignature のいずれかを選択します。
    アカウント名 ADLS Gen2 ストレージ アカウント名

    Azure Storage 接続マネージャーの構成ダイアログのスクリーンショット。

  4. データ フローまたはファイル システム タスクを構成して、この接続マネージャーを使用し、出力ファイルをストレージ アカウントのコンテナーとフォルダー パス ( mycontainer\myfolderなど) に書き込みます。

    ストレージ アカウントのコンテナーとフォルダー パスを含むデータ フロー構成のスクリーンショット。

  5. 接続をテストし、パッケージがローカル コンピューターで正しく実行されることを確認します。

Azure Storage 接続マネージャーの詳細については、Azure Storage 接続マネージャーに関するページを参照してください。

ヒント

パッケージで DontSaveSensitive 保護レベルが使用されている場合、資格情報はパッケージ ファイルに保持されません。 実行時に、SSIS パッケージの呼び出しアクティビティの [ 接続マネージャー ] タブから指定します。 または、パッケージ保護レベルを EncryptSensitiveWithPassword に設定して、パッケージ内の資格情報を暗号化することもできます。 その後、個々の接続マネージャー資格情報を指定する代わりに、実行時に SSIS パッケージの呼び出しアクティビティでパッケージ パスワードを指定します (手順 4)。

手順 2 - Fabric Lakehouse に ADLS Gen2 ショートカットを作成する

ショートカットを使用すると、データをコピーせずに、SSIS パッケージによって書き込まれたファイルが OneLake に表示されます。 任意のファブリック ワークロード (Spark、SQL 分析エンドポイント、Power BI) は、ショートカットを使用してファイルを読み取ることができます。

  1. Fabric ポータルで lakehouse を開きます。

  2. エクスプローラー ウィンドウで、[ファイル] フォルダー (またはサブフォルダー) を右クリックし、[新しいショートカット] を選択します。

  3. [外部ソース] で、[Azure Data Lake Storage Gen2] を選択します。

  4. 接続 URL (ストレージ アカウントの DFS エンドポイント) を入力します。

    https://<STORAGE_ACCOUNT_NAME>.dfs.core.windows.net
    
  5. 既存の接続を選択するか、新しい接続を作成します。 ストレージ アカウントで少なくとも ストレージ BLOB データ閲覧者 ロールを持つ認証の種類を選択します。

  6. [ 次へ] を選択し、SSIS パッケージがファイルを書き込むコンテナーとフォルダー ( mycontainerなど) を参照します。

  7. ターゲット フォルダーを選択し、[ 次へ ] → [作成] を選択します。

    選択したストレージ コンテナーを示すショートカット作成ダイアログのスクリーンショット。

これで、ショートカットがレイクハウスに表示されます。 SSIS パッケージが ADLS Gen2 ターゲット フォルダーに書き込むファイルは、このショートカットを使用して OneLake で自動的にアクセスできます。

詳細な手順については、「 Azure Data Lake Storage Gen2 ショートカットの作成」を参照してください。 ショートカットの詳細については、「 OneLake ショートカット」を参照してください。

手順 3 - SSIS パッケージを OneLake にアップロードする

SSIS パッケージの呼び出しアクティビティは、OneLake からパッケージを読み取ります。 .dtsx ファイル (およびオプションの .dtsConfig ファイル) を lakehouse にアップロードします。

  1. Fabric ポータルで、パッケージを格納する lakehouse を開きます。

  2. [ ファイル ] セクションで、フォルダー (たとえば、 ssis-packages) を作成します。

  3. 次のいずれかの方法を使用してパッケージをアップロードします。

    メソッド どのように
    Fabric ポータル [ UploadUpload files ]\(ファイルのアップロード\) を選択し、 .dtsx ファイルを選択します。
    OneLake ファイル エクスプローラー デスクトップの OneLake ファイル エクスプローラーを使用して、ファイルを packages フォルダーにドラッグ アンド ドロップします。

OneLake へのファイルのアップロードの詳細については、 SSIS パッケージの呼び出しアクティビティに関するドキュメントを参照してください

手順 4 - Fabric パイプラインでパッケージを実行する

  1. Fabric ワークスペースで、新しいデータ パイプラインを作成するか、既存の データ パイプライン を開きます。

  2. [アクティビティ] ウィンドウで、パイプライン キャンバスに SSIS パッケージの呼び出しアクティビティを追加します。

  3. [ 設定] タブで、アクティビティを構成します。

    Setting 価値
    パッケージ パス 手順 3 でアップロードした .dtsx ファイルを参照します。
    構成パス(省略可能) 該当する場合は、 .dtsConfig ファイルを参照します。
    暗号化パスワード(省略可能) パッケージ保護レベルが EncryptSensitiveWithPassword または EncryptAllWithPassword の場合は、パッケージの暗号化に使用するパスワードを指定します。
    ログ記録を有効化する OneLake に実行ログを書き込む場合に選択します。

    ファブリック パイプラインの [SSIS パッケージの呼び出しアクティビティ設定] タブのスクリーンショット。

  4. [保存] を選択し、[実行] を選択してパイプラインを直ちに実行するか、[スケジュール] を選択して定期的な実行を設定します。

  5. パイプライン の [出力 ] タブまたはワークスペースの [監視 ] ハブで進行状況を監視します。 ログ記録が有効になっている場合、アクティビティの出力には OneLake の ログ パス が含まれます。

完全な構成の詳細については、「 SSIS パッケージの呼び出しアクティビティを使用して SSIS パッケージを実行する」を参照してください。

結果を確認してください。

パイプラインの実行が正常に完了した後:

  1. Lakehouse を開き、手順 2 で作成したショートカットに移動します。
  2. SSIS パッケージによって書き込まれた出力ファイルがショートカット フォルダーに表示されることを確認します。

まとめ

いくつかの Fabric 機能を組み合わせることで、既存のパッケージを変更することなく、ファイル ベースの SSIS 出力を OneLake に取り込むことができます。

  1. Azure Storage 接続マネージャー は、SSIS パッケージ内から ADLS Gen2 にファイルを書き込みます。
  2. OneLake ショートカット では、これらのファイルが Fabric Lakehouse に表示されます。データ コピーは必要ありません。
  3. OneLake にパッケージをアップロード すると、 .dtsx ファイルを Fabric パイプラインの実行に使用できるようになります。
  4. SSIS パッケージ アクティビティを呼び出して 、Fabric パイプラインでのパッケージの実行を調整および監視します。

このパターンを使用すると、既存の SSIS 投資を維持しながら、OneLake 内のすべてのデータを管理できます。