データ分析、データベース

Azure Data Factoryとは?使い方や料金・Data Flowについても解説

Azure Data Factoryとは?使い方や料金・Data Flowについても解説

現代社会において、データはあらゆる組織にとって不可欠な存在となっています。そこで、ビッグデータ統合を容易にするために設計されたデータ統合サービスであるAzure Data Factoryが注目されています。

また、データの統合において重視されている3つのプロセスが「Extract(データの抽出)」「Transform(データの変換と加工)」「Load(データの格納)」です。

「Azure Data Factory」はエンタープライズ向けの大規模なETLもしくはELTを実現し、コードによる記述はもちろん視覚的にも操作できるツールです。ここではビッグデータを統合するメリットから、Azure Data Factoryの概要、初めて利用するときの方法やData Flowの使い方についても解説します。

データ分析の工程と関連ツールを紹介

Azure Data Factoryとは

Azure Data Factoryは、Microsoftが提供するクラウド型のデータ統合サービスで、オンプレミスにあるデータやクラウド上にあるデータを一元管理できます。

このサービスを利用することで、組織内で部署ごとにそれぞれ管理されており、独立した状態にあるデータの統合が可能です。さらに結合・加工といった処理を実施し、効率よくデータ分析ができます。

Azure Data Factoryでは、ビジュアル環境によってデータの構造化や組織化が可能です。データの格納、移動、準備、変換、処理は数回のクリックで行うことができ、シンプルかつ包括的なETLまたはELTのプロセスを実現できます。

コードの生成とメンテナンスはマネージドApache Sparkによって行われ、利用者はコーディングやメンテナンスを必要としません。オンプレミスとクラウドによるハイブリッド なデータ統合や、ビルドとデプロイを自動化するパイプラインを使うこともできます。

ETL・ELTとは?

企業におけるデータ活用がますます重要になっています。しかし、異なるシステムや形式で存在するデータを分析するには、データの処理や統合が不可欠です。ETLとELTは、どちらもデータを収集、処理、分析するためのデータ統合手法ですが、処理の順番が異なります。

ETLはExtract・Transform・ Loadの頭文字を取ったものです。

  •  抽出 (Extract)
    各種データソースから必要なデータを収集
  •  変換 (Transform)
    収集したデータを分析しやすい形に変換、データのクリーニング、結合、集計、マッピングなども行う
  •  格納 (Load)
    データをデータウェアハウスやデータベースに格納

ETLは、分析するためのデータを抽出し、扱いやすい形に変換してから格納します。
一方で、ELTは抽出して格納をしてから扱いやすいデータに変換しています。データの質を求める場合はETL、処理速度を求める場合はELTを選択することが一般的です。それぞれの特徴を理解して用途に合わせて使い分けましょう。

Azure Data Factoryの4つの概念

Azure Data Factoryは、データ統合、変換、オーケストレーションを可能にするクラウドベースのサービスです。さまざまなソースからデータを収集し、処理、分析するためのワークフローを構築できます。

この章では、Azure Data Factoryの4つの主要な概念について解説します。

1.リンクサービス

リンクサービスは、Azure Data Factoryが外部データソースやサービスに接続するために必要な情報を定義するものです。接続先の種類、認証情報、アクセス許可などを設定します。

主な設定項目は、以下の4項目です。

  •  データソースの種類 (SQL Server、Azure Blob Storage、Salesforce など)
  •  接続先URL
  •  認証情報 (ユーザー名、パスワード、アクセスキーなど)
  •  アクセス方法 (オンプレミス接続、クラウド接続など)

リンクサービスを作成することで、Azure Data Factoryが外部システムと安全かつ効率的に連携可能です。

2.データセット

データセットは、Azure Data Factoryで処理するデータの定義を記述するものです。データソース、スキーマ、取得方法、スケジュールなどを設定します。

  •  データソース (リンクサービスで定義したもの)
  •  スキーマ (データの構造)
  •  取得方法 (コピー、実行など)
  •  スケジュール (データを取得するタイミング)

データセットを作成することで、Azure Data Factoryが処理するデータの内容と構造を明確に定義できます。

3.アクティビティ

アクティビティは、データ処理を実行する個々の操作を定義するものです。データのコピー、変換、ロード、制御フローなどを実行するアクティビティがあります。アクティビティを組み合わせることで、複雑なデータ処理ワークフローを構築できます。

Azure Data Factoryでは、以下の4つのアクティビティがサポートされています。

  •  コピー
  •  データ移動
  •  データ変換
  •  制御

4.パイプライン

パイプラインとは、アクティビティを組み合わせて作成される、実行順序を制御するためのワークフローです。

アクティビティ単体ではなく、複数アクティビティをセットで管理できることがメリットです。パイプライン内のアクティビティは、順番に処理させることも可能です。また、複数のアクティビティを並列処理で同時に動かすこともできます。

データ統合サービスが必要な背景

大企業では、財務会計の情報、勤怠情報、顧客管理の情報、販売情報、物流システムの在庫情報など、さまざまなデータが部門ごとに点在している場合があります。

部門ごとに分断されたデータは「データサイロ」と呼ばれます。もともとサイロは、農畜産業で小麦や飼料などを蓄えておく倉庫のことです。各部門や特定の管理者が壁を作って情報を囲い込むと、他の部署から隔離されたデータサイロが林立した状態になります。これは情報の共有、業務効率化、経営の可視化の障壁となります。

点在したデータから、経営情報を俯瞰(ふかん)して読み解くためには、データの統合が必要です。経営会議で、各部門の幹部が膨大な印刷物の資料に情報をまとめて持ち寄らなければならないようであれば、スマートな経営ができません。

したがって、この点在化したデータサイロを統合する必要があります。統合のメリットは、経営分析の効率化です。データサイロを統合する1つの方法としては、DWH(Data Ware House:データの倉庫)の構築があります。

DWHにあらゆる情報を集約し、グラフィカル・ユーザー・インターフェース(GUI)によるコックピットやダッシュボードで視覚的に確認できるようにすれば、経営者は必要な情報を抽出して直感的に把握できます。これがいわゆる「BI(Business Intelligence)」のソリューションであり、ELTとETLはその基盤を支えるフローといえるでしょう。

しかしながら、包括的なデータを蓄積して分析するDWHとBIの構築は、企業の業務プロセスや内容を理解して、あらゆるデータの特性に合わせたプログラミングが必要です。したがって開発工数が膨大になり、コストが増加し、構築が困難でした。

この工数削減と環境構築の課題を解決できるサービスが、Azure Data Factoryです。サーバーレスなためサーバーの費用を削減可能で、フルマネージドなため環境構築が容易になります。

Azure Data Factoryのメリット

Azure Data Factoryには次のようなメリットがあります。

Azure Data Factoryによる運用コスト削減、柔軟なスケーリング

Azure Data Factoryは、Azureのサービスを利用していれば初期費用は不要です。システムが稼働した時間だけ課金されるサーバーレスの自動化されたツールで、統合するデータを格納するインフラストラクチャや互換性を保持して、必要なパフォーマンスの分だけ課金されます。データが増加した場合は、エラスティック機能で必要に応じて自動的にスケーリングされるため、コスト効率に優れています。

ビッグデータの分析では、「Azure Data Share」で分析したいデータセットをAzure分析環境に追加した後、Azure Data Factoryでパイプラインを使って統合し、データの格納、変換により分析情報の抽出が可能になります。

グローバルな利用環境も整備され、25を超える国とリージョンで利用可能です。コンプライアンスを重視しつつネットワーク送信コスト削減して、データを移行できます。

Azure SSIS 統合ランタイムでデータ移行の煩雑さを回避

オンプレミスのデータをクラウドに移行する場合は、煩雑な作業が必要です。しかし、Azure Data Factoryを使えば、データ抽出・変換・格納のプロセスを保持したまま、SQL Server DBをクラウドに移行可能です。

Azure Data Factoryには、異なるネットワーク環境におけるデータ統合を実現する機能として「SSIS(SQL Server Integration Services)」専用のAzureのパッケージを提供しています。 Azure Data Factory統合ランタイムを使用すれば、作業負荷を軽減して既存のオンプレミスのSSISワークロードをクラウドに再ホストできます。

これまでオンプレミスでSSISを使用していた場合は、使い慣れたSQL Server Data Tools (SSDT) や SQL Server Management Studio (SSMS) などによって、ほとんど変更を加えずに既存のSSISパッケージをデプロイして管理できます。したがって、OSとサーバーやソフトウェアなどシステム全体にかかる負荷削減にも効果があります。

GUIとコードによる自由度の高い環境

Azure Data Factoryは、あらゆるレベルの利用者を対象としています。したがって、GUIで直感的な操作ができるとともに、開発者はPython、.NET、ARMなど得意なコードを使ってパイプラインを記述できます。選択した処理をパイプラインに入力、カスタムコードを記述して任意のパイプラインの処理として挿入するなど、自由度が高い環境を備えています。

Azure Data Factoryの機能

Azure Data Factoryの機能

Azure Data Factoryには、データを抽出、変換、格納し、分析しやすくするためのさまざまな機能が備わっています。ここからは、Azure Data Factoryの主な機能を紹介します。

各種システムからのデータ収集

Azure Data Factoryは、100以上の組み込みコネクタを利用して、さまざまなデータを統合できます。

例えば、AWSで提供されているAmazon RedshiftやGoogle Cloudが提供するBigQueryといったサービスにあるビッグデータも統合可能です。さらに、slackやAdobeといったSaaSサービスのデータも統合して分析できます。

組み込みコネクタの利用には、料金がかかりません。メリット紹介でも触れましたが、コストが抑えられるという特徴があります。

格納データの変換・強化

Azure Data Factoryは、収集したデータを分析しやすい形に変換・強化する機能を備えています。

データ欠損が見受けられる場合の補完、重複データがある場合の削除など、データクリーニング機能を利用可能です。また、データの結合集計、異なるデータ構造を統一するデータマッピングの機能を活用しながら分析しやすい形に変換できます。

変換・強化に関しては、Azure Data Factoryのアクティビティを組み合わせてワークフローを作成し自動化が可能です。

成功率・失敗率のモニタリング

Azure Data Factoryは、ワークフローの実行状況を詳細に監視し、成功率や失敗率を分析する機能を備えています。

各パイプラインやアクティビティを実行した日時、成功数、失敗数をリアルタイムで監視・把握できます。Azure Portal画面やPowerShellでAzure Monitorを表示し、それぞれの値の確認が可能です。

Azure Data Factoryのリアルタイム監視機能により、ワークフローの安定稼働を実現できるでしょう。モニタリングで異常が起きた場合は、アラートを設定し異常検知に役立てるといった使い方もできます。

Azure Data Factoryの料金体系・費用目安

Azure Data Factoryの料金体系・費用目安

Azure Data Factoryの料金体系は、Version1とVersion2があります。Data Factory は従量課金制となっているため、初期費用は発生しません。

まずは、Version1の料金を解説します。

 

低頻度アクティビティ

高頻度アクティビティ

クラウドで実行

0.48ドル/月

1.00ドル/月

オンプレミスで実行

1.20ドル/月

2.50ドル/月

1日1回以下の頻度で実行するアクティビティは低頻度アクティビティ、1日に2回以上実行するアクティビティを高頻度と分類します。また、1日に1回もアクティブにならなかった場合、アクティビティとパイプラインは、非アクティブとしてカウントされます。

上記表は、1カ月間全てアクティブな状態で稼働した場合の料金です。非アクティブなパイプラインについては、月額 0.80ドルです。また、スケジュールされたアクティビティが実行されないなど、アクティビティの再実行が必要な場合があります。クラウドでのアクティビティ再実行の場合は、1,000 回の再実行あたり 1.37ドルが発生します。

Version2は、Version1に加えてより多くのクラウドのデータ統合が可能です。基本的な料金については以下の表のとおりです。

アクティビティのタイプ

料金

オーケストレーション

1000実行で1ドル

データ移動アクティビティ

1DIU(※)を1時間かけて移動して0.25ドル

パイプライン アクティビティ

1時間あたり0.005ドル

外部パイプライン アクティビティ

1時間あたり0.00025ドル

※DIUは、データ統合の単位

Version2では、アクティビティの種類と実行時間によって料金が変わります。また、Data Flow、Data Factoryを扱う際に追加で料金が発生します。具体的な料金については下記の表のとおりです。

データフローの実行・デバッグ(大規模データを変換するときに使用する)

タイプ

料金

汎用

1時間あたり0.303ドル

最適化

1時間あたり0.365ドル

※1年継続、3年継続の割引プランも用意されています。

Data Factoryの操作

タイプ

料金

読み取り・書き取り(作成、読み取り、更新、削除)

50,000エンティティごとに0.50ドル

監視

50,000件ごとに0.25ドル

※2024年4月現在の金額

Azure Data FactoryのData Flow

Azure Data Factoryの特徴であるGUIを解説しましたが、具体的には「マッピングデータフロー」によって視覚的な表示と操作を実現します。マッピングデータフローを使うことによって、コードを使わずに、視覚的な操作によってデータ統合を進めることが可能です。

マッピングデータフローはAzure Data Factoryパイプラインのアクティビティとして実行され、フロー、制御、スケジュールの設定、監視機能などの運用を設計できます。実行は独自のクラスターで行われ、データ処理をするサーバー台数を増加させるスケールアウトで処理能力を高めます。Azure Data Factoryにおいてコードの翻訳、パスの最適化、ジョブの実行はすべて処理されます。

Data Flowの使い方

Data Flowを使い始めるためには、まず「Factory Resources」の下に配置された「+」でメニューを表示させ 「Data Flow」を選択します。選択すると、データフローキャンパスが表示されます。データフローキャンパスの画面は上から、上部バー、最も広い領域としてグラフ、構成パネルの3つに分かれています。

初めてData Flowを使用する場合は、ブラウザ上部の「Data Flow Debug」のスイッチを右側に切り替えてオンにします。この操作によって、対話型のデバッグ、データプレビュー、パイプラインのデバッグを実行するためのAzure Databricksクラスターが起動します。デバッグセッションの有効期限は、最後のデータプレビューもしくはデバッグパイプライン実行から最長60分間になります。

Azure Integration Runtime(IR)の初期値は、コア数4、ワーカーノード数1で、最小限のコストでデータプレビューを行い、短時間でデバッグパイプラインを実行する小規模クラスターの設定になっています。 大規模のデータを扱う場合には、Azure IRの構成を変更する必要があります。

画面中央部のグラフが視覚的にフローを作成する画面で、ソースデータの系列が表示されます。「Add Source」をクリックすることで、新しいデータソースを追加できます。既存のデータソースに新しい変換を追加する場合は、表示されているデータソースの右下にある「+」をクリックして表示されるメニューから選択します。

Azure Data Factoryの活用例

Azure Data Factoryの活用例

Azure Data Factoryを活用することで、部署ごとに場所も形式もバラバラで管理されていたデータの統合管理が可能です。Azure Data Factoryでデータの抽出や加工、分析を自動化できるため、各部署でのデータ管理の手間を省くことにも繋がります。

また、ノーコードでデータフローの実装ができるため、非エンジニアでもデータ変換の効率化を実現できます。Azure Data Factoryを導入することで、画面操作のみでデータ変換が可能です。

従来は、データ変換のためのコードを書いて実装していました。エラーが起きた場合のメンテナンスや管理の手間がかかっていましたが、これらの作業負担を減らすことができます。

まとめ

企業のデータ資産は増加傾向にありますが、ビッグデータを部門別に格納しただけで、実際にデータ統合および分析して、経営活動に生かしている企業は少ないのではないでしょうか。データ資産そのものに価値がありますが、ビッグデータを分析して経営に反映してこそ、大きな効果が生まれます。

Azure Data Factoryはコーディングによる操作だけでなく、視覚的なインターフェースを備えているため、さまざまなレベルのユーザーにデータ活用の統合フローを設計する機会をもたらします。

Microsoft Azureとは何か?入門から応用まで徹底解説

クラウドとは何か?Azureとは何か?導入のメリットや構成、コストに至るまでの基礎的な知識から、どのように活用すべきかまでを徹底的に解説しています。

Microsoft Azureとは何か?入門から応用まで徹底解説

ブログ記事を見る

  • fb-button
  • line-button
  • linkedin-button

無料メルマガ

関連記事

Azure Notebooksでプログラミング学習を!ノートブック機能の説明の概要
データ分析、データベース
Azure Functionsはサーバーレス、FaaSの時代を拓く
ハイブリッドクラウド
Azure Monitorとは?その基本と監視内容を解説
仮想デスクトップ
Azure DevOpsで開発と運用を連携させ、品質の向上を
アプリケーション開発・管理・運用
Azure Portal(Azureポータル)とは?メリットや料金体系・使い方を解説
アプリケーション開発・管理・運用
Azure Kinect DKのSDKと活用シーン
アプリケーション開発・管理・運用
Azure Stackによってオンプレミスで構築するクラウド
ハイブリッドクラウド
Azureを導入する際の流れと検討するべき3つのポイント
クラウド移行(インフラ・DB)
Azure Information Protectionでメールや文書を保護
セキュリティとガバナンス
Azure Web Appsでビジネスチャンスを迅速につかむ
アプリケーション開発・管理・運用
IoTとは?5分で概要からポイントを解説
クラウド移行(インフラ・DB)
Microsoft Intuneとは? 導入メリットやEMMを実現する3つの機能を解説
セキュリティとガバナンス
Azure Pipelinesとは?その概要、料金体系、そして構文サンプル
アプリケーション開発・管理・運用
Azure Storage Explorerとは?概要と使い方
クラウド移行(インフラ・DB)
Azure CLIとは?Azure PowerShellとの違いについても解説
クラウド移行(インフラ・DB)
Azure SQL Databaseで生産性向上と持続的な経営を
セキュリティとガバナンス
RELATED SITES

関連サイト

CONTACT

マイクロソフト関連ソリューションの掲載を
希望される企業様はこちら

TOP