Azure Data Factory を使用したハイブリット ETL

Blob Storage
Data Factory
Synapse Analytics

このシナリオ例では、SQL Server データベースをクラウドに移動するためのハイブリッド ソリューションを示します。 このソリューションでは、クラウドベースの抽出、変換、読み込み (ETL) のプライマリ エンジンとして Azure Data Factory を使用します。 既存の SQL Server Integration Services (SSIS) パッケージを新しいクラウド データ ワークフローに組み込むために、このソリューションでは Data Factory 統合ランタイムを使用します。

アーキテクチャ

Azure Data Factory を使用するハイブリッド ETL プロセスのアーキテクチャの概要を示す図。

このアーキテクチャの Visio ファイルをダウンロードします。

データフロー

  1. データは Azure Blob Storage から Data Factory に取り込まれます。
  2. Data Factory パイプラインによってストアド プロシージャが呼び出され、統合ランタイムを介してオンプレミスでホストされている SSIS ジョブが実行されます。
  3. データ クレンジング ジョブが実行され、ダウンストリームでの使用のためにデータが準備されます。
  4. データ クレンジング タスクが正常に終了すると、コピー タスクが実行され、クリーン データが Azure に読み込まれます。
  5. その後、クリーン データが Azure Synapse Analytics のテーブルに読み込まれます。

コンポーネント

  • Blob Storage は、ファイルの格納に使用されます。Data Factory がデータを取得するためのソースとして機能します。
  • SQL Server Integration Services には、タスク固有のワークロードの実行に使用されるオンプレミス ETL パッケージが含まれます。
  • Data Factory は、複数のソースからデータを取得、結合、調整して、データ ウェアハウスに読み込むクラウド オーケストレーション エンジンです。
  • Azure Synapse Analytics は、クラウド内のデータを一元化します。 標準の ANSI SQL クエリを使用して、データに簡単にアクセスできます。

代替

Data Factory では、仮想マシン (VM) で実行されている SSIS インスタンス、Databricks ノートブック、Python スクリプトなど、他のテクノロジを使用して実装されているデータ クレンジング プロシージャを呼び出すことができます。 Azure SSIS 統合ランタイムの有料 (ライセンスあり) カスタム コンポーネントのインストールが、ハイブリッド アプローチの代替手段として利用できる可能性があります。

シナリオの詳細

SQL Server データベースをクラウドに移行すると、コストを大幅に削減し、パフォーマンス、柔軟性、スケーラビリティを高めることができます。 ただし、SSIS を使用して構築された既存の ETL プロセスを修正することが、移行の障害になる可能性があります。 場合によっては、データ読み込みプロセスには、複雑なロジックや、Data Factory v2 でまだサポートされていない特定のデータ ツール コンポーネントが必要です。 一般的に使用される SSIS 機能には、あいまい参照変換とあいまいグループ化変換、変更データ キャプチャ (CDC)、緩やかに変化するディメンション (SCD)、および Data Quality Services (DQS) が含まれます。

既存の SQL データベースの "リフトアンドシフト" 移行を支援するには、ハイブリッド ETL アプローチが最適なオプションです。 ハイブリッドのアプローチでは、プライマリ オーケストレーション エンジンとして Data Factory が使用されますが、データのクリーニングとオンプレミス リソースの操作には既存の SSIS パッケージが引き続き使用されます。 この記事のアプローチでは、Data Factory SQL Server 統合ランタイムを使用して、既存のデータベースのクラウドへのリフト アンド シフト移行を可能にしながら、既存のコードと SSIS パッケージを新しいクラウド データ ワークフローに組み込みます。

従来、SSIS は、多数の SQL Server データ プロフェッショナルに選ばれてきた、データの変換と読み込みを行うための ETL ツールです。 多くの組織が、特定のデータ タスク向けの SSIS ETL パッケージの開発に多額の投資を行ってきています。 特定の SSIS 機能やサード パーティ製の組み込みコンポーネントが、開発の取り組みを加速するために使用されることもあります。

これらのパッケージの置換または再開発は、これらのパッケージの書き換えが困難になる可能性があるため、選択肢にならない場合があります。 また、既存のコード パッケージの多くがローカル リソースに依存しており、これがクラウドへの移行を妨げています。 Data Factory には、既存の ETL パッケージを利用できるだけでなく、オンプレミスの ETL 開発への追加投資を制限する方法が用意されています。 このソリューションは、既存のデータベースのクラウドへの移行に対する影響が少ないアプローチです。

考えられるユース ケース

このソリューションは、次のような多くのシナリオに適用できます。

  • ネットワーク ルーターのログを分析のためにデータベースに読み込む
  • 分析レポート作成のために人事雇用データを準備する
  • 売上予測のために製品および売上データをデータ ウェアハウスに読み込む
  • 財務会計のデータ ストアまたはデータ ウェアハウスの読み込みや運用を自動化する

考慮事項

これらの考慮事項は、ワークロードの品質向上に使用できる一連の基本原則である Azure Well-Architected Framework の要素を組み込んでいます。 詳細については、「Microsoft Azure Well-Architected Framework」を参照してください。

パフォーマンス効率

パフォーマンス効率とは、ユーザーによって行われた要求に合わせて効率的な方法でワークロードをスケーリングできることです。 詳細については、「パフォーマンス効率の柱の概要」を参照してください。

統合ランタイムでは、セルフホステッド統合ランタイムと Azure ホステッド統合ランタイムの 2 つのモデルがサポートされています。 まず、これら 2 つのオプションのどちらを使用するかを決める必要があります。 セルフホスティングはコスト効率に優れていますが、メンテナンスと管理のオーバーヘッドが増えます。 詳細については、セルフホステッド IRに関する記事をご覧ください。 使用する統合ランタイム判断する際にサポートが必要な場合は、「使用する IR の判別」を参照してください。

Azure ホスト アプローチの場合、データの処理にどれくらい電力が必要かを判断する必要があります。 Azure ホスト構成を選択すると、構成手順の一環として VM のサイズを選択できます。 VM サイズの選択の詳細については、VM のパフォーマンスに関する考慮事項の記事をご覧ください。

既存の SSIS パッケージに、Azure からアクセスできないデータ ソースやファイルなどのオンプレミスの依存関係が既にある場合、決めるのは簡単です。 このシナリオでは、セルフホステッド IR が唯一のオプションです。 このアプローチでは、クラウドをオーケストレーション エンジンとして使用するうえで最高の柔軟性が提供され、既存のパッケージを書き換える必要がありません。

最終的な目標は、処理されたデータをクラウドに移動して、さらなる改善を実現する、あるいは、クラウドに格納されている他のデータと結合することです。 設計プロセスの一環として、Data Factory のパイプラインで使用されているアクティビティの数を追跡してください。 詳細については、「Azure Data Factory のパイプラインとアクティビティ」を参照してください。

コスト最適化

コストの最適化とは、不要な費用を削減し、運用効率を向上させる方法を検討することです。 詳しくは、コスト最適化の柱の概要に関する記事をご覧ください。

Data Factory は、クラウドでのデータ移動を調整するための、コスト効率に優れた方法です。 コストは、次の数に基づいています。

  • パイプラインの実行。
  • パイプラインで使用されるエンティティおよびアクティビティ。
  • 操作の監視。
  • 統合ランタイム (Azure ホステッド統合ランタイムまたはセルフホステッド統合ランタイム)。

Data Factory では、使用量ベースの課金が採用されています。 このため、コストが発生するのは、パイプラインの実行中と監視中のみです。 基本パイプラインの実行コストはわずか 50 セント、監視コストはわずか 25 セントです。 特定のワークロードに基づいて、より正確な見積もりを作成するには、Azure 料金計算ツールを使用します。

ハイブリッド ETL ワークロードを実行するときは、SSIS パッケージのホストに使用される VM のコストを考慮する必要があります。 このコストは、D1v2 (1 コア、3.5 GB RAM、50 GB ディスク) から E64V3 (64 コア、432 GB RAM、1600 GB ディスク) までの VM サイズに基づきます。 適切な VM サイズの選択について詳しいガイダンスが必要な場合は、VM のパフォーマンスに関する考慮事項の記事をご覧ください。

共同作成者

この記事は、Microsoft によって更新および保守されています。 当初の寄稿者は次のとおりです。

プリンシパル作成者:

  • Alex Hieng |シニア クラウド スペシャリスト

パブリックでない LinkedIn プロファイルを表示するには、LinkedIn にサインインします。

次のステップ