JP6799501B2 - 計算機システム及びデータの分析方法 - Google Patents

計算機システム及びデータの分析方法 Download PDF

Info

Publication number
JP6799501B2
JP6799501B2 JP2017111514A JP2017111514A JP6799501B2 JP 6799501 B2 JP6799501 B2 JP 6799501B2 JP 2017111514 A JP2017111514 A JP 2017111514A JP 2017111514 A JP2017111514 A JP 2017111514A JP 6799501 B2 JP6799501 B2 JP 6799501B2
Authority
JP
Japan
Prior art keywords
data
analysis
capture
computer
instance
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017111514A
Other languages
English (en)
Other versions
JP2018206114A (ja
Inventor
健 杉本
健 杉本
芳樹 松浦
芳樹 松浦
慧 谷本
慧 谷本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2017111514A priority Critical patent/JP6799501B2/ja
Priority to PCT/JP2018/015983 priority patent/WO2018225389A1/ja
Priority to US16/495,761 priority patent/US11314752B2/en
Publication of JP2018206114A publication Critical patent/JP2018206114A/ja
Application granted granted Critical
Publication of JP6799501B2 publication Critical patent/JP6799501B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/215Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2465Query processing support for facilitating data mining operations in structured databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3404Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for parallel or distributed programming

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computational Linguistics (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、データを読み込んで分析を実施する計算機システムに関する。
ユーザの計算機システムで蓄積したデータをデータセンタに転送し、分析処理を行って問題点の抽出や故障の予兆を検出する分析基盤が普及しつつある。分析基盤を提供するデータセンタでは、分析処理やデータの可視化ツールなどをユーザに提供し、ユーザが転送したデータについて処理を行う。このような、分析基盤としては、データベースから抽出したデータを可視化して対話的にデータ分析を行うサービスが知られている(例えば、特許文献1)。
分析基盤を利用するユーザは、分析対象のデータを決定して、転送が必要なデータを分析基盤へ転送する。ユーザの計算機システムから分析基盤へのデータ転送が完了すると、ユーザは分析基盤に対して分析開始の指示を行っていた。
国際公開第2015/193973号 特開2016−91555号公報
前記従来例では、ユーザが分析対象のデータを決定して、分析に必要なデータを転送し、転送が完了してから分析の指令を行っていた。このため、データの転送が完了するまでは、分析の指令を行うことができないという問題があった。
大量のデータを分析する場合、例えば、データの転送に数十時間を要する場合では、転送の終了を確認するのに手間がかかる。データの転送時間を予測する手法は知られているが(例えば、特許文献2)、ネットワークの状態などによって予測通りに転送が終了するとは限らない。
また、前記従来例では、データの転送完了が深夜になる場合、分析開始の指示は翌朝になり、分析処理に数十時間を要する場合では、分析処理を効率よく行うことができない、という問題があった。
そこで、本発明は上記問題点に鑑みてなされたもので、大量のデータを取得して分析を行う際の作業の効率を向上させることを目的とする。
本発明は、プロセッサとメモリとストレージを有してデータを蓄積する第1の計算機と、プロセッサとメモリとストレージを有して前記第1の計算機に蓄積されたデータを分析する第2の計算機とを含む計算機システムであって、前記第2の計算機は、分析対象毎に、分析対象となるデータ項目と、繰り返し単位が予め定義された分析最小データセットと、前記データの取得処理と分析処理を管理するエージェントと、を有し、前記エージェントは、分析に使用する前記分析最小データセットと、データの取得を繰り返す範囲と、データの取得を繰り返す単位と、を含む分析対象データ取り込み指定を受け付けて、当該分析対象データ取り込み指定に含まれる繰り返しの範囲と繰り返しの単位に基づいて、前記第1の計算機からデータを取得する第1のプロセス及び第1のプロセス内で処理を実行する第1のインスタンスを生成し、当該第1のインスタンスを起動して前記第1の計算機から前記蓄積されたデータを取得し、前記エージェントは、前記第1のインスタンスの処理が完了すると、取得したデータに対して分析処理を実行する第2のプロセス及び第2のプロセス内で処理を実行する第2のインスタンスを生成し、当該第2のインスタンスを起動して分析処理を実行させる。
したがって、本発明によれば、大量のデータを取得して分析する場合に、計算機のユーザは、データの取り込み完了等のタイミングを気にする必要がなくなって、大量のデータを取得して分析を行う際の作業の効率を大幅に向上させることが可能となるのである。
本発明の実施例1を示し、本発明の計算機システムのハードウェア構成の一例を示すブロック図である。 本発明の実施例1を示し、本発明の計算機システムの機能の一例を示すブロック図である。 本発明の実施例1を示し、分析サーバのソフトウェア資源の一例を示すブロック図である。 本発明の実施例1を示し、分析最小データセットの一例を示す図である。 本発明の実施例1を示し、分析対象データ絞り込み指定の一例を示す図である。 本発明の実施例1を示し、取り込み済みデータのメタデータの一例を示す図である。 本発明の実施例1を示し、取り込み済みデータのアクセス順リストの一例を示す図である。 本発明の実施例1を示し、データ取り込み指示キューの一例を示す図である。 本発明の実施例1を示し、データ分析指示キューの一例を示す図である。 本発明の実施例1を示し、データ廃棄指示キューの一例を示す図である。 本発明の実施例1を示し、制御情報の一例を示す図である。 本発明の実施例1を示し、分析サーバで行われる処理の一例を示すフローチャートである。 本発明の実施例1を示し、分析サーバのデータ取り込み処理の一例を示すフローチャートである。 本発明の実施例1を示し、分析データアクセスI/Fの生成処理の一例を示すフローチャートである。 本発明の実施例1を示し、取り込み対象データの決定処理の一例を示すフローチャートである。 本発明の実施例1を示し、データ取り込みインスタンスの生成処理の一例を示すフローチャートである。 本発明の実施例1を示し、データ取り込みインスタンスの終了判定処理の一例を示すフローチャートである。 本発明の実施例1を示し、データ分析処理の一例を示すフローチャートである。 本発明の実施例1を示し、データ分析プロセスの終了判定処理の一例を示すフローチャートである。 本発明の実施例1を示し、取り込みプロセス内並列度の更新処理の一例を示すフローチャートである。 本発明の実施例1を示し、分析並列度の更新処理の一例を示すフローチャートである。 本発明の実施例1を示し、初期化処理の一例を示すフローチャートである。 本発明の実施例1を示し、データ破棄処理の一例を示すフローチャートである。 本発明の実施例1を示し、データの取り込みから分析完了までの一例を示す図である。 本発明の実施例2を示し、本発明の計算機システムの機能の一例を示すブロック図である。
以下、本発明の実施形態を添付図面に基づいて説明する。
図1は、本発明の実施例1を示し、計算機システムのハードウェア構成の一例を示すブロック図である。計算機システムは、センサ4からセンサデータを収集するデータ収集サーバ2と、データの分析サービスを分析基盤を提供する分析サーバ1と、データ収集サーバ2と分析サーバ1を接続するネットワーク3を含む。
分析サーバ1は、演算処理を行うCPU11と、プログラムやデータを保持するメモリ12と、データやプログラムを格納するストレージ15と、ストレージ15にアクセスするためのディスクI/F14と、ネットワーク3にアクセスするためのネットワークI/F13とを含む計算機である。
データ収集サーバ2は、演算処理を行うCPU21と、プログラムやデータを保持するメモリ22と、データやプログラムを格納するストレージ25と、ストレージ25にアクセスするためのディスクI/F24と、ネットワーク3にアクセスするためのネットワークI/F23と、複数のセンサ4にアクセスするためのネットワークI/F26を含む計算機である。
なお、分析サーバ1とデータ収集サーバ2は、図示しない入力装置(マウスやキーボード等)と出力装置(ディスプレイ等)を有する。
<システム概要>
図2は、計算機システムの機能の一例を示すブロック図である。データ収集サーバ2は、センサ4から収集したセンサデータ250をストレージ15に蓄積する。データ収集サーバ2のデータ収集は、継続的に実行される。
データ収集サーバ2のユーザは、分析サーバ1を利用するための情報を分析対象データ取り込み指定210として設定し、データ収集サーバ2が分析対象データ取り込み指定210と分析開始の指令を分析サーバ1へ送信する。
なお、後述するように、分析対象データ取り込み指定210には、利用する分析ロジック(またはサービス)の名称や、分析対象とするセンサデータ250(以下、分析対象データ)の範囲や、データ収集サーバ2のストレージ25に格納された分析対象データへのアクセス方法などの情報が含まれる。また、データ収集サーバ2のユーザは、図示しない編集プログラムなどを稼働させて分析対象データ取り込み指定210を生成する。
分析サーバ1は、複数種の分析ロジック130を有し、各分析ロジック130毎に分析最小データセット120が分析ロジック提供者(または管理者等)によって予め定義される。
分析サーバ1は、データ収集サーバ2から分析対象データ取り込み指定210と分析開始の指令を受信すると、取り込みエージェント110が、利用する分析ロジック130に対応する分析最小データセット120を取得する。
取り込みエージェント110は、分析対象データ取り込み指定210に記述された分析対象データへのアクセス方法などに基づいて、データ収集サーバ2のストレージ15から取り込む分析対象データ(センサデータ250)を決定して、分析対象データを取得する取り込みプロセス140及び取り込みインスタンス141を生成して起動させる。
分析対象データを取得する処理は、1以上の取り込みプロセス140で実施される。取り込みプロセス140は、1以上の取り込みインスタンス141を含む。本実施例1では、複数の取り込みプロセス140及び複数の取り込みインスタンス141で並列処理を行う例を示す。
取り込みプロセス140内の取り込みインスタンス141が、データ収集サーバ2から分析対象データを読み込んでストレージ15に取り込み済みデータ300として格納する。取り込みエージェント110は、取り込みプロセス140及び取り込みインスタンス141を監視して、分析対象データの取り込みが完了すると分析ロジック130から分析プロセス150及び分析インスタンス151を生成して分析処理を実行させる。
分析対象データを分析する処理は、1以上の分析プロセス150で実施される。分析プロセス150は、1以上の分析インスタンス151で構成される。本実施例1では、複数の分析プロセス150及び複数の分析インスタンス151で並列処理を行う例を示す。
取り込みエージェント110は、後述するように、取り込みプロセス140及び取り込みインスタンス141の性能に基づいて、取り込みプロセス140及び取り込みインスタンス141の並列度を制御する。
また、取り込みエージェント110は、後述するように、分析ロジック130が生成する分析プロセス150及び分析インスタンス151の性能に基づいて、分析プロセス150及び分析インスタンス151の並列度を制御する。
データ収集サーバ2のユーザは、随時分析サーバ1にアクセスして、分析対象データの処理結果を取得することができる。このように、本実施例では、データ収集サーバ2のユーザは、分析対象データの指定と、分析ロジック130等の指定を含む分析対象データ取り込み指定210を生成し、分析サーバ1へ送信して分析の開始を指示するだけで良い。
すなわち、前記従来例のように、分析対象データを指定して分析サーバ1へ転送し、転送の完了を待って分析の開始を指令する必要はなくなり、分析処理を効率よく行うことが可能となる。本実施例では、データ収集サーバ2のユーザが、分析対象データの転送の進捗を監視する必要がなくなり、ユーザの負担を軽減することができる。また、ひとつ分析対象データ取り込み指定210を指令するだけで、分析対象データの取り込みから分析処理までを完結させることができるので、分析基盤への指令を極めて簡易にすることができる。
<ソフトウェア資源>
図3は、分析サーバ1のソフトウェア資源の一例を示すブロック図である。分析サーバ1のメモリ12には、取り込みエージェント110と、1以上の分析最小データセット120と、取り込みプロセス140及び取り込みインスタンス141と、1以上の分析ロジック130と、分析プロセス150及び分析インスタンス151と、制御情報160と、データ取り込み指示キュー170と、データ分析指示キュー180と、データ廃棄指示キュー190と、取り込み済みデータメタデータ310が保持される。
分析サーバ1のストレージ15には、データ収集サーバ2から読み込んだ分析対象データが取り込み済みデータ300として格納される。
取り込みエージェント110は、分析対象データをデータ収集サーバ2から取得する取り込みプロセス140と取り込みインスタンス141を生成し、分析対象データの取り込み完了後に分析ロジック130から分析プロセス150と分析インスタンス151を生成して起動させる。取り込みエージェント110は、分析対象データの取得から、分析処理の完了までを管理する。
分析最小データセット120は、分析ロジック130毎(またはデータ収集サーバ2のユーザ毎)に分析対象データのデータ項目と、分析処理の繰り返し単位が予め定義された情報である。
分析ロジック130は、分析ロジック130は、分析の種類や分析対象のデータ毎に予め用意される情報である。
制御情報160は、取り込みエージェント110や取り込みプロセス140及び取り込みインスタンス141や、分析プロセス150及び分析インスタンス151の実行の際に必要なパラメータを保持する。
データ取り込み指示キュー170は、取り込みプロセス140及び取り込みインスタンス141が、データ収集サーバ2から分析対象データを取り込む処理を制御するバッファである。データ取り込み指示キュー170に、取り込みコマンドが格納されると、取り込みエージェント110は、取り込みプロセス140及び取り込みインスタンス141を起動して分析対象データの読み込みが開始される。
データ分析指示キュー180は、取り込みエージェント110が、分析ロジック130に基づいて生成される分析プロセス150及び分析インスタンス151が使用するバッファである。データ分析指示キュー180に、分析コマンドが格納されると、取り込みエージェント110は、分析プロセス150及び分析インスタンス151を起動して分析対象データの分析処理を開始する。
データ廃棄指示キュー190は、ストレージ15に格納された取り込み済みデータ300を廃棄するバッファである。データ廃棄指示キュー190に、データ廃棄コマンドが格納されると、ストレージ15の使用率が所定の閾値以下となるまでデータの廃棄が行われる。なお、ストレージ15の使用率(ボリューム使用率)は、ストレージ15の容量に対する取り込み済みデータ300の容量の比率である。
取り込み済みデータメタデータ310は、ストレージ15に格納された分析対象データのメタデータである。取り込み済みデータメタデータ310は、取り込みエージェント110によって管理される。取り込みエージェント110は、センサデータ250を取り込んで、取り込み済みデータ300へ格納する際に取り込み済みデータメタデータ310を生成することができる。なお、取り込み済みデータメタデータ310の生成は、予め設定したタイミングで取り込みエージェント110が実施してもよい。
取り込みエージェント110と、取り込みプロセス140や取り込みインスタンス141または分析プロセス150や分析インスタンス151等の各機能部はプログラムとしてメモリ12にロードされる。
CPU11は、各機能部のプログラムに従って処理することによって、所定の機能を提供する機能部として稼働する。例えば、CPU11は、取り込みエージェントプログラムに従って処理することで取り込みエージェント110として機能する。他のプログラムについても同様である。さらに、CPU11は、各プログラムが実行する複数の処理のそれぞれの機能を提供する機能部としても稼働する。計算機及び計算機システムは、これらの機能部を含む装置及びシステムである。
分析サーバ1の各機能を実現するプログラム、テーブル等の情報は、ストレージ15や不揮発性半導体メモリ、ハードディスクドライブ、SSD(Solid State Drive)等の記憶デバイス、または、ICカード、SDカード、DVD等の計算機読み取り可能な非一時的データ記憶媒体に格納することができる。
<分析最小データセット>
図4は、分析最小データセット120の一例を示す図である。分析最小データセット120は、取り込みプロセス140が繰り返して実行するデータの取り込み処理の項目や繰り返しの範囲や繰り返しの単位などが予め設定される。
分析最小データセット120は、分析ロジック130の種類毎に分析ロジック提供者などによって予め設定された情報である。
分析最小データセット120は、分析ロジック名121と、データ項目122と、繰り返し設定123を含む。分析ロジック名121は、分析を実施する分析ロジック130の名称または識別子を格納する。
データ項目122は、項目名1221と項目数1222を含む。図示の分析ロジック名121=「故障予兆分析」では、項目名1221が、ID番号とタイムスタンプとデータの3つで構成され、データの項目数は「multi」に設定されて複数のデータを含むことができる。例えば、1つのID番号とタイムスタンプのデータの項目には、w1、w2、w3の3つのデータを含むことができる。
繰り返し設定123は、繰り返し項目名1231と繰り返し単位1232を含む。図示の分析ロジック名121=「故障予兆分析」では、繰り返し項目名1231=ID番号については、繰り返し単位1232が1つに設定され、繰り返し項目名1231=タイムスタンプについては、繰り返し単位1232が「multi」に設定され複数のデータを含むことができる。
すなわち、図示の分析ロジック名121=「故障予兆分析」では、ひとつのID番号について予め設定したタイムスタンプの範囲(例えば、5分など)で分析処理を実施することが定義されている。
分析サーバ1は、複数の種類の分析ロジック130を有し、上記分析最小データセット120は、分析ロジック130ごとにロジック提供者等が予め設定した定義である。取り込みエージェント1100は、予め設定された分析最小データセット120に従ってデータの取り込み処理と分析処理を実行する。
<分析対象データ取り込み指定>
図5は、分析対象データ取り込み指定210の一例を示す図である。分析対象データ取り込み指定210は、分析サーバ1を利用するデータ収集サーバ2のユーザが、分析指令の前に設定する情報である。なお、分析対象データ取り込み指定210は、予め設定したファイルなどで構成しても良い。
分析対象データ取り込み指定210は、利用分析ロジック名211と、対応関係定義情報212と、取り込みデータ範囲213と、アクセス方式214と、リソース割当方式215と、データ分析時間limit216を含む。
利用分析ロジック名211は、分析サーバ1の分析ロジック130のうち、使用する分析ロジックの名称(または識別子)を含む。
対応関係定義情報212は、分析最小データセット項目名2121と、分析対象データ項目名2122を含む。対応関係定義情報212は、データ収集サーバ2のストレージ25に蓄積されたセンサデータ250のデータ項目と、取り込みエージェント110が取り込むデータ項目の対応関係を定義する情報である。
分析最小データセット項目名2121には、図4に示した項目名1221と同様の項目名である「ID番号」、「タイムスタンプ」、「データ」が定義される。分析最小データセット項目名2121には、センサデータ250の項目のうち、分析最小データセットに対応する項目として「mac」、「time」、「w1,w2,w3」が設定される。なお、macは、「Media access control」アドレスを示す。
すなわち、「ID番号」として「mac(アドレス)」を使用し、「タイムスタンプ」として「time」を使用し、「データ」として「w1,w2,w3」の3つの値の組を用いることが設定される。
取り込みデータ範囲213は、分析最小データセット120で定義されているデータの繰り返し設定123について、今回分析するセンサデータ250の範囲を指定する。取り込みデータ範囲213は、分析対象データ項目名2131と、繰り返し範囲2132と、繰り返し単位2133と、繰り返し優先度2134が含まれる。
図示の例では、分析対象データ項目名2131の「mac(Media Access Control)」の値が繰り返し範囲2132=「#1〜#3」のセンサデータ250について分析を繰り返し、さらに、分析対象データ項目名2131=「time」の値が繰り返し範囲2132=「8:00〜8:03」について、繰り返し単位2133=「1」分間のセンサデータ250について分析を繰り返すことが設定される。そして、繰り返し優先度2134は、「mac」=1の次に「time」=2が設定される。
したがって、「mac」の値の順で、8:00から1分間隔で8:03の範囲で分析することが設定される。なお、本実施例では、分析対象データ項目名2131として、macアドレスを用いる例を示したが、これに限定されるものではない。
アクセス方式214には、分析対象データとなるセンサデータ250が格納されたストレージ25のアクセスパスとアクセス範囲が「ret = `curl http://abc.com/api/${id}/${time}_${time+time_loop}`」として定義され、分析対象データ項目名2122=「w1、w2、w3」の戻り値が「ret[“v1”]、ret[“v2”]、ret[“v3”]」であることが指定される。
次に、リソース割当方式215には性能重視またはリソース効率重視のいずれかを設定することができる。リソース割当方式215に、リソース効率重視が設定された場合、データ分析時間limit216以内に分析が終了するように、最小のリソースを利用して分析を実施する。性能重視の場合は、最短で分析結果が得られるように、データの取り込み及び分析を制御する。データ分析時間limit216は、分析処理に許容される時間の最大値が設定され、図示の例では10時間以内に分析処理が完了するよう要求している。
以上のように、分析対象データ取り込み指定210には、センサデータ250を取得して分析する処理を繰り返す範囲が取り込みデータ範囲213に設定され、取り込むべきデータの所在がアクセス方式214に設定される。また、分析対象データ取り込み指定210には、分析最小データセット120の定義とセンサデータ250の対応関係が設定される。
<メタデータ>
図6Aは、分析サーバ1で取り込み済みデータ300のメタデータの一例を示す図である。取り込み済みデータメタデータ310は、分析サーバ1のストレージ15に格納されている取り込み済みデータ300のメタデータを保持する。
取り込み済みデータメタデータ310は、番号311と、mac312と、time313と、データ項目名314をひとつのエントリに含む。なお、mac312と、time313が分析対象繰り返し範囲データ項目名を示す。
番号311は、分析サーバ1が付与したシリアル値である。図示の例では、mac312の値毎に、time313=8:00〜8:03のデータ項目名314が格納されている。図示の例では、データ項目名314=「w1、w2」のように「w3」が欠落しているデータが含まれている。
なお、取り込みエージェント110は、取り込み済みデータ300に新たなデータを取り込むと、当該データのメタ情報を算出して取り込み済みデータメタデータ310に追加する。
図6Bは、取り込み済みデータメタデータ310のアクセス順リスト320の一例を示す図である。図示の例では、番号311の順序で取り込み済みデータメタデータ310にアクセスすることが定義されている。なお、廃棄するデータをアクセスする場合には、当該リストの他にLRU(Last Recently Used)等を用いても良い。
<キューの構成>
図7Aは、データ取り込み指示キュー170の一例を示す図である。データ取り込み指示キュー170は、データ取り込み指示待ちの最小データセットを示し、mac1701とtime1702を一つのエントリに含む。
データ取り込み指示キュー170では、mac1701とtime1702で指定された分析対象データが、取り込みエージェント110によってデータ収集サーバ2のストレージ25から取得される。なお、データの取得が完了したエントリは、取り込みエージェント110によってデータ取り込み指示キュー170から削除される。
図7Bは、データ分析指示キュー180の一例を示す図である。データ分析指示キュー180は、データ分析指示待ちの最小データセットを示し、mac1801とtime1802を一つのエントリに含む。
データ分析指示キュー180では、mac1801とtime1802で特定される取り込み済みデータ300を読み込んで分析プロセス150によって分析処理が開始される。なお、データ分析が完了したエントリは、取り込みエージェント110によってデータ分析指示キュー180から削除される。
図7Cは、データ廃棄指示キュー190の一例を示す図である。データ廃棄指示キュー190は、データ廃棄指示時に優先的に廃棄される最小データセットを示す。
データ廃棄指示キュー190は、mac1901とtime1902とデータ項目名1903を一つのエントリに含む。なお、データ項目名1903には、複数の値を含むことができる。
データ廃棄指示キュー190では、mac1901とtime1902とデータ項目名1903で指定される取り込み済みデータ300が、取り込みエージェント110によってストレージ15から削除される。なお、データの削除が完了したエントリは、取り込みエージェント110によってデータ廃棄指示キュー190から削除される。
<制御情報>
図8は、制御情報160の一例を示す図である。制御情報160は、分析サーバ1で稼働する取り込みエージェント110によって使用されるデータである。
取り込みプロセス内並列度初期値51は、1つの取り込みプロセス140で実行する取り込みインスタンス141の初期値を示す。取り込みプロセス数初期値52は、実行する取り込みプロセス140の数の初期値を示す。
分析プロセス内並列度初期値53は、データ分析を実行する分析プロセス150内の分析インスタンス151の数(並列度)の初期値を示す。分析プロセス数初期値54は、実行する分析プロセス150の数(並列度)の初期値を示す。
取り込みプロセス内並列度55は、取り込みプロセス140内で実行される取り込みインスタンス141の数を示す。取り込みプロセス数56は、実行される取り込みプロセス140の数を示す。なお、取り込みプロセス内並列度55は、取り込みプロセス140毎に設定される。
取り込みプロセス内並列度閾値57は、取り込みプロセス内並列度55の最大値が予め設定される。
分析プロセス内並列度58は、生成された分析インスタンス151の数を示す。分析プロセス数59は、生成された分析プロセス150の数を示す。なお、分析プロセス内並列度58は、分析プロセス150毎に設定される。分析プロセス内並列度閾値60は、分析プロセス内並列度58の最大値が予め設定される。
稼働中取り込みインスタンス数61は、実行中の取り込みインスタンス141の数を示す。稼働中データ分析インスタンス数62は、実行中の分析インスタンス151の数を示す。
取り込み処理時間63は、現在の取り込みプロセス内並列度55における取り込み処理時間を示し、取り込みプロセス140内の取り込みインスタンス141の開始から終了までの時間である。前回取り込み処理時間64は、取り込みプロセス内並列度55を変更する前の、取り込み処理時間を示す。取り込み処理最大時間65は、許容する最大の処理時間を示す。
分析処理時間66は、分析処理に要する時間であり、分析プロセス150内の分析インスタンス151の開始から終了までの時間を示す。前回分析処理時間67は、分析プロセス内並列度58を変更する前の、分析処理時間を示す。
リソース割当方式68は、性能重視またはリソース効率重視のいずれかが設定される。リソース割当方式68にリソース効率重視が設定された場合、データ分析時間limit69以内に分析が終了するように、最小のリソースを利用して分析を実施する。性能重視の場合は、最短で分析結果が得られるように、データの取り込み及び分析を制御する。データ分析時間limit69は、分析処理に許容される時間の最大値が設定され、図示の例では10時間以内に分析処理が完了する制限している。
データ廃棄閾値70は、データ廃棄起動閾値71とデータ廃棄目標72とを含む。データ廃棄起動閾値71は、ストレージ15のボリュームの使用率が当該閾値以上となった場合に、データ廃棄を起動させる。データ廃棄目標72は、データ廃棄処理時に、ストレージ15のボリュームの使用率の目標値(%)を示す。
取り込みプロセス内並列度55や取り込みプロセス数56は、データ取込処理の並列度を示す。本実施例1において、データ取込処理の並列度は、並列的に取り込む分析最小データセット120の数を示す。
<処理の概要>
図9は、計算機システムで行われる処理の一例を示すフローチャートである。この処理は、分析ロジック提供者や管理者などの指令に基づいて開始される。
まず、ステップS1では、分析サーバ1が、分析最小データセット120を生成する。分析サーバ1は、分析ロジック提供者等からの入力を受け付けて分析最小データセット120を生成する。
ステップS2では、データ収集サーバ2が、分析対象データ取り込み指定210を生成する。データ収集サーバ2は、ユーザ等からの入力を受け付けて分析最小データセット120を生成する。分析最小データセット120には、図5に示した各項目がユーザからの入力に基づいて設定される。この設定は、分析対象データのアクセスパスや範囲と、利用する分析ロジック130と、分析処理を繰り返す条件などが含まれる。
ステップS3では、データ収集サーバ2が、分析対象データ取り込み指定210と分析開始の指示を分析サーバ1へ送信する。分析サーバ1への分析開始の指示には、分析対象データの取り込み処理と分析処理の実行が含まれる。
ステップS4では、データ収集サーバ2から受信した分析開始指示に基づいて、分析サーバ1がデータ取り込み処理と分析処理を実行するための初期化を実行する。初期化処理では、後述するように、分析サーバ1がデータを取り込むためのストレージ15の領域の確保や、分析を実行するためのメモリ12の領域の確保などが行われる。
ステップS5では、分析サーバ1が受信した分析対象データ取り込み指定210を読み込んで、分析最小データセット120や制御情報160等に分析対象の情報を設定し、使用する分析ロジック130及び取り込みエージェント110が使用するキューの設定などを実施する。
ステップS6では、分析サーバ1の取り込みエージェント110が分析対象データの取り込みを開始する。取り込みエージェント110は、1以上の取り込みプロセス140と1以上の取り込みインスタンス141を生成して、分析対象データ取り込み指定210に記載されたアクセス方式214内のアクセスパスから、取り込みデータ範囲213で指定されたデータを、データ収集サーバ2から取得する。
ステップS7では、取り込みエージェント110が分析対処理の進行状況に応じて分析プロセス150及び分析インスタンス151の実行を管理する。
すなわち、取り込みエージェント110は、データ収集サーバ2から取り込んだ分析対象データが分析最小データセット120及び分析対象データ取り込み指定210に設定された繰り返し範囲になると、分析プロセス150及び分析インスタンス151を生成して分析処理を実行させる。
取り込みエージェント110は、分析ロジック130に基づいて、1以上の分析プロセス150及び分析インスタンス151を生成して取り込みエージェント110から指定されたデータの分析を実行させる。
取り込みエージェント110は、取り込みプロセス140及び取り込みインスタンス141と分析プロセス150及び分析インスタンス151を監視して、分析サーバ1の計算機資源の割り当てを制御する。分析ロジック130は、分析インスタンス151の分析結果をメモリ12またはストレージ15の所定の領域に格納する。
ステップS8では、分析サーバ1が、指定された分析処理が完了し、ユーザが利用するデータ収集サーバ2から分析結果の閲覧要求を受け付ける。分析サーバ1の取り込みエージェント110は、閲覧要求に応じて分析結果を取得してデータ収集サーバ2へ送信する。
以上の処理によって、分析サーバ1を利用するユーザは、分析対象データ取り込み指定210と分析開始の指示をデータ収集サーバ2から送信しておけば、取り込みエージェント110がデータの取得から分析処理の実行までを自動的に行うことができる。ユーザは分析処理の実行完了後に分析結果を閲覧することができる。
なお、上記ではユーザがデータ収集サーバ2から分析開始を指示する例を示したが、これに限定されるものではない。ユーザが利用する計算機とデータ収集サーバ2は異なる計算機であっても良い。
<取り込みエージェントの処理>
図10は、分析サーバ1のデータ取り込み処理の一例を示すフローチャートである。ステップS11では、取り込みエージェント110が分析対象データをデータ収集サーバ2から収集するためのインタフェースを生成する。この処理は、図11で後述する。
ステップS12では、取り込みエージェント110が、上記受信した分析対象データ取り込み指定210に記載された取り込みデータ範囲213に基づいて、データ収集サーバ2から取り読み込むデータを決定する。この処理は、図12で後述する。
ステップS13では、取り込みエージェント110が、上記決定した取り込みデータを取得する取り込みプロセス140及び取り込みインスタンス141を生成して起動させる。複数の取り込みプロセス140または取り込みインスタンス141が生成された場合には、並列的に実行させる。この処理は、図13で後述する。
ステップS14では、取り込みエージェント110が、取り込みプロセス140または取り込みインスタンス141の処理が完了した否かを判定する。この処理は、図14で後述する。
ステップS15では、取り込み済みデータ300が分析最小データセット120の繰り返し範囲2132に達すると、取り込みエージェント110が分析ロジック130に基づいて分析プロセス150と分析インスタンス151を生成して分析を実行させる。この処理は、図15で後述する。
ステップS16では、取り込みエージェント110が、分析プロセス150及び分析インスタンス151の稼働状況を取得して、分析処理の終了を判定する。この処理は、図16で後述する。
ステップS17では、取り込みエージェント110が、制御情報160の取り込みプロセス内並列度55の更新処理を実行する。この処理により、取り込みインスタンス141の並列度が更新される。この処理は、図17で後述する。
ステップS18では、取り込みエージェント110が、制御情報160の分析プロセス内並列度58の更新処理を実行する。この処理により、分析インスタンス151の並列度が更新される。この処理は、図18で後述する。
ステップS19では、取り込みエージェント110が、分析対象データの取り込みが完了したか否かを判定する。取り込みが完了していない分析対象データが存在すればステップS13に戻って上記処理を繰り返す。全ての分析対象データを取り込んだ場合にはステップS20に進んで処理を終了する。
上記処理によって、取り込みエージェント110は、受信した分析対象データ取り込み指定210からデータ収集サーバ2の分析対象データを読み込むアクセスパスを取得して取り込みインタフェースを生成し、次に取り込みプロセス140及び取り込みインスタンス141を生成してデータの取得を開始する。
取り込みエージェント110は、取り込み済みデータ300が繰り返し範囲2132に範囲に達すると、分析ロジック130に基づいて分析プロセス150及び分析インスタンス151を生成して分析処理を開始する。全ての分析対象データを読み込んで、分析インスタンス151を実行させると取り込みエージェント110は処理を終了する。そして、全ての分析インスタンス151の実行が完了すると、分析結果が生成されて処理が終了する。
また、取り込みエージェント110は、取り込みプロセス140内の取り込みインスタンス141と、分析プロセス150内の分析インスタンス151の並列度を監視して取り込みプロセス内並列度55と、分析プロセス内並列度58を更新することで、生成するプロセスやインスタンスの数を調整する。すなわち、制御情報160のリソース割当方式68に応じて、取り込み処理と分析処理に割り当てる計算機資源を調整することができる。
<アクセスI/F生成処理>
図11は、分析サーバ1の分析対象データのアクセスインタフェースの生成処理の一例を示すフローチャートである。この処理は、図10のステップS11で行われる。
ステップS31では、取り込みエージェント110が、使用する分析ロジック130に対応する分析最小データセット120を取得してデータ項目122を読み込む。また、取り込みエージェント110が、分析対象データ取り込み指定210から対応関係定義情報212を取得する。
ステップS32では、取り込みエージェント110が、上記ステップS31で取得した対応関係定義情報212とデータ項目122の対応関係を設定する。そして、ステップS33では、取り込みエージェント110が、分析最小データセット120の全ての項目名1221について対応関係を設定可能か否かを判定する。設定可能であればステップS34へ進み、そうでなければステップS40に進む。
ステップS34では、取り込みエージェント110が、分析最小データセット120から繰り返し設定123を取得し、分析対象データ取り込み指定210から取り込みデータ範囲213を取得する。
ステップS35では、取り込みエージェント110が、分析対象データ取り込み指定210から取得した対応関係定義情報212の分析対象データ項目名2122を、分析最小データセット120の繰り返し項目名1231に対応付け、さらに、繰り返し項目名1231に分析対象データ取り込み指定210の分析対象データ項目名2131を対応付ける。これにより、分析最小データセット120の繰り返し項目名1231と、分析対象データ取り込み指定210の取り込みデータ範囲213が、分析対象データ項目名2131をキーにして対応付けられる。
ステップS36では、取り込みエージェント110が、分析最小データセット120の全ての繰り返し項目名1231と繰り返し単位1232について対応関係を設定可能であるか否を判定する。設定可能であればステップS37へ進み、そうでなければステップS40に進む。
ステップS37では、取り込みエージェント110が、アクセス方式214のアクセスパスに取り込みデータ範囲213の繰り返し範囲2132と繰り返し単位2133を設定してアクセスインタフェースを生成する。
ステップS38では、取り込みエージェント110が、アクセスインタフェースが生成されたか否かを判定する。生成可能であればステップS39へ進み、そうでなければステップS40に進む。
ステップS39では、取り込みエージェント110が、取り込みデータ範囲213の繰り返し優先度2134に基づいて取り込みデータの順序を決定し、取り込み済みデータメタデータ310を後述するように設定してから処理を終了する。一方、ステップS40ではアクセスインタフェースが生成できないため、データ収集サーバ2に対してエラーを通知して処理を終了する。
上記処理によって、分析最小データセット120に対応する項目名で分析対象データ取り込み指定210の取り込みデータ範囲213が取り込まれ、アクセス方式214で指定されたアクセスパスからアクセスインタフェースが生成される。
また、図5に示した取り込みデータ範囲213の繰り返し優先度2134に基づいて、データ収集サーバ2からデータを取り込む順序が決定され、取り込み済みデータメタデータ310の分析対象繰り返し範囲データ項目名(312、313)が設定される。
取り込みエージェント110は、図6Aで示したように、分析対象繰り返し範囲データ項目名(312、313)に、分析対象データ取り込み指定210の取り込みデータ範囲213で指定された繰り返し範囲2132と繰り返し単位2133で、取り込み済みデータメタデータ310を準備する。
図5の例では、ID#=mac=1のデータについて、time=8:00〜8:03のデータが繰り返し単位2133=「1」分間隔でエントリを生成し、その後、ID#=mac=2のデータが同様の順序でエントリを生成する。なお、番号311には、取り込みエージェント110がシリアル値を設定する。
取り込みエージェント110は、過去にデータ収集サーバ2から取り込んだ分析対象データの取り込み済みデータメタデータ310をストレージ15等に保存しておき、アクセスパスが一致する分析対象データについては、取り込みデータ範囲213の分析対象データ項目名2131と繰り返し範囲2132が一致する部分のデータメタデータ310を読み込んで、上記のように生成した取り込み済みデータメタデータ310のデータ項目名314にメタデータを設定しておく。
なお、アクセスパス及び取り込みデータ範囲213が一致する取り込み済みデータメタデータ310がない場合には、取り込み済みデータメタデータ310のデータ項目名314は空白となる。
<取り込み対象データの決定処理>
図12は、分析サーバ1の取り込み対象データ決定処理の一例を示すフローチャートである。この処理は、図10のステップS12で行われる。
ステップS41では、取り込みエージェント110が、図11の処理で準備した取り込み済みデータメタデータ310を読み込んで、図6Aに示した先頭のエントリ(番号311=1)から処理を開始する。
ステップS42では、取り込みエージェント110が、取り込み済みデータメタデータ310で、分析対象繰り返し範囲データ項目名(312、313)に設定された繰り返し対象の値の組が取り込み済みデータ300に存在するか否かを判定する。すなわち、取り込みエージェント110は、過去に取り込んだデータがストレージ15に存在するか否かを判定する。
取り込みエージェント110は、現在処理しているmac312とtime313のエントリで、データ項目名314が空白であれば値の組に対応する取り込み済みデータ300はないと判定し、データ項目名314が空白でなければ値の組に対応する取り込み済みデータ300が存在すると判定する。
ステップS43では、取り込みエージェント110が、値の組に対応するデータがあればステップS44へ進み、存在しなければステップS50に進む。
ステップS44では、取り込みエージェント110が、対応関係定義情報212の分析対象データ項目名2122のうち、繰り返し対象に含まれない分析対象データ項目名2122を選択する。図5に示した対応関係定義情報212の例では、分析最小データセット項目名2121が「data」の値=「w1、w2、w3」が繰り返し対象に含まれないデータ項目として選択される。
ステップS45では、取り込みエージェント110が、ステップS44で抽出したデータ項目と取り込み済みデータメタデータ310のデータ項目名314が一致するか否かを判定する。分析対象データ項目名2122が「w1、w2、w3」の場合、3つの値が含まれていることが判定条件となる。
ステップS46では、取り込みエージェント110が、取り込み済みデータメタデータ310のデータ項目名314に3つのデータが存在していれば、条件に一致すると判定してステップS47へ進み、3つのデータが存在しなければ、条件に一致しないと判定してステップS48へ進む。
ステップS47では、取り込みエージェント110が、過去に取り込んだ取り込み済みデータ300を利用できるので、現在の取り込み済みデータメタデータ310のデータを識別するmac312とtime313の値を、図7Bに示したデータ分析指示キュー180のmac1801とtime1802に設定する。
一方、ステップS48では、取り込みエージェント110が、対応関係定義情報212の分析対象データ項目名2122が変更されたと判定し、当該データを破棄対象として図7Cのデータ廃棄指示キュー190に設定する。次に、ステップS49では、後述する処理によって取り込みエージェント110が、データの廃棄を実施するため廃棄コマンドをデータ廃棄指示キュー190に設定する。
ステップS50では、取り込みエージェント110が、ストレージ15からデータを廃棄(削除)したので、取り込みエージェント110が、取り込み済みデータアクセス順リスト(図6B)を更新する。この処理は、削除された取り込み済みデータ300を取り込み済みデータアクセス順リストから除外する。
ステップS51では、取り込みエージェント110が、データ収集サーバ2からセンサデータ250を取得するため、現在の取り込み済みデータメタデータ310のデータを識別するmac312とtime313の値を、図7Aに示したデータ取り込み指示キュー170のmac1701とtime1702に設定する。
ステップS52では、取り込みエージェント110が、取り込みデータ範囲213で指定された取り込みデータ範囲213についてデータの取得が完了したか否かを判定する。取り込みデータ範囲213の全てについてデータの取り込みが完了した場合にはステップS53に進んで処理を終了する。取り込みデータ範囲213につい未処理のデータがあればステップS41へ戻って、取り込み済みデータメタデータ310の次のエントリを選択して上記の処理を繰り返す。
上記処理によって、過去の取り込み済みデータ300が存在する場合にはデータ分析指示キュー180に選択中のエントリのmac312とtime313を設定して既存の取り込み済みデータ300で分析処理を行う。
一方、過去の取り込み済みデータ300が存在する場合には、取り込みエージェント110が不要となった取り込み済みデータ300を廃棄してから、データ取り込み指示キュー170に選択中のエントリのmac312とtime313を設定して新たなセンサデータ250を取得する。
また、取り込みエージェント110は、取り込み対象のデータが取り込み済みデータメタデータ310に含まれるか否かを判定し、含まれない場合は新たに取り込む対象とする。一方、データ項目名314のみ異なるメタデータが存在する場合は、ユーザ側の分析対象データ取り込み指定210の対応関係定義情報が変わったと判定して、当該データを破棄対象とする。
<取り込みインスタンス141の生成処理>
図13は、分析サーバ1のデータ取り込みインスタンス生成処理の一例を示すフローチャートである。この処理は、図10のステップS13で行われる。
ステップS61では、取り込みエージェント110が、現在稼働中の取り込みインスタンス141の数を制御情報160の稼働中取り込みインスタンス数61から取得する。
ステップS62では、取り込みエージェント110が、分析サーバ1の計算機資源で取り込みインスタンス141を追加可能か否かを判定する。すなわち、取り込みエージェント110は、稼働中取り込みインスタンス数61が、プロセス内の取り込みインスタンス数の最大値を示す取り込みプロセス内並列度閾値57に取り込みプロセス数56を乗じた値(実行可能な取り込みインスタンス数)未満であるか否かを判定する。
稼働中取り込みインスタンス数61が乗算結果未満であればステップS63へ進み、稼働中取り込みインスタンス数61が乗算結果以上であればステップS69へ進む。ステップS69では、一定時間待機した後にステップS61へ戻って上記処理を繰り返す。
ステップS63では、取り込みエージェント110が、データ取り込み指示キュー170のエントリ数を取得する。ステップS63では、取り込みエージェント110が、エントリ数と1を比較して、1を超えていればステップS65へ進み、エントリ数が1以下であればステップS69へ進んで上記処理を繰り返す。
ステップS65では、取り込みエージェント110が、データ取り込み指示キュー170から取り込み対象の分析対象データ項目名のパラメータ(1701、1702)を取得する。ステップS66では、取り込みエージェント110が、パラメータを取得したデータ取り込み指示キュー170のエントリをクリア(−1)してから更新する。
次に、ステップS67では、取り込みエージェント110が、取り込みインスタンス141の追加対象となる取り込みプロセス140を決定する。取り込みプロセス140の決定は、ラウンドロビンや、稼働中の取り込みインスタンス141の数が最小の取り込みプロセス140など、分析サーバ1の運用に適した手法を用いることができる。
次に、ステップS68では、取り込みエージェント110が、上記ステップS65で取得したパラメータで、追加対象の取り込みプロセス140内に取り込みインスタンス141を生成して、対象データの取り込みを実行する。
ステップS69では、取り込みエージェント110が、取り込みインスタンス141を生成したので、稼働中取り込みインスタンス数61をインクリメント(+1)して更新する。
上記処理によって、データ取り込み指示キュー170にエントリが溜まっており、更にインスタンス数の稼働数に余裕がある場合に、新たにインスタンスを生成してデータ取り込み処理を推進する。
<取り込みインスタンスの終了判定処理>
図14は、分析サーバ1のデータ取り込みインスタンス終了判定処理の一例を示すフローチャートである。この処理は、図10のステップS14で行われる。
図13の処理で生成された取り込みインスタンス141は、自身の処理が終了する時に、終了したことを示す情報(終了情報)をメモリ12に出力する。また、終了情報(図示省略)には、当該取り込みインスタンス141の実行時間が取り込み処理時間として含まれる。
ステップS71では、取り込みエージェント110が、メモリ12の終了情報を取得して、データ収集サーバ2からのデータ取り込み処理が終了した取り込みインスタンス141の数を取得する。
ステップS72では、取り込みエージェント110が、終了済みの取り込みインスタンス141が存在するか否かを判定し、終了済みの取り込みインスタンス141が存在すればステップS73へ進み、存在しなければステップS80へ進む。ステップS80では、取り込みエージェント110が、一定時間待機した後に、ステップS71へ戻って上記処理を繰り返す。
ステップS73では、取り込みエージェント110が、処理が終了した取り込みインスタンス141のデータを分析処理へ投入する。すなわち、取り込みエージェント110が、取り込みインスタンス141で取得した取り込み済みデータ300のパラメータ(mac、time)を、データ分析指示キュー180に追加して更新する。
ステップS74では、ひとつの取り込みインスタンス141が終了したので、稼働中取り込みインスタンス数61をデクリメント(−1)して更新する。ステップS75では、取り込みエージェント110が、終了情報に含まれる取り込み処理時間を取得して、制御情報160の取り込み処理時間63を更新する。
取り込みエージェント110は、取り込み処理時間63が0でなければ終了情報に含まれる取り込み処理時間と取り込み処理時間63の平均値を算出して取り込み処理時間63を更新する。一方、取り込み処理時間63が0の場合には、取り込みエージェント110が終了情報に含まれる取り込み処理時間をそのまま取り込み処理時間63に設定する。
ステップS76では、取り込みインスタンス141が終了したので、取り込みエージェント110が、取り込みプロセス内並列度55をデクリメント(−1)して更新する。この処理については後述する。
ステップS77では、取り込みエージェント110が、取り込み済みデータ300のボリューム使用率が、データ廃棄起動閾値71を超えたか否かを判定する。ボリューム使用率がデータ廃棄起動閾値71を超えていればステップS78へ進み、超えていなければステップS79へ進む。
ステップS78では、取り込みエージェント110が、取り込み済みデータ300の廃棄処理を実行する。一方、ステップS79では、データ廃棄はしない。以上の処理の後にステップS71へ戻って上記処理を繰り返す。
上記処理によって、取り込み処理が終了した取り込みインスタンス141で取得されたデータが分析処理へ投入され、稼働中取り込みインスタンス数61と取り込み処理時間63を更新してから取り込みプロセス内並列度55が更新される。また、ストレージ15のボリューム使用率がデータ廃棄起動閾値71を超えていれば取り込み済みデータ300のデータの廃棄を実施してストレージ15のボリュームの使用率を低減する。
<分析処理>
図15は、分析サーバ1のデータ分析処理の一例を示すフローチャートである。この処理は、図10のステップS15で行われる。
ステップS81では、取り込みエージェント110が、制御情報160の稼働中データ分析インスタンス数62の値を取得する。
ステップS82では、取り込みエージェント110が、分析サーバ1の計算機資源で分析インスタンス151を追加可能か否かを判定する。すなわち、取り込みエージェント110は、稼働中データ分析インスタンス数62が、プロセス内の分析インスタンス数の最大値を示す分析プロセス内並列度閾値60に分析プロセス数59を乗じた値(実行可能な分析インスタンス数)未満であるか否かを判定する。
取り込みエージェント110は、稼働中データ分析インスタンス数62が乗算結果未満であればステップS83へ進み、稼働中データ分析インスタンス数62が乗算結果以上であればステップS89へ進む。ステップS89では、取り込みエージェント110が、一定時間待機した後にステップS81に戻って上記処理を繰り返す。
ステップS83では、取り込みエージェント110が、データ分析指示キュー180のエントリ数を取得する。ステップS84では、取り込みエージェント110が、エントリ数が1より大であるか否かを判定する。エントリ数が1より大であればステップS85へ進み、エントリ数が1以下であればステップS89へ進む。
ステップS85では、取り込みエージェント110が、データ分析指示キュー180から分析対象の分析対象データ項目名のパラメータ(1801、1802)を取得する。ステップS86では、取り込みエージェント110が、パラメータを取得したデータ分析指示キュー180のエントリをクリア(−1)してから更新する。
次に、ステップS87では、取り込みエージェント110が、分析インスタンス151の追加対象となる分析プロセス150を決定する。分析プロセス150の決定は、ラウンドロビンや、稼働中の分析インスタンス151の数が最小の分析プロセス150など、分析サーバ1の運用に適した手法を用いることができる。
次に、ステップS88では、取り込みエージェント110が、上記ステップS85で取得したパラメータで追加対象の分析プロセス150内に分析インスタンス151を生成して、対象データの分析処理を実行する。
ステップS88では、取り込みエージェント110が、分析インスタンス151を生成したので、稼働中データ分析インスタンス数62をインクリメント(+1)して更新する。
上記処理によって、データ分析指示キュー180にエントリが溜まっており、更にインスタンス数の稼働数に余裕がある場合に、新たに分析インスタンス151を生成して分析処理を推進する。
<分析終了判定処理>
図16は、分析サーバ1のデータ分析終了判定処理の一例を示すフローチャートである。この処理は、図10のステップS16で行われる。
図15で生成された分析プロセス150内の分析インスタンス151は、自身の処理が終了する時に、終了したことを示す情報(終了情報)をメモリ12に出力する。また、分析インスタンス151の終了情報(図示省略)には、当該分析インスタンス151の実行時間が分析処理時間として含まれる。
ステップS91では、取り込みエージェント110が、メモリ12の終了情報を取得して、データ分析処理が終了した分析インスタンス151の数を取得する。
ステップS92では、取り込みエージェント110が、終了済みの分析インスタンス151が存在するか否かを判定し、終了済みの分析インスタンス151が存在すればステップS93へ進み、存在しなければステップS96へ進む。ステップS96では、取り込みエージェント110が、一定時間待機した後に、ステップS91へ戻って上記処理を繰り返す。
ステップS93では、分析インスタンス151が終了したので、取り込みエージェント110は稼働中データ分析インスタンス数62をデクリメント(−1)して更新する。ステップS94では、取り込みエージェント110が、分析インスタンス151の終了情報から分析処理時間を取得して、制御情報160の分析処理時間66を更新する。
取り込みエージェント110は、分析処理時間66が0でなければ終了情報に含まれる分析処理時間と分析処理時間66の平均値を算出して分析処理時間66を更新する。一方、分析処理時間66が0の場合には、取り込みエージェント110が終了情報に含まれる取り込み処理時間をそのまま分析処理時間66に設定する。
ステップS95では、分析インスタンス151が終了したので、取り込みエージェント110が、分析プロセス内並列度58をデクリメント(−1)して更新する。この処理については後述する。上記処理によって、稼働中データ分析インスタンス数62と分析プロセス内並列度58及び分析処理時間66が更新される。
<取り込みプロセスの並列度更新処理>
図17は、分析サーバ1の取り込みプロセス内並列度55の更新処理の一例を示すフローチャートである。この処理は、図10のステップS17で行われる。
取り込みエージェント110は、制御情報160から取り込み処理時間63と取り込み処理最大時間65を読み込んでから処理を開始する(S101)。
次に、ステップS102では、取り込みエージェント110が、取り込み処理時間63が取り込み処理最大時間65を超えているか否かを判定する。取り込み処理時間63が取り込み処理最大時間65を超えていればステップS103へ進み、取り込み処理時間63が取り込み処理最大時間65以下であればステップS108へ進む。ステップS108では、取り込み処理に関する並列度を更新せずに処理を終了する。
ステップS103では、取り込みエージェント110が、制御情報160から分析処理時間66を読み込んで取り込み処理時間63と比較する。取り込みエージェント110は、取り込み処理時間63が分析処理時間66を超えていればステップS104へ進み、取り込み処理時間63が分析処理時間66以下であればステップS109へ進む。
ステップS104では、取り込みエージェント110が、取り込みプロセス内並列度55をインクリメント(+1)する。これにより、取り込み処理に割り当てる計算機資源を増大させる。
ステップS105では、取り込みエージェント110が、ステップS104で更新された取り込みプロセス内並列度55と、予め設定された取り込みプロセス内並列度閾値57を比較する。取り込みエージェント110は、取り込みプロセス内並列度55が取り込みプロセス内並列度閾値57を超えていればステップS106へ進み、取り込みプロセス内並列度55が取り込みプロセス内並列度閾値57以下であれば、ステップS107へ進む。
ステップS106では、取り込みエージェント110が、取り込みプロセス内並列度55が閾値を超過しているので取り込みプロセス140内の並列度を低減する。このため、取り込みエージェント110は、取り込みプロセス数56を2倍に変更し、取り込みプロセス内並列度55を半分に変更する。
そして、ステップS107では、取り込みエージェント110が、現在の取り込み処理時間63を前回取り込み処理時間64にコピーして処理を終了する。
上記ステップS102〜S106の処理では、取り込み処理時間63が取り込み処理最大時間65を超え、かつ、分析処理時間66を超えているので、取り込みプロセス内並列度55に1を加算して、取り込み処理への計算機資源の割り当てを増大する。ただし、取り込みプロセス内並列度55が取り込みプロセス内並列度閾値57を超えた場合には、取り込みプロセス数56を2倍に変更し、取り込みプロセス内並列度55を半分に変更する。これにより、取り込み処理全体としての並列度を維持しながら、取り込みプロセス140内の並列度を低減する。
一方、取り込み処理時間63が分析処理時間66以下の場合のステップS109以降では、現在の分析処理時間66が前回分析処理時間67よりも増大していれば、取り込み処理に割り当てる計算機資源を削減する。このため、ステップS109では、前回分析処理時間67に所定の定数(>1)を乗じた時間が分析処理時間66を超えていればステップS110へ進み、そうでなければステップS107へ進む。
ステップS110では、取り込みエージェント110が、取り込みプロセス内並列度55をデクリメント(−1)する。これにより、取り込み処理に割り当てる計算機資源を削減させる。
次に、ステップS111では、取り込みプロセス内並列度55を2倍した値が取り込みプロセス内並列度閾値57未満であればステップS112へ進み、そうでなければステップS107へ進む。ステップS112では、取り込みエージェント110が、取り込みプロセス数56を1/2に変更し、取り込みプロセス内並列度55を2倍に変更する。
上記ステップS109〜S112の処理では、取り込みプロセス内並列度55をひとつ減らして取り込み処理への計算機資源の割り当てを削減する。ただし、取り込みプロセス内並列度55が取り込みプロセス内並列度閾値57よりも十分小さくなった場合(1/2)には、取り込みプロセス数56を1/2倍に変更し、取り込みプロセス内並列度55を2倍に変更する。
以上のように、取り込み処理時間63または分析処理時間66に応じて、取り込み処理に割り当てる計算機資源を制御する。
<分析プロセスの並列度更新処理>
図18は、分析サーバ1の分析プロセス内並列度58の更新処理の一例を示すフローチャートである。この処理は、図10のステップS18で行われる。
取り込みエージェント110は、CPU11の負荷を読み込んでから処理を開始する(S121)。
次に、ステップS122では、取り込みエージェント110が、CPU11の負荷が所定の範囲に収まっているか否かを判定する。本実施例では、負荷の範囲は80%を超え、かつ90%未満の例を示す。
取り込みエージェント110は、CPU11の負荷が所定の範囲に収まっていれば、ステップS108へ進む。ステップS128では、分析処理に関する並列度を更新せずに処理を終了する。一方、CPU11の負荷が所定の範囲であればステップS123へ進む。
ステップS123で、取り込みエージェント110は、CPU11の負荷が所定の負荷閾値未満であるか否かを判定する。本実施例では、所定の負荷閾値として80%の例を示す。取り込みエージェント110は、CPU11の負荷が負荷閾値未満であればステップS124へ進む。一方、CPU11の負荷が負荷閾値以上であればステップS130へ進む。
ステップS124では、取り込みエージェント110が、分析プロセス内並列度58をインクリメント(+1)する。これにより、分析処理に割り当てる計算機資源を増大させる。
ステップS125では、取り込みエージェント110が、ステップS124で更新された分析プロセス内並列度58と、予め設定された分析プロセス内並列度閾値60を比較する。取り込みエージェント110は、分析プロセス内並列度58が分析プロセス内並列度閾値60を超えていればステップS126へ進み、分析プロセス内並列度58が分析プロセス内並列度閾値60以下であれば、ステップS127へ進む。
ステップS126では、取り込みエージェント110が、分析プロセス内並列度58が閾値を超過しているので分析プロセス150内の並列度を低減する。このため、取り込みエージェント110は、分析プロセス数59を2倍に変更し、分析プロセス内並列度58を半分に変更する。
そして、ステップS127では、取り込みエージェント110が、現在の分析処理時間66を前回分析処理時間67にコピーして処理を終了する。
上記ステップS122〜S126の処理では、CPU11の負荷が負荷閾値未満であるので、分析プロセス内並列度58に1を加算して、分析処理への計算機資源の割り当てを増大する。ただし、分析プロセス内並列度58が分析プロセス内並列度閾値60を超えた場合には、分析プロセス数59を2倍に変更し、分析プロセス内並列度58を半分に変更する。これにより、分析処理全体としての並列度を維持しながら、分析プロセス150内の並列度を低減する。
一方、CPU11の負荷が90%(過負荷閾値)を超える場合のステップS130以降では、分析処理に割り当てる計算機資源を削減する。ステップS130では、取り込みエージェント110が、分析プロセス内並列度58をデクリメント(−1)する。これにより、分析処理に割り当てる計算機資源を削減させる。
次に、ステップS131では、分析プロセス内並列度58を2倍した値が分析プロセス内並列度閾値60未満であればステップS132へ進み、そうでなければステップS127へ進む。ステップS132では、取り込みエージェント110が、分析プロセス数59を1/2に変更し、分析プロセス内並列度58を2倍に変更する。
上記ステップS130〜S132の処理では、分析プロセス内並列度58をひとつ減らして分析処理への計算機資源の割り当てを削減する。ただし、分析プロセス内並列度58が分析プロセス内並列度閾値60よりも十分小さくなった場合(1/2)には、分析プロセス数59を1/2倍に変更し、分析プロセス内並列度58を2倍に変更する。
以上のように、分析サーバ1のCPU11の負荷に応じて、分析処理に割り当てる計算機資源を制御することができる。
<初期化処理>
図19は、分析サーバ1の初期化処理の一例を示すフローチャートである。この処理は、図9のステップS4で行われる。
ステップS141では、取り込みエージェント110が、取り込みプロセス内並列度55に取り込みプロセス内並列度初期値51を設定し、分析プロセス内並列度58に分析プロセス内並列度初期値53を設定する。また、取り込みエージェント110は、取り込みプロセス数56に取り込みプロセス数初期値52を設定し、分析プロセス数59に分析プロセス数初期値54を設定する。
ステップS142では、取り込みエージェント110が、稼働中取り込みインスタンス数61を0に設定し、稼働中データ分析インスタンス数62を0に設定する。
ステップS143では、取り込みエージェント110が、取り込み処理時間63と前回取り込み処理時間64を0に設定し、分析処理時間66と前回分析処理時間67を0に設定する。
ステップS144では、取り込みエージェント110が、分析対象データ取り込み指定201に設定されたリソース割当方式215を、制御情報160のリソース割当方式68に設定し、同じく、分析対象データ取り込み指定201に設定されたデータ分析時間limit216を制御情報160のデータ分析時間limit69に設定する。
上記処理により、取り込みエージェント110は、分析対象データ取り込み指定201に従った処理を開始することができる。
<データ廃棄処理>
図20は、分析サーバ1のデータ廃棄処理の一例を示すフローチャートである。この処理は、図12のステップS49で行われる。
ステップS151では、取り込みエージェント110がデータ廃棄指示キュー190から廃棄コマンドを取得して処理を開始する。ステップS152では、取り込みエージェント110が、ストレージ15のボリューム使用率を取得して、データ廃棄起動閾値71と比較する。取り込みエージェント110はボリューム使用率がデータ廃棄起動閾値71を超えていればステップS153へ進み、そうでなければステップS155に進んで処理を終了する。
ステップS153では、取り込みエージェント110が、データ廃棄目標72を取得して、取り込み済みデータのアクセス順リスト320の先頭からカウントする。ステップS153では、取り込み済みデータのアクセス順リスト320のカウントがデータ廃棄目標72に達するまで取り込み済みデータ300を選択し、選択されたデータを廃棄する。
上記処理によって、取り込み済みデータのアクセス順リスト320の順序で、取り込み済みデータ300が廃棄され、ストレージ15の空き容量を確保することができる。
<まとめ>
図21は、データ収集サーバ2が収集したセンサデータ250を、分析サーバ1が取得して分析処理を行う例を示す図である。図中上段が本発明を示し、図中下段が従来例を示す。図示の例では、図中時刻T0から6時間までデータ収集サーバ2がセンサデータ250を収集し、分析サーバ1が6時間のデータを分析対象データとして取り込んで分析を行う例を示す。
本発明では、まず、分析サーバ1から分析対象データ取り込み指定210を指示することで、時刻T0から分析サーバ1によるデータの取り込みと分析処理が開始される。図示では、分析対象データ取り込み指定210の取り込みデータ範囲213の繰り返し範囲2132が6時間、繰り返し単位2133が2時間とする例を示す。また、取り込みプロセス数56と、分析プロセス数59は2とする例を示す。なお、図示の例では、各プロセスが1時間分のデータについて処理する例を示す。
分析サーバ1は、繰り返し単位2133の2時間分のデータがデータ収集サーバ2へ蓄積される度に、分析サーバ1の取り込みプロセス140が1時間分ずつデータ取り込んで、データの取り込みが完了すると分析プロセス150が分析を実施する。この例では、分析サーバ1が1時間分のデータを取り込むのに30分を要し、1時間分のデータを分析するのに45分を要するものとする。
時刻T0から2時間が経過すると、分析サーバ1は分析対象データ取り込み指定210に従って、2時間分のデータを取り込んでから分析処理を開始する。図示の例では、2つのプロセスで並列的にデータの取り込みと分析が行われる。分析サーバ1は、データの取り込み開始から1時間45分後に、2時間分のデータの取り込みと分析を完了する。
分析サーバ1では、時刻T0から4時間、6時間経過した時点でも、上記と同様の処理が行われ、6時間の蓄積データについて、時刻T0から7時間45分後には全ての取り込みと分析が完了し、分析結果が出力される。
一方、前記従来例において、データ収集サーバ2がセンサデータ250の蓄積を開始して6時間経過した後に、ユーザは、分析サーバ1に対して6時間分のセンサデータ250を取り込むように指令する。
分析サーバ1は、6時間分のデータを3時間かけてデータ収集サーバ2から取り込む。データの取り込みが完了した後に、ユーザは、分析開始の指令を分析サーバ1に入力して分析処理が開始される。分析サーバ1は、6時間分のデータについて分析処理を実行し、3時間30分後に分析結果を出力する。
従来例では、データの蓄積完了と、データの転送完了のタイミングで、それぞれ転送指示や分析指示を分析サーバ1に指令する必要が生じ、完了する時刻によっては分析処理を効率よく行うことができなかった。
これに対して、本発明では、データ収集サーバ2で分析対象データ取り込み指定210で、データの取り込みと分析を繰り返す取り込みデータ範囲213を指示しておくだけで、分析サーバ1はデータの取り込みと分析を自動的に行うことができる。また、本発明では、分析対象データ取り込み指定210の繰り返し範囲で指定することで、データの取り込みと分析処理を、複数のプロセス及びインスタンスによって並列的に処理を行うことで、処理時間を短縮できる。
これにより、大量のデータを収集して分析する場合に、分析サーバ1のユーザは、データの取り込み完了等のタイミングを気にする必要がなくなって、所望のタイミングで分析結果を取得することが可能となる。これにより、大量のデータの分析を行う際の作業の効率を大幅に向上させることが可能となるのである。
図22は、実施例2を示し、計算機システムの機能の一例を示すブロック図である。前記実施例1では、分析サーバ1の取り込みエージェント110が、データの取り込みと分析を制御する例を示したが、本実施例2では、データを転送する機能をデータ収集サーバ2のデータ転送エージェント220に分離した例を示す。
本実施例2の、分析サーバ1の取り込みエージェント110は、前記実施例1からデータを取り込む機能を削除したものである。データ収集サーバ2のデータ転送エージェント220は、前記実施例1のデータを転送する機能を有する。その他の構成は、前記実施例1と同様である。
データ収集サーバ2のデータ転送エージェント220は、前記実施例1と同様に、分析対象データ取り込み指定210と分析最小データセット120に基づいて、処理対象のセンサデータ250を分析サーバ1に転送する。なお、データ転送エージェント220は、前記実施例1の取り込みプロセス140と取り込みインスタンス141に代わって、転送プロセスと転送インスタンスを生成して実行する。
分析サーバ1では、取り込みエージェント110が、所定の繰り返し範囲で分析処理を実行する。なお、処理の内容は前記実施例1と同様であるので、重複する説明は省略する。
本実施例2においても、データ収集サーバ2で分析対象データ取り込み指定210を指示しておくだけで、分析サーバ1はデータの取得と分析を自動的に行うことができる。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に記載したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加、削除、又は置換のいずれもが、単独で、又は組み合わせても適用可能である。
また、上記の各構成、機能、処理部、及び処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、及び機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
1 分析サーバ
2 データ収集サーバ
11 CPU
12 メモリ
15 ストレージ
21 CPU
22 メモリ
25 ストレージ
110 取り込みエージェント
120 分析最小データセット
130 分析ロジック
140 取り込みプロセス
141 取り込みインスタンス
150 分析プロセス
151 分析インスタンス
210 分析対象データ取り込み指定
250 センサデータ
300 取り込み済みデータ

Claims (12)

  1. プロセッサとメモリとストレージを有してデータを蓄積する第1の計算機と、
    プロセッサとメモリとストレージを有して前記第1の計算機に蓄積されたデータを分析する第2の計算機とを含む計算機システムであって、
    前記第2の計算機は、
    分析対象毎に、分析対象となるデータ項目と、繰り返し単位が予め定義された分析最小データセットと、
    前記データの取得処理と分析処理を管理するエージェントと、を有し、
    前記エージェントは、
    分析に使用する前記分析最小データセットと、データの取得を繰り返す範囲と、データの取得を繰り返す単位と、を含む分析対象データ取り込み指定を受け付けて、当該分析対象データ取り込み指定に含まれる繰り返しの範囲と繰り返しの単位に基づいて、前記第1の計算機からデータを取得する第1のプロセス及び第1のプロセス内で処理を実行する第1のインスタンスを生成し、当該第1のインスタンスを起動して前記第1の計算機から前記蓄積されたデータを取得し、
    前記エージェントは、
    前記第1のインスタンスの処理が完了すると、取得したデータに対して分析処理を実行する第2のプロセス及び第2のプロセス内で処理を実行する第2のインスタンスを生成し、当該第2のインスタンスを起動して分析処理を実行させることを特徴とする計算機システム。
  2. 請求項1に記載の計算機システムであって、
    前記分析対象データ取り込み指定は、
    前記分析最小データセットの前記データ項目と分析対象の前記データの関連付けと、
    前記分析最小データセットの前記繰り返し単位と分析対象の前記データの関連付けと、
    前記データへのアクセス情報と、を含むことを特徴とする計算機システム。
  3. 請求項2に記載の計算機システムであって、
    前記エージェントは、
    前記第1のインスタンスのデータ取得の処理時間と、前記第2のインスタンスのデータの分析処理時間を取得して、データ取得の処理時間とデータの分析処理時間に基づいて前記データを並列的に取得するデータ取得並列度と、前記データを並列的に分析するデータ分析並列度と、を決定することを特徴とする計算機システム。
  4. 請求項2に記載の計算機システムであって、
    前記エージェントは、
    前記第1の計算機から取得したデータのメタ情報を蓄積し、前記分析対象データ取り込み指定に含まれる取得対象のデータが前記メタ情報に含まれるか否かを判定し、前記メタ情報に含まれるデータ以外のデータを前記第1の計算機から取得することを特徴とする計算機システム。
  5. 請求項3に記載の計算機システムであって、
    前記エージェントは、
    前記データ取得の処理時間が前記データの分析処理時間より大であれば前記データ取得並列度を増大させ、前記データの分析処理時間が前回よりも増大した場合には前記データ分析並列度を増大させることを特徴とする計算機システム。
  6. 請求項3に記載の計算機システムであって、
    前記エージェントは、
    前記第2の計算機のプロセッサの演算負荷を取得して、前記第2の計算機のプロセッサの前記演算負荷に応じて前記データ分析並列度を変更することを特徴とする計算機システム。
  7. プロセッサとメモリとストレージを有してデータを蓄積する第1の計算機と、プロセッサとメモリとストレージを有して前記第1の計算機に蓄積されたデータを第2の計算機で分析するデータの分析方法であって、
    前記第2の計算機が、分析対象毎に、分析対象となるデータ項目と、繰り返し単位が予め定義された分析最小データセットを有して、分析に使用する前記分析最小データセットと、データの取得を繰り返す範囲と、データの取得を繰り返す単位と、を含む分析対象データ取り込み指定を受け付ける第1のステップと、
    前記第2の計算機が、前記分析対象データ取り込み指定に含まれる繰り返しの範囲と繰り返しの単位に基づいて、前記第1の計算機からデータを取得する第1のプロセス及び第1のプロセス内で処理を実行する第1のインスタンスを生成し、当該第1のインスタンスを起動して前記第1の計算機から前記蓄積されたデータを取得させる第2のステップと、
    前記第2の計算機が、前記第1のインスタンスの処理が完了すると、取得したデータに対して分析処理を実行する第2のプロセス及び第2のプロセス内で処理を実行する第2のインスタンスを生成し、当該第2のインスタンスを起動して分析処理を実行させる第3のステップと、
    を含むことを特徴とするデータの分析方法。
  8. 請求項7に記載のデータの分析方法であって、
    前記分析対象データ取り込み指定は、
    前記分析最小データセットの前記データ項目と分析対象の前記データの関連付けと、
    前記分析最小データセットの前記繰り返し単位と分析対象の前記データの関連付けと、
    前記データへのアクセス情報と、を含むことを特徴とするデータの分析方法。
  9. 請求項8に記載のデータの分析方法であって、
    前記第2のステップは、
    前記第1のインスタンスのデータ取得の処理時間と、前記第2のインスタンスのデータの分析処理時間を取得して、データ取得の処理時間とデータの分析処理時間に基づいて前記データを並列的に取得するデータ取得並列度を決定し、
    前記第3のステップは、
    前記データ取得の処理時間と前記データの分析処理時間に基づいて前記データを並列的に分析するデータ分析並列度を決定することを特徴とするデータの分析方法。
  10. 請求項8に記載のデータの分析方法であって、
    前記第2のステップは、
    前記第1の計算機から取得したデータのメタ情報を蓄積し、前記分析対象データ取り込み指定に含まれる取得対象のデータが前記メタ情報に含まれるか否かを判定し、前記メタ情報に含まれるデータ以外のデータを前記第1の計算機から取得することを特徴とするデータの分析方法。
  11. 請求項9に記載のデータの分析方法であって、
    前記第2のステップは、
    前記データ取得の処理時間が前記データの分析処理時間より大であれば前記データ取得並列度を増大させ、
    前記第3のステップは、
    前記データの分析処理時間が前回よりも増大した場合には前記データ分析並列度を増大させることを特徴とするデータの分析方法。
  12. 請求項9に記載のデータの分析方法であって、
    前記第3のステップは、
    前記第2の計算機のプロセッサの演算負荷を取得して、前記第2の計算機のプロセッサの前記演算負荷に応じて前記データ分析並列度を変更することを特徴とするデータの分析方法。
JP2017111514A 2017-06-06 2017-06-06 計算機システム及びデータの分析方法 Active JP6799501B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2017111514A JP6799501B2 (ja) 2017-06-06 2017-06-06 計算機システム及びデータの分析方法
PCT/JP2018/015983 WO2018225389A1 (ja) 2017-06-06 2018-04-18 計算機システム及びデータの分析方法
US16/495,761 US11314752B2 (en) 2017-06-06 2018-04-18 Computer system and data analysis method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017111514A JP6799501B2 (ja) 2017-06-06 2017-06-06 計算機システム及びデータの分析方法

Publications (2)

Publication Number Publication Date
JP2018206114A JP2018206114A (ja) 2018-12-27
JP6799501B2 true JP6799501B2 (ja) 2020-12-16

Family

ID=64566594

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017111514A Active JP6799501B2 (ja) 2017-06-06 2017-06-06 計算機システム及びデータの分析方法

Country Status (3)

Country Link
US (1) US11314752B2 (ja)
JP (1) JP6799501B2 (ja)
WO (1) WO2018225389A1 (ja)

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6965895B2 (en) * 2001-07-16 2005-11-15 Applied Materials, Inc. Method and apparatus for analyzing manufacturing data
JP4288978B2 (ja) * 2003-03-27 2009-07-01 株式会社日立製作所 データ先読み方法
US20050131893A1 (en) * 2003-12-15 2005-06-16 Sap Aktiengesellschaft Database early parallelism method and system
JP2015095226A (ja) * 2013-11-14 2015-05-18 富士通株式会社 情報処理装置、データアクセス方法およびプログラム
JP5681781B2 (ja) * 2013-12-24 2015-03-11 株式会社野村総合研究所 データ利用システム
US10949382B2 (en) * 2014-01-15 2021-03-16 Commvault Systems, Inc. User-centric interfaces for information management systems
US20180053114A1 (en) * 2014-10-23 2018-02-22 Brighterion, Inc. Artificial intelligence for context classifier
WO2015193973A1 (ja) 2014-06-17 2015-12-23 三菱電機株式会社 情報処理装置および情報処理方法
US9852026B2 (en) * 2014-08-06 2017-12-26 Commvault Systems, Inc. Efficient application recovery in an information management system based on a pseudo-storage-device driver
JP6393193B2 (ja) * 2014-09-30 2018-09-19 Kddi株式会社 データ仮想化装置及び大規模データ処理プログラム
EP3018581B1 (en) 2014-11-06 2017-03-08 Fujitsu Limited Data staging management system

Also Published As

Publication number Publication date
US20200110747A1 (en) 2020-04-09
WO2018225389A1 (ja) 2018-12-13
US11314752B2 (en) 2022-04-26
JP2018206114A (ja) 2018-12-27

Similar Documents

Publication Publication Date Title
US11500875B2 (en) Multi-partitioning for combination operations
US11620286B2 (en) Continuous cloud-scale query optimization and processing
US20190095493A1 (en) Multi-partition operation in combination operations
JP6799255B2 (ja) ジョブ消費電力推定プログラム、並列処理装置およびジョブ消費電力推定方法
US20110154339A1 (en) Incremental mapreduce-based distributed parallel processing system and method for processing stream data
JP2011123817A (ja) ジョブ振分装置、ジョブ振分プログラム及びジョブ振分方法
JP2014525082A (ja) 規模変更可能なデータ記憶サービスを実装するためのシステムおよび方法
CN101681256A (zh) It自动化装置成像系统和方法
US20130226873A1 (en) Storage system and method for controlling storage system
JP6692454B2 (ja) 継続的インテグレーションシステム及びリソース制御方法
WO2020132640A1 (en) Coordinator for preloading time-based content selection graphs
JP5120451B2 (ja) 配置方法及び配置システム
US11281507B2 (en) API selection system and API selection method
JP2009223497A (ja) 管理マシン、管理システム、管理プログラム、および、管理方法
JP2005251048A (ja) システムモニタリング方法
JP6799501B2 (ja) 計算機システム及びデータの分析方法
US9536044B2 (en) Metadata extraction pipeline
JP5695571B2 (ja) サーバー装置及びコンテンツ取得方法
US20210042271A1 (en) Distributed garbage collection for dedupe file system in cloud storage bucket
JP6568232B2 (ja) 計算機システム、及び、装置の管理方法
Blöcher et al. ROME: All Overlays Lead to Aggregation, but Some Are Faster than Others
JP2006344025A (ja) 稼動性能データ取得方法、性能監視サーバ、業務サーバ、計算機及びコンピューティングシステム
JP4869384B2 (ja) 動作履歴抽出装置及び方法
JP6015299B2 (ja) 設定値反映方法自動生成登録装置
JP4578442B2 (ja) 検証装置、および検証プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191219

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20201104

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201120

R150 Certificate of patent or registration of utility model

Ref document number: 6799501

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150