Azure Managed Service Column <Azure運用コラム>

Azure Data Factoryとは?企業のさまざまなデータをクラウドで統合管理する方法を解説

Category: 入門編

2022.04.05

データ活用とは?イノベーティブなビジネスを創発するための方法を解説

IT の進化により、ビジネスで利用するシステムの形態は多様化しています。それにより、システムが扱うデータも多様化し、システム毎にデータの形式が異なる、データの格納場所も分散化するなど、データ活用が困難となっている例も増えています。

データを効果的に分析・活用するには、膨大なデータを一元管理して蓄積する必要があります。Azure が提供する ETL/ELT のためのソリューション、Azure Data Factory では、オンプレミス・クラウドを問わずさまざまなデータを統合して一元管理することができます。

本記事では、ETL/ELT の目的と Azure Data Factory の概要、料金体系、主な機能について解説します。

1. ETL(ELT)とは

ETL、ELT という言葉が耳慣れないという人も多いかもしれませんが、ETL と ELT は共にデータ活用を理解する上で重要な仕組みです。まず、ETL・ELT の概要と必要性について解説します。

1.1 ETL(ELT)とは

ETL( Extract/Transform/Load )、ELT( Extract/Load/Transform )は共に、リモートのデータソースからデータを収集し統合するアプローチの中で発生する、下記プロセスの頭文字をとったものです。

  • Extract(抽出)
  • Transform(変換・加工)
  • Load(ロード)

ETL と ELT は主にビジネス・インテリジェンス( BI )やビジネス・アナリティクス( BA )を行うために作成されるデータウェアハウスやデータレイクを構築する時に発生するプロセスとして知られています。

企業に散らばって配置されているさまざまな形式のデータを収集、変換・加工を行い、一元管理するためにデータウェアハウスやデータレイクにロードしてデータ統合を行う仕組みです。

1.2 ETL と ELT の違い

データレイクやデータウェアハウスを構築するプロセスには2通りあり、それぞれ ETL と ELT と呼ばれています。

ETL( Extract/Transform/Load )とは

ETL は、抽出、変換・加工、ロードの順序でデータ統合を行うアプローチです。 リモートのデータソースから情報を取得( Extract )し、定義されたフォーマットや文字コード等に変換・加工( Transform )を行い、データベースやデータウェアハウスにロード( Load )する順序でデータ統合を行います。データの変換・加工はターゲットのデータウェアハウスの外で行われます。ロード前にデータの構造化を行うため、分析や解析するために適した形式のデータを蓄積するデータウェアハウス向けのアプローチと言えます。

ELT( Extract/Load/Transform )とは

ELT は、抽出、ロード、変換・加工の順序でデータ統合を行うアプローチです。 ETL と同様にリモートのデータソースから情報を取得( Extract )しますが、データの変換・加工を行わずそのままデータベース・データウェアハウスへのロード( Load )を行います。ロード後にターゲットのデータベース内でデータの変換・加工( Transform )を行う点が ETL との違いであり、非構造データをそのままロードするため、加工していない生データを蓄積するデータレイク向けのアプローチと言えます。

ETL( ELT )の必要性

社内に点在する情報(データ)を有効活用し、経営に役立つ洞察を得るために、必要な情報(データ)を 1 箇所に集約し蓄積する必要があります。ETL や ELT はそのためのデータ収集と統合の役割を担うアプローチです。

社内に点在するデータソースからデータを抽出・蓄積するためにはデータの種類に応じたプログラムを製造する必要があり、専門知識や膨大な開発工数を必要となります。そうした課題を解決するのが ETL( ELT )ツールです。ETL( ELT )ツールを使用することでプログラミングスキルや専門知識が不要で効率的にデータ統合が可能となります。

2. Azure Data Factory とは

次に、Microsoft Azure が提供するETL( ELT )のためのサービス、Azure Data Factory の概要、料金体系について解説します。

2.1 Azure Data Factory の概要

Azure Data Factory とは、Azure が提供するデータ統合のためのプラットフォームです。ETL、ELTの機能に加え、CI/CD(継続的インテグレーション/デリバリー)のための機能や、モニタリング機能など豊富な機能を揃えています。

また、クラウドのデータ結合だけでなく、オンプレミスとクラウド、SaaS を併用するハイブリッド環境でもデータ統合が可能です。データ統合の専門知識やプログラミングスキルがなくても、ハイブリッド環境それぞれのデータの一元管理や、データの変換、管理画面の設定・管理などを視覚的なGUI操作で簡単に操作を行うことが可能です。

2.2 Azure Data Factory の料金体系

Azure Data Factory の料金体系は、利用した分だけ課金される従量課金制となっています。アクティビティ(データに対する処理)と、パイプライン(アクティビティをある目的のためにグルーピングしたもの)の実行時間に応じて課金が行われます。

3. Azure Data Factory の主な機能

Azure Data Factory は、さまざまな環境のデータを一元的に統合するために多くの機能を備えています。ここでは、Azure Data Factory が備えている下記の機能について解説します。

  • 接続
  • データの収集
  • データの変換・強化
  • CI/CD と公開
  • モニタリング

3.1 接続

Azure Data Factory は、オンプレミスやクラウド、SaaS が持つデータベース、ファイル共有、FTP Web サービスなど、プラットフォームを問わずさまざまなデータソース(データの収集元)に接続することが可能です。

3.2 データの収集

データソースに接続した後、データの収集を行います。オンプレミスとクラウドの両方のデータソースから、Azure 内のデータストアにデータを移動することが可能です。収集の際はAzure のさまざまなサービスとの連携が可能です。例えば、Azure Data Lake Storage でデータを収集し、Azure Blob Storage へ移動・格納し、後で Azure HDInsight Hadoop クラスターを使用してデータを変換するといった処理や連携も可能です。

3.3 データの変換・強化

Azure 内のデータストアにデータが集まったら、収集されたデータの変換処理を行います。この変換処理により、統一的なデータフォーマットに変換され、グラフなどで可視化することができるようになります。Azure Data Factory は Apache Spark の技術を応用していますが、Spark クラスターや Spark プログラミングの知識がなくても、データフローを使用して、簡単に Spark 上で実行されるデータ変換グラフを作成することができます。

3.4 CI/CD と公開

Azure Data Factory は、Azure DevOps と GitHub を使用して、CI/CD(継続的インティグレーション/継続的デリバリー)環境を構築することができます。ETL プロセスの開発とデリバリーを段階的に進めたうえで、完成した製品を公開することが可能です。

3.5 モニタリング

モニタリングとは、Azure Data Factory でアクティビティやパイプラインを構築・運用する際、状況を監視する機能です。アクティビティやパイプラインを監視することで、データ統合の成功率や失敗率を確認することができます。

4. まとめ

企業がイノベーティブなビジネスを創発するには、これまでの企業活動により生まれたデータを効果的に分析・活用することが必要です。そのために膨大なデータを一元管理して蓄積し、視覚的に見やすくするために ETL や ELT の技術が重要となります。Azure のサービスを活用すると、専門知識やプログラミングスキルがなくてもデータ活用が可能となります。企業のビジネス変革のために導入を検討してみてはいかがでしょうか。

Free

資料ダウンロード

課題解決に役立つ詳しいサービス資料はこちら

資料ダウンロード
  • Azure導入支援・構築・運用サービス総合カタログ

    Microsoft Azure サービスの導入検討・PoC、設計、構築、運用までを一貫してご支援いたします。
    Azure導入・運用時のよくあるお悩み、お悩みを解決するためのアールワークスのご支援内容・方法、ご支援例などをご確認いただけます。

Azure導入個別相談会(無料)

Tag: Azure Data Factory ビッグデータ

Contactお問い合わせ

お見積もり・ご相談など、お気軽にお問い合わせください。

single.php