データ分析時に必要な処理作業を省力化
「Azure Data Factory」

前回は、ベンダー側に基盤管理を委託するクラウドサービスの利用にあたって、データの可用性とそれを格納するシステムの冗長性を担保する「Azure Storage」と「Azure SQL Database」を活用することによるメリットを解説した。基盤の運用面を押さえたら、その基盤を活用してビジネスで発生する大規模なデータをどのように活用していくかが重要となる。そうしたデータ自体の処理や分析をサポートするソリューション「Azure Data Factory」を紹介する。

ローコードでデータを処理

日本マイクロソフト
パートナー事業本部
クラウド ソリューション アーキテクト
西村栄次 氏

 企業における経営課題の把握や将来予測のためのデータ分析の重要性は年々増しており、購買、生産、顧客管理などを行う基幹システム内のデータの活用が求められている。一方で基幹システムのデータベース内の膨大なデータを適切に格納・集積し、分析に必要な要素を抽出可能な体制を構築できている企業は少ない。そうした場合にデータベースなどに蓄積されたデータから必要なものを抽出(Extract)し、目的に応じて変換(Transform)し、データに適したシステムに格納(Load)するETLツールが活用できるが、クラウド上のデータを扱うにあたりオンプレミス形態で提供しているツールを選ぶと連携や接続に手間取る可能性が高い。パブリッククラウド上でスムーズにアクセスしてデータ処理を行えるPaaSのETLソリューション「Azure Data Factory」なら、接続に手間取らずデータ処理を行える。

 日本マイクロソフト パートナー事業本部 クラウド ソリューション アーキテクトの西村栄次氏はAzure Data Factoryの位置付けや強みをこう語る。「Azure Data Factoryは、ETLソリューションというより膨大で複雑なデータの処理を省力化、自動化するオーケストレーションツールの位置付けになります。元々のデータ格納用のファイルやデータベースからデータを取得して加工を行い、それを統合した形でデータベースに入れたりファイルを作成したりという処理が可能です。Azure Data Factoryでは、大枠として四つの定義付けを行います。一つ目はデータの複数の処理タスクの論理的な枠組み『PIPELINE』を設定します。二つ目に各データベースとファイルの接続先情報や資格情報を『LINKED SERVICE』で設定し、三つ目は入出力に使われるデータの構造を『DATA SET』の項目で定義します。四つ目でデータに対して実行する処理タスクとして『ACTIVITY』を割り当てれば処理の完了です。そのため、一つ一つプログラムをコーディングする作業はありません。例えば、単純なコピーであれば、データソースとしてNoSQLデータベースサービス『Azure Cosmos DB』などを参照して、出力先となるファイルなどを選択して、データをどうマッピングするかを定義することでコピーが行えます。データの変換がしたい場合には『マッピングデータフロー』機能が有効です。先ほどの定義付けに従ってGUIでの設定ができ、多様なファイルを最適な形式に変換したり、データベースの中のある値をほかの値と結合したりをローコードかつ直感的な操作で行えます」

Azureや他社ツールと柔軟に連携

 Azure Data Factoryは、豊富なソリューションとの連携で複雑なビジネスロジックの構成を実現すると西村氏は話す。

「Azure Data Factory単体はETLツールですので、複雑なビジネスロジックを組むのは少々難しいです。そういう場合は、サーバーレスアプリケーション『Azure Functions』や、負荷の高い処理に対して並列処理が可能な『Azure Batch』などと併用することで処理できます。大量のデータを扱う処理が可能な『Azure Databricks』を併用すれば一定量、一定期間の集計データを一括処理する『バッチ処理』や高度な分析処理にも対応します。Azureのほかのサービスと連携させることで、Azure Data Factoryはオーケストレーションの強みをさらに発揮できるのです。元々、組み込みコネクタを90個以上持っていますので、Azure内だけではなく他社のクラウドサービスやストレージとの親和性も高いです。実際に、新規接続でLINKED SERVICEの設定画面を開いてみると、AWSのRDBサービス『Amazon RDS for SQL』やストレージサービス『Amazon S3』のほか、データベース、CRM系の製品とも連携できる機能を標準で提供しています。すでにストレージやデータベースを導入している場合も、データの最適化に有効なツールです」

接続性と汎用性の高いETL

 他社製品と比較した際のAzure Data Factoryの優位点を、西村氏は次のように説明する。「他社製品の場合、ETLサービスを仮想マシン上で動かすケースが多いかと思います。Azure Data Factoryは、Azure標準のPaaSとして提供していますので仮想マシンを用意する必要はありません。データベース内のデータコピーや抽出作業の基盤としてスムーズにアクセスできます」

 データ分析や処理作業が必要な企業に対して、Azure Data Factoryではどのような提案が可能なのか。西村氏は、「分析系のシステムの作業の大部分はETLによるデータの加工です。定義付けによって短時間で処理作業が可能なAzure Data Factoryはコーディング不要で手軽に活用できます。データベースを作るときにデータの移動は必ず発生するので、データを扱う業務要件であれば業種業態を問わず利用可能です。データウェアハウスとビッグデータ分析機能を統合した分析プラットフォーム『Azure Synapse Analytics』にもAzure Data Factoryが包含されていて、複雑なデータ分析処理に対応します。導入事例のメインは、大量のデータを取り扱うデータウェアハウスの基盤開発に使われるケースが多く見られます。製薬会社や小売業、製造業、金融業などのETLとして使われています。AIに限らず『Business Intelligence』(BI)領域、WebサイトのシステムなどでもAzure Data Factoryが使われています。バッチ処理やファイルをコピーするときのインターフェースとしてはかなり有効です。大量のデータの抽出や集計作業を包括的にサポートします」と有用性を語った。