(57)【要約】  一実施形態に係る情報処理装置は、複数の属性情報を含む分析データにおいて属性情報間の特徴量を算出する算出部と、所定のリソースを用いて分析データに対する分析タスクを実行する際の処理時間を、特徴量から予測する予測部とを備える。
2019059135.tif 000002
【特許請求の範囲】
【請求項１】
複数の属性情報を含む分析データにおいて前記属性情報間の特徴量を算出する算出部と、
所定のリソースを用いて前記分析データに対する分析タスクを実行する際の処理時間を、前記特徴量から予測する予測部とを備えることを特徴とする情報処理装置。
【請求項２】
所定の周期毎に、前記分析データが更新されるとともに前記分析タスクが実行され、
前記予測部は、過去の周期における前記特徴量と前記処理時間との関係性に基づいて、現在の周期における前記処理時間を予測することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記周期毎に、異なる複数の前記分析タスクが順次実行され、
前記予測部は、現在の周期において、実行済の前記分析タスクの前記処理時間に基づいて未実行の前記分析タスクの前記処理時間を予測することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記特徴量は共分散であり、前記処理時間は共分散に比例することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記分析タスクは、前記属性情報を用いた予測モデルを構築するための機械学習であることを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
予測された前記処理時間に基づいて、前記分析タスクを実行するためのリソースの量を制御する制御部を備えることを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記リソースは、ネットワーク上に配置された仮想インスタンスであることを特徴とする請求項６に記載の情報処理装置。
【請求項８】
請求項６または７に記載の情報処理装置と、
前記分析データを取得するとともに、前記リソースを用いて前記分析タスクを実行させる端末装置とを備えることを特徴とする情報処理システム。
【請求項９】
複数の属性情報を含む分析データにおいて前記属性情報間の特徴量を算出するステップと、
所定のリソースを用いて前記分析データに対する分析タスクを実行する際の処理時間を、前記特徴量から予測するステップとを備えることを特徴とする情報処理方法。
【請求項１０】
コンピュータに、
複数の属性情報を含む分析データにおいて前記属性情報間の特徴量を算出するステップと、
所定のリソースを用いて前記分析データに対する分析タスクを実行する際の処理時間を、前記特徴量から予測するステップとを実行させることを特徴とするプログラムが記録された記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム、情報処理方法および記録媒体に関する。
【背景技術】
【０００２】
昨今の分析技術として、小売業における商品需要予測などのビッグデータ分析が知られている。ビッグデータ分析では、例えばバスケット問題のように多くの属性間の相関関係を分析する必要があり、処理負荷が非常に高くなる。限られた時間内で分析処理を実行するために、クラウド上のリソースを利用した負荷分散処理が広く行われている。【０００３】
特許文献１には、複数のサービス（アプリケーション）間で余剰のリソースを配分することができるリソース配分方法が開示されている。このリソース配分方法では、個々のサービスに関し過去の稼動履歴を用いて負荷予測を行い、予測結果に応じて余剰のリソースを個々のサービスに割り当てる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−１４１６０５号公報
【発明の概要】
【０００５】
クラウド環境において分析処理を行う際には、処理にかかる時間、必要リソース量などの処理負荷が毎回一定にはならず大きく変動する可能性がある。このため、特許文献１のように過去の稼動履歴を用いて予測を行った場合、処理負荷を精度良く予測することは困難である。
【０００６】
本発明は、上述の問題に鑑みてなされたものであって、処理負荷を精度良く予測することが可能な情報処理装置、情報処理方法および記録媒体を提供することを目的とする。
【０００７】
本発明の一観点によれば、複数の属性情報を含む分析データにおいて前記属性情報間の特徴量を算出する算出部と、所定のリソースを用いて前記分析データに対する分析タスクを実行する際の処理時間を、前記特徴量から予測する予測部とを備えることを特徴とする情報処理装置が提供される。
【０００８】
本発明の他の観点によれば、複数の属性情報を含む分析データにおいて前記属性情報間の特徴量を算出するステップと、所定のリソースを用いて前記分析データに対する分析タスクを実行する際の処理時間を、前記特徴量から予測するステップとを備えることを特徴とする情報処理方法が提供される。
【０００９】
本発明の他の観点によれば、コンピュータに、複数の属性情報を含む分析データにおいて前記属性情報間の特徴量を算出するステップと、所定のリソースを用いて前記分析データに対する分析タスクを実行する際の処理時間を、前記特徴量から予測するステップとを実行させることを特徴とするプログラムが記録された記録媒体が提供される。
【００１０】
本発明によれば、処理負荷を精度良く予測することが可能な情報処理装置、情報処理方法および記録媒体が提供される。
【図面の簡単な説明】
【００１１】
【図１】第１実施形態に係る分析システムの全体構成を示すブロック図である。
【図２】第１実施形態に係るリソース最適化装置のハードウェア構成を示すブロック図である。
【図３】第１実施形態に係る売上データの一例である。
【図４】第１実施形態に係る分析タスクテーブルの一例である。
【図５】第１実施形態に係る分析システムの動作を表すフローチャートである。
【図６】第１実施形態に係る過去の処理結果の一例である。
【図７】第１実施形態に係るリソース最適化装置の動作を表すフローチャートである。
【図８】第１実施形態に係る処理時間係数の一例である。
【図９】第１実施形態に係る現在の処理結果の一例である。
【図１０】第２実施形態に係るリソース最適化装置の概略構成図である。
【発明を実施するための形態】
【００１２】
［第１実施形態］
図１は、第１実施形態に係る分析システムの全体構成を示すブロック図である。本実施形態に係る分析システムは、いわゆるビッグデータ分析を行うための情報処理システムである。以下、クラウド上のリソースを利用して、大量の分析処理をバッチ処理により毎日実行する例を説明する。分析システムは、分析クライアント１００、キュー１１０、ワーカインスタンス１２０、分析結果ＤＢ（Database）１３０、リソース最適化装置１４０を備える。リソース最適化装置１４０は、本発明による情報処理装置の一実施形態である。
【００１３】
分析クライアント１００は、例えばパーソナルコンピュータなどの端末装置であって、不図示のネットワークを介して店舗ＤＢ１５０と接続される。店舗ＤＢ１５０は、店舗毎に設けられたデータベースであって、その数は限定されない。店舗ＤＢ１５０は、例えば店舗の営業終了後に毎日更新される。分析クライアント１００は、毎日所定の時刻になるとデータ分析用のバッチ処理を実行する。
【００１４】
バッチ処理において、まず分析クライアント１００は、１または複数の店舗ＤＢ１５０から売上データを収集する。売上データには、店舗で販売されている各商品についての売上情報が含まれる。分析クライアント１００は、収集された売上データを分析するための複数の分析タスクを生成し、これらの分析タスクをキュー１１０に登録する。
【００１５】
キュー１１０は、分析クライアント１００と接続された記憶装置であって、分析クライアント１００からの分析タスクを一時的に記憶する。キュー１１０は、例えばＶＰＮ（Virtual  Private  Network）を介してクラウド環境に接続され、ＦＩＦＯ（First  In  First  Out）方式で分析タスクをワーカインスタンス１２０のいずれかに順次出力する。これにより、分析タスクは、ワーカインスタンス１２０により順次実行される。キュー１１０は、分析クライアント１００と一体に設けられていてもよく、またクラウド上に設けられていてもよい。
【００１６】
ワーカインスタンス１２０は、クラウド上に配置される仮想マシン（仮想インスタンス）であって、ＣＰＵ（Central  Processing  Unit）、メモリ、ストレージなどを仮想的に備える。ワーカインスタンス１２０は、売上データに対して分析タスクを実行し、これにより得られた分析結果を分析結果ＤＢ１３０に格納する。分析タスクは、例えば機械学習に関するタスクであって、売上データから抽出された学習データに基づいて、予測モデルを構築するための処理である。分析結果には、構築された予測モデルの他、分析タスクの処理に要した処理時間などが含まれる。
【００１７】
分析結果ＤＢ１３０は、例えばハードディスクなどの大容量の記憶装置であって、キュー１１０と同様にＶＰＮを介してクラウド環境に接続される。分析結果ＤＢ１３０には、ワーカインスタンス１２０からの分析結果、リソース最適化装置１４０で算出されたデータなどが蓄積される。分析結果ＤＢ１３０に蓄積されたデータは、分析クライアント１００により取得され得る。分析結果ＤＢ１３０は、分析クライアント１００と一体に設けられていてもよい。
【００１８】
リソース最適化装置１４０は、特徴量算出部１４１、性能算出部１４２、処理負荷予測部１４３、インスタンス制御部１４４を備える。特徴量算出部１４１は、キュー１１０に登録されている分析タスクに基づいて売上データに関する特徴量を算出する。特徴量は、例えば売上データに含まれる属性情報間の共分散、相関係数などであり得る。算出された特徴量は、分析結果ＤＢ１３０に格納される。
【００１９】
性能算出部１４２は、分析結果ＤＢ１３０から取得された特徴量と過去の処理時間に基づき、処理負荷を予測する際に用いられるパラメータとして、分析タスク毎に処理時間係数および性能係数を算出する。処理時間係数は、過去のバッチ処理において実際に得られた処理時間と特徴量との関係性を表す。特徴量として共分散を用いた場合、処理時間係数は、以下の式（１）により算出される。
【数１】
2019059135.tif 000003
ここで、添字のｉは分析実行日を表す。平均処理時間および平均共分散は、所定の期間（例えば直近の１ヶ月間など）における処理時間および共分散の平均をそれぞれ表す。
【００２０】
また、性能係数は、過去と比較した現在のワーカインスタンス１２０の処理性能を表し、過去の（すなわち前日までの）バッチ処理で得られた処理時間と、現在の（すなわち本日の）バッチ処理でこれまでに得られた処理時間との比較により推定される。具体的には、性能係数は、以下の式（２）により算出される。
【数２】
2019059135.tif 000004
ここで、ｎは、バッチ処理で生成される分析タスクの数を表し、実行済タスクは、ｎ個の分析タスクのうち、現在のバッチ処理において既に実行された分析タスクを表す。
【００２１】
処理負荷予測部１４３は、キュー１１０に残っている未実行の分析タスク（残タスク）のリストをキュー１１０から取得するとともに、性能算出部１４２から分析タスクごとの処理時間係数および性能係数を取得する。また、処理負荷予測部１４３は、性能算出部１４２を介してまたは直接に、分析結果ＤＢ１３０から分析タスクごとの過去の平均共分散および現在の共分散を取得する。処理負荷予測部１４３は、以下の式（３）、（４）を用いて、各残タスクの予測処理時間と、リストに含まれるすべての残タスクの合計の予測処理時間（予測合計処理時間）を算出する。
【数３】
2019059135.tif 000005
【数４】
2019059135.tif 000006
ここで、ｎは、残タスクの数を表す。
【００２２】
さらに、処理負荷予測部１４３は、以下の式（５）を用いて、バッチ処理の終了刻限までにすべての残タスクを実行するために必要となるワーカインスタンス１２０の数（必要インスタンス数）を算出する。
【数５】
2019059135.tif 000007
式（５）において、必要インスタンス数は整数値に切り上げられる。
【００２３】
インスタンス制御部１４４は、処理負荷予測部１４３から入力された必要インスタンス数に応じて、ワーカインスタンス１２０の数を調整する。例えば、インスタンス制御部１４４は、ワーカインスタンス１２０を管理するクラウド上のホストサーバに対してインスタンス作成要求および削除要求を送信することにより、ワーカインスタンス１２０の数を増減させることができる。
【００２４】
図２は、本実施形態に係るリソース最適化装置のハードウェア構成を示すブロック図である。リソース最適化装置１４０は、ＣＰＵ２０１、ＲＡＭ（Random  Access  Memory）２０２、ＲＯＭ（Read  Only  Memory）２０３、記憶装置２０４、通信Ｉ／Ｆ（Interface）２０５を備える。
【００２５】
ＣＰＵ２０１は、ＲＯＭ２０３、記憶装置２０４に記憶されたプログラムに従って所定の動作を行うとともに、リソース最適化装置１４０の各部を制御する機能を有する。また、ＣＰＵ２０１は、特徴量算出部１４１、性能算出部１４２、処理負荷予測部１４３、インスタンス制御部１４４の機能を実現するプログラムを実行する。
【００２６】
ＲＡＭ２０２は、揮発性メモリから構成され、ＣＰＵ２０１の動作に必要なメモリ領域を提供する。ＲＯＭ２０３は、不揮発性メモリから構成され、リソース最適化装置１４０を動作させるために必要なプログラム、データなどを記憶する。記憶装置２０４は、例えばフラッシュメモリ、ＳＳＤ（Solid  State  Drive）、ＨＤＤ（Hard  Disk  Drive）などである。
【００２７】
通信Ｉ／Ｆ（Interface）２０５は、イーサネット（登録商標）、Ｗｉ−Ｆｉ（登録商標）などの規格に基づくネットワークインターフェースであり、キュー１１０、ワーカインスタンス１２０、分析結果ＤＢ１３０などの外部装置との通信を行うためのモジュールである。
【００２８】
なお、図２に示されているハードウェア構成は例示であり、これら以外の装置が追加されていてもよく、一部の装置が設けられていなくてもよい。例えば、一部の機能がネットワークを介して他の装置により提供されてもよく、本実施形態を構成する機能が複数の装置に分散されて実現されるものであってもよい。
【００２９】
図３は、本実施形態に係る売上データの一例である。売上データ３００は、分析対象となる分析データであって、複数の属性３１０について属性情報３２０を含む。属性３１０としては、例えば店舗ＩＤ、商品ＩＤ、日付、最高気温、最低気温、販売数などが挙げられる。属性３１０として、曜日、降水量、日照時間、積雪量、湿度、雲量、気圧、地域などが用いられてもよい。
【００３０】
店舗ＩＤは、商品が販売される店舗の名称または識別番号である。商品ＩＤは、販売される商品の名称または識別番号である。日付は商品の販売日であり、最高気温および最低気温は、販売日における観測値である。販売数は、販売日に販売された商品の数である。なお、図３の例では、異なる日付の売上データが１つのテーブル内にまとめられているが、本実施形態のようにバッチ処理が毎日実行される場合には、日付ごとの売上データ３００が作成され得る。
【００３１】
図４は、本実施形態に係る分析タスクテーブルの一例である。分析タスクテーブル４００には、複数の分析タスク４１０がレコードとして定義されている。分析タスク４１０の数は、例えば１００００程度であり得る。各分析タスク４１０は、タスクＩＤ、データ抽出式、サンプル数、属性数のフィールドを有する。
【００３２】
タスクＩＤは、分析タスク４１０の名称または識別番号である。データ抽出式は、売上データ３００の中から分析対象となるデータ（レコード）を抽出するためのクエリであって、ＳＱＬ（Structured  Query  Language）などにより記述される。各分析タスク４１０のデータ抽出式は同様であって、店舗ＩＤと商品ＩＤごとに同一の属性データを抽出する。サンプル数は、データ抽出式により抽出されるレコードの数であり、属性数は、データ抽出式により抽出されるレコードに含まれる属性３１０の数である。属性数は、例えば１０以上であってもよく、また、分析タスク４１０ごとに異なっていてもよい。
【００３３】
図５は、本実施形態に係る分析システムの動作を表すフローチャートである。分析システムは、毎日開始時刻になるとバッチ処理を開始する。開始時刻は、例えば店舗の営業終了後の午後１０時である。まず、分析クライアント１００は、各店舗ＤＢ１５０から売上データ（図３参照）を取得する（ステップＳ５０１）。例えば、本日を６月８日とすると、６月８日の売上データが取得される。
【００３４】
続いて、分析クライアント１００は、取得された売上データに基づいて複数の分析タスクを生成する（ステップＳ５０２）。分析タスクは、分析タスクテーブル（図４参照）に定義されており、通常、毎日同一のものが生成される。生成された分析タスクは、分析クライアント１００からキュー１１０に送信される。
【００３５】
特徴量算出部１４１は、分析タスクに関する情報をキュー１１０から取得し、分析タスク毎に、分析対象となるデータの属性間の特徴量を算出する（ステップＳ５０３）。例えば、図３に示すような売上データ３００において、最高気温と最低気温の共分散を特徴量として算出する。算出された共分散は、分析結果に含められて分析結果ＤＢ１３０に格納される。
【００３６】
キュー１１０は、分析クライアント１００からの分析タスクを一時的に記憶するとともに、分析タスクの実行が完了したワーカインスタンス１２０、または新たに追加されたワーカインスタンス１２０に対して、分析タスクを１つずつ割り当てる（ステップＳ５０４）。ワーカインスタンス１２０の数は、終了刻限（例えば翌日の午前６時）までにすべての分析タスクが完了するように、リソース最適化装置１４０により適切に調整される。
【００３７】
ワーカインスタンス１２０は、割り当てられた分析タスクを実行し、売上データの分析結果を分析結果ＤＢ１３０に格納する（ステップＳ５０５）。分析結果には、図６に示すように、タスクＩＤ、分析日、共分散、処理時間、予測式が含まれ得る。なお、図６の例では、６月５日から６月７日までの予測式が同一であるが、これはあくまで例示であって、予測式は日付によって変化し得る。
【００３８】
タスクＩＤは、ワーカインスタンス１２０が実行した分析タスクの名称または識別番号である。分析日は、分析タスクが実行された日付である。共分散は、売上データにおける最高気温と最低気温から算出される特徴量である。処理時間は、分析タスクの実行に要した時間であって、例えば秒単位で表される。予測式は、売上データの属性間の関係を表す予測モデルであって、分析タスクを実行することにより得られる。予測式は、図６に示す単回帰式の他、複数の属性３１０を変数とする重回帰式などであり得る。
【００３９】
なお、本実施形態では、ワーカインスタンス１２０による分析タスクの実行過程において共分散が算出されるため、特徴量算出部１４１による特徴量算出処理（ステップＳ５０３）を省略することができる。
【００４０】
次に、キュー１１０は、残タスクがあるか否かを判断する（ステップＳ５０６）。すなわち、キュー１１０は、分析クライアント１００から受信された複数の分析タスクのうち、ワーカインスタンス１２０に割り当てられていない未実行の分析タスクがキュー１１０に残っているか否かを判断する。
【００４１】
残タスクがある場合（ステップＳ５０６でＹＥＳ）、キュー１１０は、ステップＳ５０４に戻り、残タスクをワーカインスタンス１２０に割り当てる。残タスクがない場合（ステップＳ５０６でＮＯ）、分析システムは、バッチ処理を終了する。
【００４２】
図７は、本実施形態に係るリソース最適化装置の動作を表すフローチャートである。バッチ処理が開始されると、特徴量算出部１４１は、分析結果ＤＢ１３０から図６に示すような過去の分析結果を取得する。例えば、本日が６月８日である場合、直近の３日間（すなわち６月５日から６月７日まで）の分析結果が取得される。ここで取得される分析結果の期間は限定されず、例えば１週間、１ヶ月、３ヶ月、半年、１年などであり得る。
【００４３】
特徴量算出部１４１は、過去の分析結果に基づき、上述の式（１）を用いて処理時間係数を算出する（ステップＳ７０１）。算出された処理時間係数の一例を図８に示す。例えば、図６の分析結果において６月５日から６月７日までの平均を取ると、タスクＡ＿Ａの平均処理時間は、（７５＋１００＋１２５）／３＝１００［秒］、タスクＡ＿Ａの平均共分散は、（５．２５＋６．２５＋７．２５）／３＝６．２５と算出される。よって、タスクＡ＿Ａの処理時間係数は、前日（６月７日）の共分散と処理時間を用いて、（１２５−１００）／（７．２５−６．２５）＝２５となる。他の分析タスクの処理時間係数についても同様に算出される。
【００４４】
性能算出部１４２は、一定時間ごとに分析結果ＤＢ１３０にアクセスし、現在のバッチ処理に関する分析結果が格納されている場合、当該分析結果を分析結果ＤＢ１３０から取得する。換言すれば、本日のバッチ処理において、現時点で既に実行済の分析タスクの分析結果が取得される。性能算出部１４２は、取得された処理時間と、特徴量算出部１４１で算出された平均処理時間に基づき、上述の式（２）を用いて性能係数を算出する（ステップＳ７０２）。すなわち、実行済の分析タスクごとに今回の処理時間と過去の平均処理時間との比率が算出され、実行済のすべての分析タスクについての該比率の平均値を性能係数とする。
【００４５】
例えば、本日（６月８日）のバッチ処理において図９に示すような分析結果がこれまでに得られているものとする。つまり、バッチ処理で実行される複数の分析タスクのうち、タスクＡ＿ＡとタスクＡ＿Ｂが実行済であるものとする。この場合、性能係数は、以下のように算出される。
【数６】
2019059135.tif 000008
【００４６】
処理負荷予測部１４３は、性能算出部１４２から得られた各分析タスクの平均処理時間および性能係数と、特徴量算出部１４１から得られた残タスクに関する共分散に基づいて、残タスクの実行にかかる合計の処理時間を予測する（ステップＳ７０３）。合計の処理時間は、上述の式（３）、（４）を用いて予測される。
【００４７】
例えば、説明を簡単にするために、残タスクには、タスクＡ＿ＣとタスクＡ＿Ｄのみが含まれるものとし、これらの分析タスクに関して特徴量算出部１４１で算出された共分散をいずれも１０とする。この場合、タスクＡ＿Ｃの予想処理時間は、｛３００＋（１０−１５）×１０｝×１．２＝３００［秒］、タスクＡ＿Ｄの予想処理時間は、｛４００＋（１０−１０）×１５｝×１．２＝４８０［秒］と算出される。よって、予想合計処理時間は、３００＋４８０＝７８０［秒］となる。
【００４８】
続いて、処理負荷予測部１４３は、算出された予想合計処理時間と現在の時刻とに基づき、上述の式（５）を用いて、必要インスタンス数を算出する（ステップＳ７０４）。例えば、現在の時刻から終了刻限までの時間が１００秒であり、予想合計処理時間が上述のように７８０秒であるものとすると、必要インスタンス数は、７８０／１００＝７．８の結果を整数値に切り上げて、８［個］となる。
【００４９】
インスタンス制御部１４４は、現在配置されているワーカインスタンス１２０の数（現在数）を、処理負荷予測部１４３から得られた必要インスタンス数（必要数）と比較する（ステップＳ７０５、Ｓ７０７）。現在数が必要数よりも多い場合（ステップＳ７０５でＹＥＳ）、すなわちワーカインスタンス１２０の数が余剰である場合には、インスタンス制御部１４４は、ワーカインスタンス１２０を必要数に応じて削減する（ステップＳ７０６）。
【００５０】
現在数が必要数よりも少ない場合（ステップＳ７０５でＮＯかつステップＳ７０７でＹＥＳ）、すなわちワーカインスタンス１２０の数が不足している場合には、インスタンス制御部１４４は、ワーカインスタンス１２０を必要数に応じて追加する（ステップＳ７０８）。現在数と必要数が同一である場合（ステップＳ７０５でＮＯかつステップＳ７０７でＮＯ）、インスタンス制御部１４４は、ワーカインスタンス１２０の数を調整しない。
【００５１】
処理負荷予測部１４３は、キュー１１０から取得された残タスクリストに基づいて、キュー１１０内に残タスクがあるか否かを判断する（ステップＳ７０９）。残タスクがある場合（ステップＳ７０９でＹＥＳ）、性能係数算出処理（ステップＳ７０２）以降の処理が繰り返される。残タスクがない場合（ステップＳ７０９でＮＯ）、リソース最適化装置１４０は、処理を終了する。
【００５２】
このように本実施形態では、分析データに含まれる属性についての特徴量を算出し、特徴量と実際の処理時間との関係性に基づいて、特徴量から処理時間を予測する。一般に、機械学習においては分析データの属性間の相関はＮＰ（Non-deterministic  Polynomial  time）問題であり、データ量から分析にかかる処理負荷を予測することは困難である。これに対し、本実施形態によれば、特徴量を用いることで処理負荷を精度良く予測することが可能となる。
【００５３】
また、本実施形態では、属性の数が分析データのデータ数に対して非常に少ないことから、特徴量の算出にかかる計算量が抑制され、処理負荷の予測を効率良く行うことが可能となる。さらに、処理負荷の予測結果に基づいて動的にリソースを最適化するように分析システムを構成することにより、限られた時間内に最小限のリソース量で分析処理を完了することが可能となる。
【００５４】
［第２実施形態］
図１０は、第２実施形態に係る情報処理装置の概略構成図である。情報処理装置１０００は、算出部１００１、予測部１００２を備える。算出部１００１は、複数の属性情報を含む分析データにおいて属性情報間の特徴量を算出する。予測部１００２は、所定のリソースを用いて分析データに対する分析タスクを実行する際の処理時間を特徴量から予測する。
【００５５】
［変形実施形態］
本発明は、上述の実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲において適宜変更可能である。例えば、特徴量と処理時間との関係性を表す式は、上述の式（１）に限られない。該関係性を、処理時間が属性間の相関係数の絶対値に反比例する式として表すことも可能である。また、特徴量として異なる属性間についての複数種類の共分散を組み合せて用いることも可能である。
【００５６】
また、上述の実施形態では、バッチ処理が日次実行されるものとしたが、バッチ処理は周期的に実行されるものであればよい。すなわち、ヒストリカルに取得される同様の形式の分析データに対して、同様の分析タスクを繰り返し実行するものであればよい。
【００５７】
また、上述の実施形態では、ワーカインスタンス１２０の性能を同一とし、予測された処理時間に応じてワーカインスタンス１２０の数が制御されていた。これに代えて、ワーカインスタンス１２０の数を一定とし、ワーカインスタンス１２０のＣＰＵの性能、メモリサイズ、ストレージサイズなどが調整されてもよい。
【００５８】
上述の実施形態の機能を実現するように該実施形態の構成を動作させるプログラム（より具体的には、図５、７に示す処理をコンピュータに実行させるプログラム）を記録媒体に記録させ、該記録媒体に記録されたプログラムをコードとして読み出し、コンピュータにおいて実行する処理方法も各実施形態の範疇に含まれる。すなわち、コンピュータ読取可能な記録媒体も各実施形態の範囲に含まれる。また、上述のプログラムが記録された記録媒体はもちろん、そのプログラム自体も各実施形態に含まれる。
【００５９】
該記録媒体としては例えばフロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、磁気テープ、不揮発性メモリカード、ＲＯＭを用いることができる。また該記録媒体に記録されたプログラム単体で処理を実行しているものに限らず、他のソフトウェア、拡張ボードの機能と共同して、ＯＳ上で動作して処理を実行するものも各実施形態の範疇に含まれる。
【００６０】
上述の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。
【００６１】
（付記１）
複数の属性情報を含む分析データにおいて前記属性情報間の特徴量を算出する算出部と、
所定のリソースを用いて前記分析データに対する分析タスクを実行する際の処理時間を、前記特徴量から予測する予測部とを備えることを特徴とする情報処理装置。
【００６２】
（付記２）
所定の周期毎に、前記分析データが更新されるとともに前記分析タスクが実行され、
前記予測部は、過去の周期における前記特徴量と前記処理時間との関係性に基づいて、現在の周期における前記処理時間を予測することを特徴とする付記１に記載の情報処理装置。
【００６３】
（付記３）
前記周期毎に、異なる複数の前記分析タスクが順次実行され、
前記予測部は、現在の周期において、実行済の前記分析タスクの処理時間に基づいて未実行の前記分析タスクの処理時間を予測することを特徴とする付記２に記載の情報処理装置。
【００６４】
（付記４）
前記特徴量は共分散であり、前記処理時間は共分散に比例することを特徴とする付記３に記載の情報処理装置。
【００６５】
（付記５）
前記分析タスクは、前記属性情報を用いた予測モデルを構築するための機械学習であることを特徴とする付記１乃至４のいずれかに記載の情報処理装置。
【００６６】
（付記６）
予測された前記処理時間に基づいて、前記分析タスクを実行するためのリソースの量を制御する制御部を備えることを特徴とする付記１乃至５のいずれかに記載の情報処理装置。
【００６７】
（付記７）
前記リソースは、ネットワーク上に配置された仮想インスタンスであることを特徴とする付記６に記載の情報処理装置。
【００６８】
（付記８）
付記６または７に記載の情報処理装置と、
前記分析データを取得するとともに、前記リソースを用いて前記分析タスクを実行させる端末装置とを備えることを特徴とする情報処理システム。
【００６９】
（付記９）
複数の属性情報を含む分析データにおいて前記属性情報間の特徴量を算出するステップと、
所定のリソースを用いて前記分析データに対する分析タスクを実行する際の処理時間を、前記特徴量から予測するステップとを備えることを特徴とする情報処理方法。
【００７０】
（付記１０）
コンピュータに、
複数の属性情報を含む分析データにおいて前記属性情報間の特徴量を算出するステップと、
所定のリソースを用いて前記分析データに対する分析タスクを実行する際の処理時間を、前記特徴量から予測するステップとを実行させることを特徴とするプログラムが記録された記録媒体。
【００７１】
この出願は、２０１７年９月２０日に出願された日本出願特願２０１７−１７９９６０を基礎とする優先権を主張し、その開示のすべてをここに取り込む。
【図１】
2019059135.tif 000009
【図２】
2019059135.tif 000010
【図３】
2019059135.tif 000011
【図４】
2019059135.tif 000012
【図５】
2019059135.tif 000013
【図６】
2019059135.tif 000014
【図７】
2019059135.tif 000015
【図８】
2019059135.tif 000016
【図９】
2019059135.tif 000017
【図１０】
2019059135.tif 000018
【手続補正書】
【提出日】令和1年12月11日(2019.12.11)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の属性情報を含む分析データにおいて前記属性情報間の特徴量を算出する算出部と、
所定のリソースを用いて前記分析データに対する分析タスクを実行する際の処理時間を、前記特徴量から予測する予測部とを備えることを特徴とする情報処理装置。
【請求項２】
所定の周期毎に、前記分析データが更新されるとともに前記分析タスクが実行され、
前記予測部は、過去の周期における前記特徴量と前記処理時間との関係性に基づいて、現在の周期における前記処理時間を予測することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記周期毎に、異なる複数の前記分析タスクが順次実行され、
前記予測部は、現在の周期において、実行済の前記分析タスクの前記処理時間に基づいて未実行の前記分析タスクの前記処理時間を予測することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記特徴量は共分散であり、前記処理時間は共分散に比例することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記分析タスクは、前記属性情報を用いた予測モデルを構築するための機械学習であることを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
予測された前記処理時間に基づいて、前記分析タスクを実行するためのリソースの量を制御する制御部を備えることを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記リソースは、ネットワーク上に配置された仮想インスタンスであることを特徴とする請求項６に記載の情報処理装置。
【請求項８】
請求項６または７に記載の情報処理装置と、
前記分析データを取得するとともに、前記リソースを用いて前記分析タスクを実行させる端末装置とを備えることを特徴とする情報処理システム。
【請求項９】
複数の属性情報を含む分析データにおいて前記属性情報間の特徴量を算出するステップと、
所定のリソースを用いて前記分析データに対する分析タスクを実行する際の処理時間を、前記特徴量から予測するステップとを備えることを特徴とする情報処理方法。
【請求項１０】
コンピュータに、
複数の属性情報を含む分析データにおいて前記属性情報間の特徴量を算出するステップと、
所定のリソースを用いて前記分析データに対する分析タスクを実行する際の処理時間を、前記特徴量から予測するステップとを実行させることを特徴とするプログラム。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００１
【補正方法】変更
【補正の内容】
【０００１】
本発明は、情報処理装置、情報処理システム、情報処理方法およびプログラムに関する。
【国際調査報告】
2019059135.tif 000019
2019059135.tif 000020
2019059135.tif 000021
2019059135.tif 000022