JPWO2018150503A1 - データ処理方法、分散型データ処理システム及び記憶媒体 - Google Patents

データ処理方法、分散型データ処理システム及び記憶媒体 Download PDF

Info

Publication number
JPWO2018150503A1
JPWO2018150503A1 JP2018540088A JP2018540088A JPWO2018150503A1 JP WO2018150503 A1 JPWO2018150503 A1 JP WO2018150503A1 JP 2018540088 A JP2018540088 A JP 2018540088A JP 2018540088 A JP2018540088 A JP 2018540088A JP WO2018150503 A1 JPWO2018150503 A1 JP WO2018150503A1
Authority
JP
Japan
Prior art keywords
base
data
column
integration
server
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.)
Granted
Application number
JP2018540088A
Other languages
English (en)
Other versions
JP6546704B2 (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
Publication of JPWO2018150503A1 publication Critical patent/JPWO2018150503A1/ja
Application granted granted Critical
Publication of JP6546704B2 publication Critical patent/JP6546704B2/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/25Integrating or interfacing systems involving database management systems
    • 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/5061Partitioning or combining of resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • 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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/15Correlation function computation including computation of convolution operations
    • 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/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Algebra (AREA)
  • Computer And Data Communications (AREA)

Abstract

統括サーバが、拠点サーバから収集したデータを処理する分散型データ処理システムのデータ処理方法であって、拠点サーバが、データを収集して標準化してからノードカット処理によって拠点データを生成し、前記統括サーバが、複数の拠点サーバから前記拠点データの列の属性情報と、前記拠点サーバのノードカット処理による前記拠点データの統合元と統合先の関係を拠点列統合情報として収集し、複数の拠点データを結合した場合に、統合元と統合先を入れ替えてデータ量を削減可能な統合元と統合先の組み合わせを算出する入替演算の結果、前記データ量を削減可能な統合元と統合先の組み合わせが存在する場合には、前記組み合わせを入替指示として前記拠点サーバに通知する。

Description

本発明は、分散型のデータ処理システムでデータ量を削減する技術に関する。
ビッグデータの分析や、IoT(Internet of Things)等のセンサから取得したデータの分析を行う分散型のデータ処理システムでは、複数の拠点(工場や支社等)と統括拠点(例えば、本社)でデータの分析を行っている。
分散型のデータ処理システムとしては、例えば、特許文献1が知られている。特許文献1では、クライアントが持つジョブの一部をサーバに分散させ、サーバは受信したジョブの部分を実行してクライアントに応答する。これにより、ジョブ全体の処理時間を短縮させている。
また、大量のデータを扱う場合では、拠点と統括拠点との間での通信コストを削減するため、グラフ化によってデータ圧縮を行う技術が知られている(例えば、特許文献2)。
また、大量のデータを統合する手法として、表データ内で同じ値の列が複数存在する場合には、一つの列に統合する技術も知られている。
国際公開第2007/070491号 国際公開第2015/114830号
IoTやビッグデータを扱う場合、各拠点に分散しているデータ量は膨大であるため、これらの拠点のデータをそのまま統括拠点に収集することは通信及び蓄積のコストが過大になってしまう。拠点ごとにデータを統合してデータ量を削減してから、拠点単位で統計分析を行っており、拠点が保持するデータは拠点単位で行われる統計分析に合わせた統計処理がなされている。
この統計処理として前記従来例の列の統合を適用してデータ量を削減する場合では、拠点毎に統合する列を決定するため、拠点毎に除外する列が異なる場合がある。この統計処理を施した拠点のデータを、統括拠点に収集して拠点毎のデータを結合すると、第1の拠点で除外していたデータを、第2の拠点では利用する場合が生じ、同種のデータを重複して結合することになる。この結果、前記従来例では、データ量の削減が円滑に行われずに、通信コストと演算コストの削減を推進できない、という問題があった。
そこで、本発明は上記問題点に鑑みてなされたもので、統括拠点で収集したデータのうち同種のデータが重複している場合には、拠点毎に統合するデータを最適化してデータ量の削減を行うことを目的とする。
本発明は、プロセッサとメモリを有する統括サーバが、プロセッサとメモリを有する拠点サーバから収集したデータを処理する分散型データ処理システムのデータ処理方法であって、前記拠点サーバが、前記データを収集して標準化してからノードカット処理によって拠点データを生成する第1のステップと、前記統括サーバが、複数の拠点サーバから前記拠点データと、前記拠点データの列の属性と、前記拠点サーバのノードカット処理による前記拠点データの統合元と統合先の関係を収集する第2のステップと、前記統括サーバが、前記複数の拠点データを結合したときに、統合元と統合先を入れ替えてデータ量を削減可能な統合元と統合先の組み合わせを算出する入替演算を行う第3のステップと、前記統括サーバが、前記入替演算の結果、前記データ量を削減可能な統合元と統合先の組み合わせが存在する場合には、前記組み合わせを入替指示として前記拠点サーバに通知する第4のステップと、を含む。
本発明によれば、統括サーバが各拠点サーバから収集した拠点データを結合した結果、削減(統合)可能なデータを抽出して各拠点に通知することで、各拠点の統計処理を最適化して、統括サーバで収集するデータ量を削減することが可能となる。
本発明の実施例1を示し、分散型のデータ処理システムの一例を示すブロック図である。 本発明の実施例1を示し、拠点サーバで行われる処理の一例を示すフローチャートである。 本発明の実施例1を示し、拠点サーバの拠点列統合部で行われる処理の一例を示すフローチャートである。 本発明の実施例1を示し、拠点列統合部で行われる処理の一例を示すフローチャートである。 本発明の実施例1を示し、統括サーバで行われる処理の一例を示すフローチャートである。 本発明の実施例1を示し、統括サーバの統合済列抽出部で行われる処理の一例を示すフローチャートである。 本発明の実施例1を示し、統括サーバの入替演算部で行われる処理の一例を示すフローチャートである。 本発明の実施例1を示し、拠点サーバの拠点列情報表の一例を示す図である。 本発明の実施例1を示し、拠点サーバの拠点列統合表の一例を示す図である。 本発明の実施例1を示し、拠点サーバの列優先度表の一例を示す図である。 本発明の実施例1を示し、統括サーバの拠点サーバ情報表の一例を示す図である。 本発明の実施例1を示し、統括サーバの列属性情報表の一例を示す図である。 本発明の実施例1を示し、統括サーバの列統合情報表の一例を示す図である。 本発明の実施例1を示し、統括サーバの列状態表の一例を示す図である。 本発明の実施例1を示し、拠点サーバのセンサデータの一例を示す図である。 本発明の実施例1を示し、拠点サーバの拠点データの一例を示す図である。 本発明の実施例1を示し、統括サーバの全拠点データと拠点データの一例を示す図である。 本発明の実施例1を示し、分散型のデータ処理システムの機能要素の一例を示すブロック図である。 本発明の実施例2を示し、拠点サーバで行われる処理の一例を示すフローチャートである。 本発明の実施例2を示し、統括サーバで行われる処理の一例を示すフローチャートである。 本発明の実施例2を示し、統括サーバの入替演算部で行われる処理の一例を示すフローチャートである。 本発明の実施例2を示し、統括サーバの拠点サーバ情報表の一例を示す図である。 本発明の実施例2を示し、統括サーバの全拠点データの一例を示す図である。 本発明の実施例3を示し、拠点サーバで行われる処理の一例を示すフローチャートである。 本発明の実施例3を示し、統括サーバで行われる処理の一例を示すフローチャートである。 従来例を示し、エッジカット処理の一例を示す図である。 本発明の実施例3を示し、統括サーバで行われるエッジカット処理の一例を示す図である。 本発明の実施例4を示し、統括サーバで行われる処理の一例を示すフローチャートである。 従来例を示し、全拠点データと分散処理結果の一例を示す図である。 本発明の実施例4を示し、全拠点データと分散処理結果の一例を示す図である。
以下、本発明の一実施形態について添付図面を用いて説明する。
図1は、本発明の実施例1の分散型のデータ処理システムの一例を示すブロック図である。分散型のデータ処理システムは、生産ライン3からセンサデータを収集して拠点サーバ4で分析を行う拠点2−1〜2−kと、ネットワーク5を介して各拠点2−1〜2−k各拠点のデータを収集して分析を行う統括サーバ1とを含む。なお、拠点の全体を指すときは「−」以降を省略した符号「2」を用いる。他の構成要素の符号についても同様である。また、統括サーバ1が所属する拠点を統括拠点とする。
<拠点の構成>
以下、拠点2の構成について説明する。なお、拠点2−1(第1拠点)と拠点2−2(第2拠点)〜2−k(第k拠点)の構成は同様であるので、重複する説明は省略する。
拠点2は、工程毎にセンサ31を設置した生産ライン3と、センサ31が測定したセンサデータを収集して分析を行う拠点サーバ4とを含む。拠点サーバ4は、演算処理を実行する中央演算処理装置41と、センサ31や統括サーバ1と通信を行う通信インタフェース42と、データやプログラムを格納する補助記憶装置43と、データやプログラムを保持する主記憶装置44と、を含む計算機である。
拠点サーバ4は、生産ライン3のセンサ31からセンサデータ45を収集して補助記憶装置43に格納する。拠点サーバ4は、前記従来例に示した列の統合をセンサデータ45に適用してデータ量を削減して拠点データ56を生成する。そして、拠点サーバ4は、拠点データ56を用いて当該拠点2に予め設定された分析処理や統計処理を実施する。
各拠点サーバ4で実施する分析処理は、各拠点2毎に個々の問題点などを抽出するために実施される。このため、データ量を削減するために行う列の統合処理では、拠点2毎に統合の対象となるセンサデータ45の列は異なる場合が生じる。このため、後述するように、各拠点2の拠点サーバ4は、統括拠点となる統括サーバ1からの入替指示を受け付けて、統合する列の最適化を図る。なお、本実施例1では、入替指示として、更新した列優先度表59を統括サーバ1が送信する例を示す。
拠点サーバ4は、主記憶装置44にデータ収集部51と、拠点入替判定部52と、拠点列統合部53と、拠点分析部54と、送受信部55をプログラムとしてロードして中央演算処理装置41で実行する。また、主記憶装置44には、各プログラムが利用するデータとして、拠点データ56と、拠点列情報表57と、拠点列統合表58と、列優先度表59が保持される。
中央演算処理装置41は、各機能部のプログラムに従って処理することによって、所定の機能を提供する機能部として稼働する。例えば、中央演算処理装置41は、データ収集プログラムに従って処理することでデータ収集部51として機能する。他のプログラムについても同様である。さらに、中央演算処理装置41は、各プログラムが実行する複数の処理のそれぞれの機能を提供する機能部としても稼働する。計算機及び計算機システムは、これらの機能部を含む装置及びシステムである。
拠点サーバ4の各機能を実現するプログラム、テーブル等の情報は、補助記憶装置43や不揮発性半導体メモリ、ハードディスクドライブ、SSD(Solid State Drive)等の記憶デバイス、または、ICカード、SDカード、DVD等の計算機読み取り可能な非一時的データ記憶媒体に格納することができる。
データ収集部51は、生産ライン3のセンサ31からセンサデータ45を収集する。拠点入替判定部52は、統括サーバ1からの入替指示に基づいて、指定されたセンサデータ45の列が統合可能か否かを判定し、可能であれば統合する列を変更する。拠点列統合部53は、拠点入替判定部52の判定結果に基づいて、前記従来例と同様に、センサデータ45から値が重複する列を除外してデータ量を削減した拠点データ56を生成する。
拠点分析部54は、生成された拠点データ56に対して、拠点2毎に定められた分析処理や統計処理を実施し、処理結果を出力する。送受信部55は、統括サーバ1やセンサ31との通信を実施する。
センサデータ45と、拠点データ56と、拠点列情報表57と、拠点列統合表58と、列優先度表59については後述する。
<統括拠点の構成>
統括拠点として機能する統括サーバ1は、演算処理を実行する中央演算処理装置11と、各拠点2の拠点サーバ4と通信を行う通信インタフェース12と、データやプログラムを格納する補助記憶装置13と、データやプログラムを保持する主記憶装置14と、分析結果の表示などを行う入出力部16と、を含む計算機である。統括サーバ1は、各拠点2で生成した拠点データ56を収集して、予め設定した統括拠点の分析処理を行う。
統括サーバ1は、まず、拠点サーバ4から取得する拠点データ56について統合する列の最適化を実施して、各拠点サーバ4へ入替指示を送信する。統括サーバ1は、統合する列の最適化が完了した後に、各拠点サーバ4から拠点データ56を収集して補助記憶装置13に格納する。統括サーバ1は、各拠点2の拠点データ56を結合して全拠点データ15を生成し、全拠点データ15に対して所定の分析処理や統計処理を実施する。統括サーバ1で実施する分析処理は、各拠点2全体に関する問題点などを抽出するために実施される。
統括サーバ1は、各拠点2−1〜2−kの拠点サーバ4から拠点データ56を収集して結合したと仮定した場合に、拠点サーバ4側の統合処理で、さらにデータが削減可能であるか否かを判定する。統括サーバ1は、各拠点データ56を結合して全拠点データ15とする際に、さらにデータの削減が可能な列の組み合わせがあれば拠点サーバ4に通知して、拠点データ56の最適化を実施させる。この処理が、統合する例の最適化である。この処理を繰り返すことで、統括サーバ1が拠点2から拠点データ56を取得する際のデータ量を順次削減する。これにより、各拠点2の拠点サーバ4から収集した拠点データ56を結合した後の全拠点データ15を最適化して生成し、統括サーバ1の分析処理で使用する全拠点データ15のデータ量を削減できる。
統括サーバ1は、主記憶装置14に統合済列抽出部21と、送受信部22と、入替演算部23と、統括入力データ生成部24と、統括分析部25とをプログラムとしてロードして中央演算処理装置11で実行する。また、主記憶装置14には、各プログラムが利用するデータとして、列優先度表26と、拠点サーバ情報表27と、列属性情報表28と、列統合情報表29と、列状態表30が保持される。
また、結合された全拠点データ15は、補助記憶装置13に格納することができる。入出力部16は、キーボードやマウスやタッチパネルなどの入力装置と、ディスプレイなどの出力装置を含む。
中央演算処理装置11は、各機能部のプログラムに従って処理することによって、所定の機能を提供する機能部として稼働する。例えば、中央演算処理装置11は、統合済列抽出プログラムに従って処理することで統合済列抽出部21として機能する。他のプログラムについても同様である。さらに、中央演算処理装置11は、各プログラムが実行する複数の処理のそれぞれの機能を提供する機能部としても稼働する。計算機及び計算機システムは、これらの機能部を含む装置及びシステムである。
統括サーバ1の各機能を実現するプログラム、テーブル等の情報は、補助記憶装置13や不揮発性半導体メモリ、ハードディスクドライブ、SSD(Solid State Drive)等の記憶デバイス、または、ICカード、SDカード、DVD等の計算機読み取り可能な非一時的データ記憶媒体に格納することができる。
統括サーバ1は、分析処理を実施する前に、各拠点2の拠点サーバ4から拠点データ56の状態等を示す属性情報などを受信する。統合済列抽出部21は、拠点サーバ4から受信した情報に基づいて、列属性情報表28と、列統合情報表29と、列状態表30とを生成する。
入替演算部23は、各拠点2の列属性情報表28と列統合情報表29及び列状態表30を参照し、拠点データ56を結合した場合に、さらに統合可能な列があるか否かを判定する。統合可能な列があれば、入替演算部23が入替指示を生成する。送受信部22は、該当する拠点サーバ4に入替指示を送信する。なお、本実施例1では、入替演算部23が、対象の拠点2の列優先度表59を更新したものを入替指示として拠点サーバ4に送信する例を示す。
統括入力データ生成部24は、各拠点2からの拠点データ56と各拠点データ56の属性情報等を取得して、各拠点データ56を結合して全拠点データ15を生成する。統括分析部25は生成された全拠点データ15を対象として、統括拠点で設定された所定の分析処理を実行して処理結果を出力する。
全拠点データ15と、列優先度表26と、拠点サーバ情報表27と、列属性情報表28と、列統合情報表29と、列状態表30については後述する。
<テーブル>
まず、拠点サーバ4で管理されるテーブルについて説明する。拠点サーバ4では、センサデータ45と、拠点データ56と、拠点列情報表57と、拠点列統合表58と、列優先度表59が生成される。
図15は、センサデータ45の一例を示す図である。拠点サーバ4が生産ライン3のセンサ31から収集したセンサデータ45は、時刻451と、列の識別子毎に測定した値を格納するデータ452−1〜452−nと、を一つのエントリに含む。図示の例では、列の識別子を1〜nとした例を示す。
時刻451は、センサデータ45が測定されたときのタイムスタンプが格納される。各拠点2−1〜2−kのデータ451〜451−nは、センサ31が測定したセンサデータ45である。
図16は、拠点データ56の一例を示す図である。拠点データ56は、拠点列統合部53によってセンサデータ45の列のうち、同一(または類似)の値の列をひとつの列に統合したテーブルである。
拠点データ56は、時刻551と、列の識別子毎にセンサデータ45を格納するデータ562−1〜552−nと、を一つのエントリに含む。図示の例では、データ562−1と552−3が同一(または類似)の値と判定され、データ562−3の列が除外(図中黒色)され、データ562−1の列に統合(図中斜線)された例を示す。すなわち、図中、斜線のフィールドは値を使用する統合先を示し、図中黒色のフィールドは、値を使用しない統合元を示す。
拠点サーバ4の拠点列統合部53は列単位で、値が同一または値が類似する列を抽出して、ひとつの列に統合する。なお、統合する列は、後述の列優先度表59の情報やラウンドロビン等、予め設定された条件で選択される。なお、列の値の類似は、センサデータ45の値が比例関係にある列同士を類似する列と判定することができ、例えば、データ452−1とデータ452−4は値が比例しているので類似関係である。
図8は、拠点列情報表57の一例を示す図である。拠点列情報表57は、センサデータ45及び拠点データ56の各列の値の内容または属性を識別するために各拠点2で設定されるテーブルである。
拠点列情報表57は、列の識別子を格納する列ID571と、センサ31が測定するセンサデータ45の名称を格納する列名572と、センサデータ45の値の属性情報を格納する列属性573と、を一つのエントリに含む。
列ID571は、拠点データ56のデータ562−1〜562−nに対応する列の識別子である。本実施例1では、列の識別子は拠点2内でユニークな値であり、1〜nの識別子を使用する。
図9は、拠点列統合表58の一例を示す図である。拠点列統合表58は、拠点データ56で除外された列と、統合先の列の関係を示すテーブルである。拠点列統合表58は、シリアル番号581と、統合先の列名を格納する統合先582と、拠点データ56で除外された列名を格納する統合元583と、データが一致(または類似)した行数を格納する一致行数584と、を一つのエントリに含む。
図示の例では、列名が「外気温」の列に「機器1温度」と「機器1感度」の列が統合得されたことを示す。換言すれば、拠点データ56において、「機器1温度」と「機器1感度」に対応するデータが除外されて、「外気温」の列に統合されたことを示す。
なお、本実施例1では、拠点データ56で値が一致(または類似)した行数を一致行数584に格納する例を示すが、値が一致した行数と全行数の比率を格納するようにしてもよい。
図10は、優先度表59の一例を示す図である。列優先度表59は、統括サーバ1で生成されて、2つの列のうち統合先とする列と、除外する列が設定されたテーブルである。
列優先度表59は、シリアル番号591と、統合先として優先すべき列の識別子を格納する優先列ID592と、統合元として除外すべき列の識別子を格納する非優先列ID593と、を一つのエントリに含む。
なお、統括サーバ1の列優先度表26も図10と同様であり、シリアル番号591と、優先列ID592と、非優先列ID593とを一つのエントリに含む。統括サーバ1の列優先度表26は、システム設定の列優先度として統括サーバ1でのノウハウなどに基づいて予め設定される。
図11は、統括サーバ1の拠点サーバ情報表27の一例を示す図である。拠点サーバ情報表27は、統括サーバ1が拠点2から各種情報等を受信したときに更新される。
拠点サーバ情報表27は、シリアル番号271と、拠点2の識別子を格納する拠点ID272と、拠点2が管理するセンサ31の数を格納するセンサ数273と、拠点データ56の行数を格納するデータ行数274と、拠点データ56の容量を格納するデータサイズ275と、を一つのエントリに含む。
図12は、統括サーバ1の列属性情報表28の一例を示す図である。なお、列属性情報表28は、統括サーバ1が拠点サーバ4毎に生成することができる。列属性情報表28は、統括サーバ1が各拠点2の拠点サーバ4から受信した拠点データ56のデータ562−1〜562−nの属性等が設定されたテーブルである。
列属性情報表28は、拠点データ56及び全拠点データ15の列の識別子を格納する列ID281と、各列の拠点データ56の名称を格納する列名称282と、拠点データ56の属性を格納する列属性283と、を一つの列に含む。
列ID281は、拠点データ56の562−1〜562−nに対応して1〜nの値が設定される。
すなわち、列ID281=「1」には、センサデータ45の名称=列名称282が「外気温」で、センサデータ45の属性=列属性283が「温度」のデータが格納される。
図13は、統括サーバ1の列統合情報表29の一例を示す図である。列統合情報表29は、統括サーバ1が各拠点2から拠点列統合表58等を受信したときに生成される。なお、列統合情報表29は、統括サーバ1が拠点サーバ4毎に生成することができる。
列統合情報表29は、拠点データ56の列の識別子を格納する列ID291と、各拠点データ56の列で値が一致した行の比率を格納する統合済率292と、拠点ID=1(拠点2−1)の統合先を示す拠点ID=1統合情報293と、拠点ID=2(拠点2−2)の統合先を示す拠点ID=2統合情報294と、をひとつの列に含む。なお図示はしないが、列統合情報表29は、拠点ID=k(拠点2−k)までの行を含む。
統合済率292は、各列(1〜n)ID291の行数に対して、統合元の列の値と一致した行数の比率が格納される。統合済率292が0%の列ID291は、他の列に統合されなかったことを示す。統合済率292が100%の列ID291=3は、他の列(列ID291=1)に統合されたことを示す。
拠点ID=1統合情報293、拠点ID=2統合情報294では、「なし」の列ID291は、他の列に統合されなかったことを示し、「1」の列ID291=「3」は、統合先の列IDを示す。
図14は、統括サーバ1の列状態表30の一例を示す図である。なお、列状態表30は、統括サーバ1が拠点サーバ4毎に生成することができる。
列状態表30は、拠点データ56の各列と他の列の値の一致率を格納する。列状態表30は、比較対象の列IDを格納する列ID301と、列ID302〜列ID306を一つのエントリに含む。なお、図示の例では、列ID302〜列ID306が、列ID=1〜4とnを示す。
列ID301が「比較列ID=3」、列ID302=「1」では「100%一致」となっており、列ID=3と列ID=1の拠点データ56が全ての拠点2で一致することを示す。
列ID301が「比較列ID=4」で、列ID304=「3」では「90%一致」となっており、列ID=3と列ID=4の拠点データ56は、90%が一致することを示す。
図17は、統括サーバ1の全拠点データ15と拠点データ56の関係を示す図である。全拠点データ15は各拠点2の拠点サーバ4から収集した拠点データ56を、結合したテーブルである。
全拠点データ15は、タイムスタンプを格納する時刻151と、列の識別子(以下、列ID)=1〜5の拠点データ56を格納するデータ151−1〜151−5を含む。なお、図示の例では、列ID=1〜5としたが、実際には列ID=1〜nの標準化された拠点データ56を含む。
図示の全拠点データ15は、拠点2−1(第1拠点)の拠点データ56−1と、拠点2−2(第2拠点)の拠点データ56−2と、拠点2−3(第3拠点)の拠点データ56−3を、同一の列ID毎に結合した例を示している。図16と同様に、図中、斜線のフィールドは値を使用する統合先を示し、図中黒色のフィールドは、値を使用しない統合元を示す。
図示の例では、第1拠点の拠点データ56−1は、列ID=3が列ID=1に統合され、第2拠点の拠点データ56−2は、列ID=1が列ID=3に統合され、第3拠点の拠点データ56−3は、列ID=1が列ID=2に統合されている。
統括サーバ1で、各拠点データ56を結合したと仮定すると、第2拠点の拠点データ56−2と第3拠点の拠点データ56−3では、列ID=1を除外して他の列に統合しているのに対し、第1拠点の拠点データ56−1では列ID=1を除外せずに統合先としている点が異なる。
これに対して、第1拠点の拠点データ56−1で、列ID=1を列ID=3に統合すれば、図中全拠点データ15Aのように、列ID=1のデータは不要になり、各拠点2の拠点サーバ4は、列ID=2と列ID=3のデータを統括サーバ1へ送信すればよい。この結果、拠点サーバ4と統括サーバ1間のデータ転送量を削減できる。
そこで、本実施例1の統括サーバ1は、第1拠点の拠点サーバ4で統合する列IDの入替を指令する。すなわち、統括サーバ1は、第1拠点の拠点サーバ4に対して列ID=1を列ID=3へ統合するよう指令する。第1拠点の拠点サーバ4は、次回に生成する拠点データ56−1について、統合先の列ID=1を列ID=3に入れ替えて、列方向のデータの統合を実施する。
<システムの概要>
図18は、分散型のデータ処理システムの機能要素の一例を示すブロック図である。拠点サーバ4は、生産ライン3のセンサ31からセンサデータ45を収集する。そして、管理者などの指令に応じて分析を行う際には、まず、拠点列統合部53が分析対象のセンサデータ45から、同一あるいは類似する列を除外してデータ量を削減した拠点データ56を生成する。
拠点分析部54は、生成された拠点データ56に対して所定の分析処理を実施して分析結果を出力する。なお、分析処理の実行は、毎週または毎月など拠点2の管理者などが定めた所定のタイミングで実施される。
送受信部55は、統合された列に関する情報や拠点データ56等を統括サーバ1へ送信する。
統括サーバ1は、各拠点2の拠点サーバ4からの拠点データ56を収集する前に、統合する列の最適化を実施する。最適化が完了すると、統括サーバ1は、各拠点サーバ4から拠点データ56を取得し、拠点データ56を結合8して全拠点データ15を生成して、統括拠点における所定の分析処理を実施する。なお、分析処理の実行は、毎週または毎月など統括拠点の管理者などが定めた所定のタイミングで実施される。
統括サーバ1の統合済列抽出部21は、各拠点サーバ4から統合された列の情報(拠点列統合表58、拠点列情報表57)を取得する(図中(1))。入替演算部23は、抽出された列IDと列優先度表26から入れ替えが可能な列IDを算出する。入替演算部23は、拠点データ56を結合したときに、データ量を削減可能な列IDの組み合わせが存在すれば、送受信部22から拠点サーバ4へ入替指示を送信する(2)。なお、入替指示には、複数の列IDの組み合わせを含む拠点2毎の列優先度表59を用いることができる。
入替指示を受信した拠点サーバ4では、拠点入替判定部52が入替指示(列優先度表59)を参照して、統合する列IDを入れ替えることが可能であるか否かを判定する。入れ替えが可能であれば、拠点入替判定部52は拠点列統合部53に統合先を入れ替える列IDを通知する。拠点列統合部53は、列優先度表59を更新して次回の拠点データ56の生成時に、入替指示を反映させる。統括サーバ1では、データ量を削減可能であれば、上記統合する列の最適化処理を繰り返して実行する。
統括サーバ1は、最適化処理が完了すると、統括入力データ生成部24が、各拠点サーバ4から拠点データ56を取得し(3)、各拠点データ56を結合して全拠点データ15を生成する。そして、統括分析部25は、全拠点データ15を用いて、統括拠点で予め設定された所定の分析処理を実行する。
以上のように、本実施例1の分散型データ処理システムでは、統括拠点の統括サーバ1は分析処理を行う前に、各拠点サーバ4で統合する列の最適化を実施して、入れ替え可能でデータ量を削減可能な列IDの組み合わせを算出する。統括サーバ1はデータ量を削減可能な列IDの組み合わせを拠点サーバ4に通知して、次回の拠点データ56の生成時に統合する列IDを変更させる。
上記処理を繰り返すことで、統括サーバ1で分析処理を行う際に収集する拠点データ56のデータ量を徐々に削減することが可能となる。なお、本実施例1では、統括サーバ1が、拠点列統合表58等に基づいて統合する列の最適化を行った後に、各拠点サーバ4から処理対象のデータ(拠点データ56)を収集する例を示したが、これに限定されるものではない。例えば、統括サーバ1が、最初に分析対象の拠点データ56を収集した後に統合する列の最適化を行うようにしてもよい。
<処理の詳細>
図2は、拠点サーバ4で行われる処理の一例を示すフローチャートである。この処理は、拠点2の分析処理を実行する際に開始される。なお、拠点サーバ4は、図示しない入出力装置から分析対象のセンサデータ45が指定される。
ステップS1では、拠点サーバ4のデータ収集部51が、センサ31からセンサデータ45を収集して、拠点列情報表57を生成(または更新)する。
次に、ステップS2では、拠点サーバ4の拠点列統合部53が、列優先度表59を参照し、センサデータ45の列毎のデータを比較して値が一致する列や、値が比例する列の組み合わせを特定し、統合(除外)対象の列IDを算出する。なお、この列単位でデータを除外してデータ量を削減する処理をノードカット処理とする。本実施例のノードカット処理では、統合元(除外対象)の列を統合先(使用データ)の列へ統合する。
また、拠点列統合部53は、図9で示したように、統合対象の列名を拠点列情報表57から取得して拠点列統合表58を生成する。拠点列統合部53は、センサデータ45から統合元の列を削除したデータを拠点データ56として生成する。
ステップS4では、拠点データ56を用いて拠点分析部54が所定の分析処理を実行する。
ステップS3では、送受信部55が拠点列情報表57のデータと、拠点列統合表58のデータと、拠点データ56の行数及びデータサイズを、統括サーバ1へ送信する。なお、ステップS3とステップS4の処理は非同期で行うことができる。なお、この時点では、拠点データ56の送信は行われない。
ステップS5では、送受信部55が統括サーバ1から列の入替指示または終了通知を受信する。そして、ステップS6で送受信部55は、最適化の終了通知を受信したか否かを判定する。終了通知を受信していればステップS11へ進み、受信していなければステップS7へ進む。
ステップS7では、拠点入替判定部52が、入替指示を受け付けて列優先度表59を参照して入れ替えが可能であるか否かを判定する。拠点入替判定部52は、入替指示に含まれる統合先の列IDと統合元の列IDが、列優先度表59の非優先列ID593と優先列ID592と一致していなければ入れ替え可能と判定し、そうでない場合には入れ替え不能と判定する。
ステップS8では、拠点入替判定部52が、判定結果が入れ替え可能であればステップS9へ進み、入れ替え不能であればステップS10へ進む。ステップS9では、拠点入替判定部52が、入替指示で指定された統合先の列IDと、統合元の列IDを入替リスト(図示省略)に格納する。なお、入替リストは、統合先の列IDと統合元の列IDの組み合わせ複数格納することができる。
ステップS10では、拠点入替判定部52が、入替指示の列IDのペアを全て処理したか否かを判定する。拠点入替判定部52は、全ての列IDのペアについて処理が完了していればステップS2へ戻って上記処理を繰り返し、完了していない場合にはステップS7へ戻って上記処理を繰り返す。
一方、上記ステップS6の判定で終了通知を受信したステップS11では、送受信部55が分析の入力データとなる拠点データ56と、更新された拠点列統合表58のデータを統括サーバ1へ送信して処理を終了する。
上記処理によって、拠点サーバ4では、ノードカット処理によってセンサデータ45のデータ量を削減した拠点データ56を生成し、データ量を削減した情報(拠点列統合表58)と拠点データ56の属性情報(拠点列情報表57)とを生成し、これらのデータを統括サーバ1へ送信する。
そして、拠点サーバ4は、統括サーバ1から入替指示を受け付けると、拠点2の列優先度表59で指定されていない列IDの組み合わせであれば、入替リストに加えて次回のノードカット処理に適用する。なお、拠点サーバ4は、入替リストの内容を列優先度表59に追加しておく。
このように、統合する列の最適を行っておくことで、統括サーバ1では、各拠点2から収集する拠点データ56のデータ量を削減することが可能となる。
図3は、拠点サーバ4の拠点列統合部53で行われる処理の一例を示すフローチャートである。この処理は、図2のステップS2で行われる。
まず、ステップS21では、拠点列統合部53が、分析対象のセンサデータ45を取得して、正規分布などの周知の手法によって標準化する。次に、拠点列統合部53は、標準化されたセンサデータ45の列の数に応じてステップS22〜S27の繰り返しを実施し、さらに、標準化されたセンサデータ45の列数−1でステップS23〜S26の繰り返しを実施する。
ステップS24では、拠点列統合部53が、後述の2列間のノードカット処理を実施して、現在選択しているセンサデータ45(i列)を列単位で除外してj列に統合可能であれば、当該i列を除外して拠点データ56を生成する。なお、本実施例1では、i列を除外する例を示すが、j列を除外してもよく、ユーザが指定した除外ルールを適用することができる。ユーザが指定した除外ルールは、例えば、「列番号が大きい列を除外」や「データ分散値の小さい列を除外」などとすることができる。
ステップS25では、拠点列統合部53が、現在選択しているi列のセンサデータ45を除外したか否かを判定する。拠点列統合部53が、i列のセンサデータ45を除外していればステップS27へ進んで次の列(i+1)に進み、そうでない場合には次の列(j+1)の処理を実施する。
上記処理によって、拠点列統合部53は標準化されたセンサデータ45のi列とj列のデータを比較して、データが一致する場合にはi列(またはj列)を除外して拠点データ56を生成する。
図4は、拠点サーバ4の拠点列統合部53で行われる処理の一例を示すフローチャートである。この処理は、図3のステップS24で行われる。
まず、ステップS31では、拠点列統合部53が、標準化されたセンサデータ45のi列とj列で値が一致する行数を算出する。次に、ステップS32では、拠点列統合部53が、標準化されたセンサデータ45のi列とj列で全ての行で値が一致するか否かを判定する。全ての行で値が一致していればステップS33へ進み、一致していなければ処理を終了して上記図3の処理に戻る。
ステップS33では、拠点列統合部53が拠点2の列優先度表59を参照して、現在のi列とj列の関係が拠点2側の列優先度表59で指定されていれば、当該指定を選択してステップS36へ進み、指定されていなければステップS34へ進む。
ステップS34では、拠点列統合部53が統括サーバ1の列優先度表26を参照して、現在のi列とj列の関係が統括サーバ1の列優先度表26で指定されていれば、当該指定を選択してステップS36へ進み、指定されていなければステップS35へ進む。なお、統括サーバ1の列優先度表26がシステム指定の優先度表となる。
ステップS35では、拠点列統合部53が拠点2のユーザ(または管理者)が指定した方法で除外する列(統合元)を決定する。
ステップS36では、拠点列統合部53が、上記選択された指定によって、標準化されたセンサデータ45のi列のデータを削除して拠点データ56を生成する。すなわち、拠点列統合部53は、i列のデータをj列に統合する。そして、拠点列統合部53は、拠点列情報表57を参照して列IDから統合元のi列の列名572と、統合先のj列の列名572を取得し、拠点列統合表58に追加する。また、拠点列統合部53は、i列とj列で値が一致した行数を拠点列統合表58の一致行数584に設定する。
ステップS37では、拠点列統合部53が、拠点列統合表58の統合先を参照して除外する列が含まれている場合には、除外する列の統合先を変更し、拠点列統合表58を更新する。
上記処理によって、標準化されたセンサデータ45は、i列とj列で各行の値が一致した場合には、i列をj列に統合してデータ量を削減した拠点データ56を生成し、統合元のi列と、統合先のj列の関係を加えた拠点列統合表58を生成する。
図5は、統括サーバ1で行われる処理の一例を示すフローチャートである。この処理は、統括サーバ1で、分析処理を実行するときに行われる。
ステップS40では、統合済列抽出部21が各拠点2毎の列優先度表59を生成する。また、統合済列抽出部21が統括拠点の列優先度表26を生成する。列優先度表59、26は、各拠点2のノウハウなどに応じて予め設定されて、2つの列のうち統合先とする列と、除外する列が設定されたテーブルである。なお、各拠点の列優先度表59については、予め設定した後に、統括サーバ1から受信した入替指示の内容をフィードバックすることができる。
ステップS41では、送受信部22が、各拠点2の拠点サーバ4から統合する列の情報として、拠点列情報表57のデータと、拠点列統合表58のデータと、拠点データ56の行数とデータサイズを受信する。ステップS42では、統合済列抽出部21が受信した拠点2毎の統合する列の情報に基づいて、列属性情報表28と、列統合情報表29と、列状態表30を生成する。
統合済列抽出部21は、各拠点2の拠点列情報表57の列ID571と列名572と列属性573を、それぞれ列属性情報表28の列ID281と列名称282と列属性283に設定して、列属性情報表28を生成する。
統合済列抽出部21は、各拠点2の拠点列統合表58の統合先582と統合元583と一致行数584と、拠点列情報表57の列名572と列ID571から列統合情報表29を生成する。
列統合情報表29の統合済率292は、統合済列抽出部21が、統合先582の一致行数584を全行数で除した100分率(割合)を格納する。
また、統合済列抽出部21は、拠点ID=1統合情報293、拠点ID=2統合情報294には、データの存在する列ID291に「1」を設定し、データの存在しない列ID291に「なし」を設定する。なお、図示はしないが、拠点ID=3〜kについても、各列ID=1〜nに対応する拠点ID=3統合情報〜拠点ID=k統合情報が列状態表30に含まれる。
統合済列抽出部21は、各拠点2の拠点列統合表58統合先582と統合元583と一致行数584と、拠点列情報表57の列名572と列ID571から列状態表30を生成する。列状態表30は、列IDと比較列IDでデータ一致する比率を格納する。
ステップS43では、入替演算部23が、後述する図7のように、各拠点データ56で統合可能な列を増やす組み合わせを選択する。そして、送受信部22は、統合先582に追加可能な統合元583が存在すれば、該当する拠点2の列優先度表59を更新する。
ステップS44では、送受信部22が入れ替え可能な列の組み合わせがあるか否かを判定する。送受信部22は、入替演算部23の演算結果で、入れ替え可能な列の組み合わせが存在すればステップS45へ進み、存在しなければステップS46に進む。
ステップS45では、送受信部22が、各拠点2の列優先度表59を拠点サーバ4へ送信する。これにより、統括サーバ1は、統合する列の入れ替えを拠点サーバ4へ通知することができる。ステップS45の処理の後には、ステップS41へ戻って、上記処理を繰り返す。
一方、入れ替えの必要がないステップS46では、送受信部22が各拠点サーバ4に入れ替えの終了通知を送信する。また、送受信部22が、統括サーバ1での分析処理に必要な拠点データ56を該当する拠点2の拠点サーバ4へ要求する。
ステップS47では、送受信部22が、要求した拠点データ56と拠点列情報表57のデータを受信する。ステップS48では、統括入力データ生成部24が、各拠点2の拠点データ56と、拠点列情報表57のデータと、列属性情報表28のデータとを突き合わせ、各拠点データ56を結合して全拠点データ15を生成する。
次に、ステップS49では、統括分析部25が、全拠点データ15を入力として、所定の分析処理を実行する。ステップS50では、統括分析部25が、分析結果の列IDを列属性情報表28の列ID281に突き合わせて、分析結果の列名称282を取得して分析結果に付与する。
上記処理により、統括サーバ1は、各拠点サーバ4から受信した統合する列の情報に基づいて、統合可能な列を増大可能な列の組み合わせを算出して、統合可能な列が増大可能であれば、各拠点2の列優先度表59を更新して統合する列を入れ替える。これにより、統括サーバ1が受信する拠点データ56のデータ量を削減することが可能となる。
また、統括サーバ1は、統合可能な列を増大できなくなるまで各拠点2の列優先度表59の更新を繰り返すことで、各拠点サーバ4で統合する列を最適化することが可能となるのである。
図6は、統括サーバ1の統合済列抽出部21で行われる処理の一例を示すフローチャートである。この処理は、図5のステップS42で実行される。
ステップS51では、統合済列抽出部21が、各拠点2の拠点列情報表57から共通する列名572と列属性573を選択して、列統合情報表29を生成する。統合済列抽出部21は、列ID281をシーケンシャルに割り当てて、各拠点2で共通する列データの列名称282と列属性283を設定する。ステップS52では、上述したように、列統合情報表29と、列状態表30を生成する。
ステップS53では、統合済列抽出部21が、列統合情報表29に割り当てた列ID281の数=iだけステップS58までの処理を繰り返す。また、ステップS54では、統合済列抽出部21が、拠点サーバ4の数だけステップS57までの処理を繰り返す。
ステップS55では、現在選択している列ID281=iで、現在選択している拠点データ56で列名称282と列属性283に一致する列にデータがあるか否かを判定する。データが存在すればステップS56へ進み、データがなければステップS57に進む。
ステップS56では、統合済列抽出部21が、列ID=iについて、列統合情報表29に統合情報と統合済率292を設定し、列状態表30に上述した一致率を設定する。
上記処理を、各拠点2の統合する列の情報について繰り返し、さらに、列ID=iまで繰り返すことで、列統合情報表29と列状態表30が生成される。
図7は、統括サーバ1の入替演算部23で行われる処理の一例を示すフローチャートである。この処理は、図5のステップS43で実行される。
ステップS61では、入替演算部23が、列統合情報表29の入替演算が未了の列で、かつ、統合済率292が最も高い列ID291を選択する。なお、図示はしないが、拠点列情報表57等に、入替演算が未了か完了のいずれであるかを示すフラグやビットを設定し、入替演算部23が処理したときに当該フラグやビットを設定すれば良い。
次に、ステップS62では、入替演算部23が、当該列ID291に統合可能な列が存在するか否かを判定する。統合可能な列が存在すればステップS63へ進み、列が存在しない場合にはステップS66へ進む。
入替演算部23は、例えば、各拠点2の拠点列統合表58の統合元583の中に、上記選択された列ID281が含まれる組み合わせがあれば、当該組み合わせを入れ替えが必要な列の組み合せとして選択する。図13に示した列ID=4を例に挙げると、統合済率が90%で拠点ID=1のデータが統合できていない状態を示す。そこで入替演算部23は、拠点ID=1の列優先度表59を参照して、列ID=4が他の列と統合されていないことを判定してから列の入れ替えを実施する。
そして、ステップS63では、入替演算部23が、当該組み合わせに対応する拠点2の列優先度表59で、上記選択された列ID281の優先列ID592に設定し、前記選択された組み合わせの統合先582を非優先列ID583に設定して更新する。なお、当該エントリの列優先度表59には、図示はしないが、入替命令であることを示すフラグやビットを含めるようにしても良い。
次に、入替演算部23は、上記優先列ID592に設定した列ID281について、当該拠点2の拠点データ56を入れ替えたと仮定した統合済率292を算出する。そして、ステップS64では、入替演算部23が、入れ替えを実施したと仮定した統合済率292=100%であるか否かを判定する。
換言すれば、入替演算部23は、上記優先列ID592に、全ての拠点データ56が統合されたことを判定する。全ての拠点データ56が統合されていれば、ステップS65へ進み、そうでなければ上記ステップS62へ戻って上記処理を繰り返す。
次に、ステップS65では、入替演算部23が、入れ替えした状態を算出して列状態表30に書き込んで、入替を実施した箇所と該当する列をロックする。これにより、当該拠点2の列状態表30は確定される。
ステップS66では、入替演算部23が、列統合情報表29を検索して統合済率292が0%を超え、かつ、入替演算が未了の列が存在するか否かを判定する。すなわち、入替演算部23は、他の列に統合されてはいるが、入替演算が未了の拠点データ56が存在するか否かを判定する。
入替演算部23は、他の列に統合されて、かつ、入替演算が未了の拠点データ56が存在すれば上記ステップS61へ戻って上記処理を繰り返し、存在しなければ当該処理を終了し、図5の処理へ戻る。
上記処理を行うことで、入替演算部23は、入れ替え可能な列を検出して、拠点2毎の列優先度表59を更新することで、各拠点サーバ4へ統合対象の列を入れ替える指令を出力することができる。
以上、本実施例1によれば、統括拠点の統括サーバ1は各拠点2から収集した統合する列の情報に基づいて、拠点データ56を結合した場合に、削減可能なデータの列の組み合わせを検出して各拠点2へ通知することで、各拠点2の統計処理を最適化して、かつ、統括拠点の統括サーバ1で収集する拠点データ56のデータ量を削減することが可能となる。
なお、上記実施例1では、統括サーバ1の入替演算部23で、統合可能な列数が増大する列の組み合わせ(結合後の拠点データ56(全拠点データ15)の列数が最小)がなくなってから、拠点データ56を結合した全拠点データ15を生成する例を示したが、これに限定されるものではない。例えば、統括サーバ1は、統合可能な列数が増大する列の組み合わせを入替指示として、拠点サーバ4へ送信した後、現在受信している拠点データ56を結合して全拠点データ15を生成して、統括分析部25に分析を実施させても良い。そして、統括サーバ1は、入替指示を反映した拠点データ56を次回の分析に用いるようにすることができる。
また、上記実施例1では、統合可能な列数が増大する列の組み合わせを列優先度表59に含めて拠点サーバ4へ送信する例を示したが、これに限定されるものではない。例えば、統括サーバ1は、統合可能な列数が増大する列の組み合わせを入替指示として拠点サーバ4へ送信することができる。
図19〜図23は、本発明の実施例2を示す。前記実施例1では図7のステップS64で示したように、全ての行が一致した場合に統合元の列を除外して統合先の列を利用する例を示したが、本実施例2では閾値以上の一致率で、統合元の列を統合先の列へ統合するものである。なお、その他の構成は前記実施例1と同様である。
図19は実施例2を示し、拠点サーバ4で行われる処理の一例を示すフローチャートである。本実施例2では、前記実施例1の図2の処理において、ステップS3をステップS3Aに置き換えたもので、その他の処理は前記実施例1の図2と同様である。
ステップS3Aでは、送受信部55が拠点列情報表57のデータと、拠点列統合表58のデータと、拠点データ56の行数とデータサイズに加えて、拠点データ56の列数を統括サーバ1へ送信する点が、前記実施例1と異なる。
図20は、統括サーバ1で行われる処理の一例を示すフローチャートである。本実施例2では、前記実施例1の図5の処理において、ステップS41の後にステップS401を追加したもので、その他の処理は前記実施例1の図5と同様である。
ステップS401では、統括サーバ1の送受信部22が、拠点データの列数や行数やデータサイズの情報を受信して拠点サーバ情報表27に設定する。このため、図22で示すように拠点サーバ情報表27にはデータ列数276のフィールドが追加され、拠点データ56の列数が格納される。
図21は、統括サーバ1の入替演算部23で行われる処理の一例を示すフローチャートである。本実施例2では、前記実施例1の図7のステップS64をステップS64Aに変更したもので、その他の処理は前記実施例1の図7と同様である。
ステップS64では、入替演算部23が、入れ替えを実施したと仮定した統合済率292が所定の閾値(例えば、70%)以上であるか否かを判定する。換言すれば、入替演算部23は、上記優先列ID592に、拠点データ56で閾値以上の行が統合されたことを判定する。閾値以上の行が統合されていれば、ステップS65へ進み、そうでなければ上記ステップS62へ戻って上記処理を繰り返す。
図23は、統括サーバ1の全拠点データ15と分析結果の一例を示す図である。本実施例2では、統合元の列ID=1と列ID=3の統合先の一致率が80%の例を示す。
本実施例2では、統合先と統合元の列IDで、行の一致率は閾値以上であれば良いので、分析結果に一致率を表示することで、分析ごとに列IDと一致率の推移を観察することで、経年劣化や異常検知に活用することができる。
図24〜図25、図27は、本発明の実施例3を示す。本実施例3では、拠点分析部54と統括分析部25でデータ圧縮と主成分分析(PCA:Principal Component Analysis)を実施する。なお、その他の構成は前記実施例1と同様である。なお、本実施例3のデータ圧縮としては、前記特許文献2のグラフ化によってデータ圧縮を行う技術(以下、エッジカット処理)を適用する例を示す。
図24は、拠点サーバ4で行われる処理の一例を示すフローチャートである。本実施例2では、前記実施例1の図2の処理において、ステップS4をステップS4Aに置き換えたもので、その他の処理は前記実施例1の図2と同様である。
ステップS4Aでは、拠点分析部54が拠点データ56にエッジカット処理によるデータ圧縮を行ってから主成分分析を行う。
図25は、統括サーバ1で行われる処理の一例を示すフローチャートである。本実施例3では、前記実施例1の図5の処理において、ステップS49をステップS49Aに置き換えたもので、その他の処理は前記実施例1の図5と同様である。
ステップS49Aでは、統括分析部25が、全拠点データ15にエッジカット処理によるデータ圧縮を行ってから主成分分析を行う。
図26は、従来例を示し、エッジカット処理を適用した主成分分析の一例を示す図である。エッジカット処理は目標処理時間を受け付けて、低相関のデータを除外していく技術である。ここで、処理対象の全拠点データ15に、相関が大きい指標が多くある場合、エッジカット処理の閾値が大きくなるなど、計算誤差が大きくなり、相関行列152では、本来の関係性が見えなくなってしまう場合があった。
図27は、本実施例3を示し、エッジカット処理を適用する前に、ノードカット処理を実施する例を示す図である。本実施例3では、前記実施例1と同様にノードカット処理を実施して、全拠点データ15(拠点2では拠点データ56)を生成する。
そして、本実施例3では、統括サーバ1が、ノードカット処理を行った全拠点データ15から相関行列153を生成し、この相関行列152に対してエッジカット処理を実行し、相関行列154を得る。これにより、エッジカット処理における閾値の上昇を抑制して、計算誤差を抑制することができるのである。
図28、図30は、本発明の実施例4を示す。本実施例4では、前記実施例3の処理に、統合元の列の名称を分析結果に付加するようにしたものである。なお、その他の構成は前記実施例3と同様である。
図28は、統括サーバ1で行われる処理の一例を示すフローチャートである。本実施例4では、前記実施例1の図5の処理において、ステップS50をステップS50Aに置き換えたもので、その他の処理は前記実施例1の図5と同様である。
ステップS50Aでは、統括分析部25が、分析結果の列IDを列属性情報表28の列ID281に突き合わせて、分析結果の列名称282を取得して分析結果に付与する。さらに、統括分析部25は、分析結果の列IDと列統合情報表29の列IDを突き合わせて、統合元の列IDを取得し、列属性情報表28から統合元の列名称282を取得して分析結果に付与する。
図29は、統括サーバ1が出力する分析結果の一例を示す図である。本実施例4では、分析結果に列の名称と、統合元の列の名称が併記されるため、元の列データ間の相関関係がわかりやすくなる、という利点がある。
<まとめ>
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に記載したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加、削除、又は置換のいずれもが、単独で、又は組み合わせても適用可能である。
また、上記の各構成、機能、処理部、及び処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、及び機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。

Claims (15)

  1. プロセッサとメモリを有する統括サーバが、プロセッサとメモリを有する拠点サーバから収集したデータを処理する分散型データ処理システムのデータ処理方法であって、
    前記拠点サーバが、前記データを収集して標準化してからノードカット処理によって拠点データを生成する第1のステップと、
    前記統括サーバが、複数の拠点サーバから前記拠点データの列の属性情報と、前記拠点サーバのノードカット処理による前記拠点データの統合元と統合先の関係を拠点列統合情報として収集する第2のステップと、
    前記統括サーバが、前記列の属性情報と前記拠点列統合情報に基づいて前記複数の拠点データを結合した場合に、統合元と統合先を入れ替えてデータ量を削減可能な統合元と統合先の組み合わせを算出する入替演算を行う第3のステップと、
    前記統括サーバが、前記入替演算の結果、前記データ量を削減可能な統合元と統合先の組み合わせが存在する場合には、前記組み合わせを入替指示として前記拠点サーバに通知する第4のステップと、
    を含むことを特徴とするデータ処理方法。
  2. 請求項1に記載のデータ処理方法であって、
    前記拠点サーバが、前記統括サーバからの入替指示を受信して前記拠点データを再度生成する第5のステップと、
    前記統括サーバが、複数の前記拠点データを収集し、当該収集した拠点データを結合して全拠点データを生成する第6のステップと、
    をさらに含むことを特徴とするデータ処理方法。
  3. 請求項2に記載のデータ処理方法であって、
    前記統括サーバが、前記全拠点データにエッジカット処理を行ってから所定の分析を実施する第7のステップと、
    をさらに含むことを特徴とするデータ処理方法。
  4. 請求項1に記載のデータ処理方法であって、
    前記入替演算は、
    前記拠点データの列の属性と、前記拠点サーバのノードカット処理による前記拠点データの統合元と統合先の関係に基づいて、前記拠点データの統合先の列と、統合元の列とを入れ替えることで、前記複数の拠点データを結合したときのデータ量を削減可能な列の組み合わせを算出することを特徴とするデータ処理方法。
  5. 請求項1に記載のデータ処理方法であって、
    前記ノードカット処理は、
    前記統合元の列と、統合先の列の値が一致する行数の比率が所定の閾値以上の場合には前記統合元の列を除外することを特徴とするデータ処理方法。
  6. 請求項2に記載のデータ処理方法であって、
    前記統括サーバが、前記全拠点データに所定の分析を実施する第8のステップを含み、
    前記第8のステップは、
    前記全拠点データについて、統合元の列と統合先の列の値が一致する行数の比率を一致率として算出し、前記分析の結果に前記一致率を付与することを特徴とするデータ処理方法。
  7. 請求項2に記載のデータ処理方法であって、
    前記統括サーバが、前記全拠点データに所定の分析を実施する第8のステップを含み、
    前記第8のステップは、
    前記全拠点データについて、統合元の列の情報を、前記拠点サーバのノードカット処理による前記拠点データの統合元と統合先の関係から取得して、前記分析の結果に前記統合元の列の情報を付与することを特徴とするデータ処理方法。
  8. プロセッサとメモリを有する統括サーバと、
    プロセッサとメモリを有する拠点サーバと、を含む分散型データ処理システムであって、
    前記拠点サーバは、
    データを収集するデータ収集部と、
    前記収集したデータを標準化してからノードカット処理によって拠点データを生成する拠点列統合部と、を含み、
    前記統括サーバは、
    複数の拠点サーバから前記拠点データの列の属性情報と、前記拠点サーバのノードカット処理による前記拠点データの統合元と統合先の関係を拠点列統合情報として収集する統合済列抽出部と
    前記列の属性情報と前記拠点列統合情報に基づいて前記複数の拠点データを結合した場合に、統合元と統合先を入れ替えてデータ量を削減可能な統合元と統合先の組み合わせを算出する入替演算部と、
    前記入替演算部の算出結果に、前記データ量を削減可能な統合元と統合先の組み合わせが存在する場合には、前記組み合わせを入替指示として前記拠点サーバに通知する送受信部と、
    を有することを特徴とする分散型データ処理システム。
  9. 請求項8に記載の分散型データ処理システムであって、
    前記拠点サーバは、
    前記統括サーバからの入替指示を受信して、前記拠点列統合部が前記拠点データを再度生成し、
    前記統括サーバは、
    複数の前記拠点データを収集し、当該収集した拠点データを結合して全拠点データを生成する統括入力データ生成部を、さらに有することを特徴とする分散型データ処理システム。
  10. 請求項9に記載の分散型データ処理システムであって、
    前記統括サーバは、
    前記全拠点データにエッジカット処理を行ってから所定の分析を実施する統括分析部をさらに有することを特徴とする分散型データ処理システム。
  11. 請求項8に記載の分散型データ処理システムであって、
    前記入替演算部は、
    前記拠点データの列の属性と、前記拠点サーバのノードカット処理による前記拠点データの統合元と統合先の関係に基づいて、前記拠点データの統合先の列と、統合元の列とを入れ替えることで、前記複数の拠点データを結合したときのデータ量を削減可能な列の組み合わせを算出することを特徴とする分散型データ処理システム。
  12. 請求項8に記載の分散型データ処理システムであって、
    前記ノードカット処理は、
    前記統合元の列と、統合先の列の値が一致する行数の比率が所定の閾値以上の場合には前記統合元の列を除外することを特徴とする分散型データ処理システム。
  13. 請求項9に記載の分散型データ処理システムであって、
    前記統括サーバは、
    前記全拠点データに所定の分析を実施する統括分析部をさらに有し、
    前記統括分析部は、
    前記全拠点データについて、統合元の列と統合先の列の値が一致する行数の比率を一致率として算出し、前記分析の結果に前記一致率を付与することを特徴とする分散型データ処理システム。
  14. 請求項9に記載の分散型データ処理システムであって、
    前記統括サーバは、
    前記全拠点データに所定の分析を実施する統括分析部をさらに有し、
    前記統括分析部は、
    前記全拠点データについて、統合元の列の情報を、前記拠点サーバのノードカット処理による前記拠点データの統合元と統合先の関係から取得して、前記分析の結果に前記統合元の列の情報を付与することを特徴とする分散型データ処理システム。
  15. プロセッサとメモリを有する拠点サーバを制御するプログラムを格納した記憶媒体であって、
    複数の拠点データの列の属性情報と、ノードカット処理による拠点データの統合元と統合先の関係を拠点列統合情報として収集する第1のステップと、
    前記列の属性情報と前記拠点列統合情報に基づいて複数の拠点データを結合した場合に、統合元と統合先を入れ替えてデータ量を削減可能な統合元と統合先の組み合わせを算出する入替演算を行う第2のステップと、
    前記入替演算の結果、前記データ量を削減可能な統合元と統合先の組み合わせが存在する場合には、前記組み合わせを入替指示として出力する第3のステップと、
    を前記拠点サーバに実行させるプログラムを格納した非一時的な計算機読み取り可能な記憶媒体。
JP2018540088A 2017-02-16 2017-02-16 データ処理方法、分散型データ処理システム及び記憶媒体 Active JP6546704B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/005614 WO2018150503A1 (ja) 2017-02-16 2017-02-16 データ処理方法、分散型データ処理システム及び記憶媒体

Publications (2)

Publication Number Publication Date
JPWO2018150503A1 true JPWO2018150503A1 (ja) 2019-02-28
JP6546704B2 JP6546704B2 (ja) 2019-07-17

Family

ID=63169805

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018540088A Active JP6546704B2 (ja) 2017-02-16 2017-02-16 データ処理方法、分散型データ処理システム及び記憶媒体

Country Status (3)

Country Link
US (1) US11132235B2 (ja)
JP (1) JP6546704B2 (ja)
WO (1) WO2018150503A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110362400B (zh) * 2019-06-17 2022-06-17 中国平安人寿保险股份有限公司 资源缓存的分配方法、装置、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11203327A (ja) * 1998-01-16 1999-07-30 Nec Corp 部品表管理方法および装置
JP2014096177A (ja) * 2014-01-22 2014-05-22 Fujitsu Ltd データ統合装置、データ統合方法およびデータ統合プログラムを記録したコンピュータ読み取り可能な記録媒体
WO2015145661A1 (ja) * 2014-03-27 2015-10-01 株式会社日立製作所 ストレージシステム及び重複データ排除方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6014655A (en) * 1996-03-13 2000-01-11 Hitachi, Ltd. Method of retrieving database
US6467051B1 (en) * 1998-10-09 2002-10-15 Agilent Technologies, Inc. Method and apparatus for selecting test point nodes of a group of components having both accessible and inaccessible nodes for limited access circuit test
US7908313B2 (en) * 2004-07-21 2011-03-15 The Mathworks, Inc. Instrument-based distributed computing systems
US7512700B2 (en) * 2005-09-30 2009-03-31 International Business Machines Corporation Real-time mining and reduction of streamed data
US8260803B2 (en) * 2010-09-23 2012-09-04 Hewlett-Packard Development Company, L.P. System and method for data stream processing
US10102248B2 (en) * 2012-10-10 2018-10-16 TmaxData Co., Ltd. Join type for optimizing database queries
WO2015114830A1 (ja) 2014-02-03 2015-08-06 株式会社日立製作所 計算機及びグラフデータ生成方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11203327A (ja) * 1998-01-16 1999-07-30 Nec Corp 部品表管理方法および装置
JP2014096177A (ja) * 2014-01-22 2014-05-22 Fujitsu Ltd データ統合装置、データ統合方法およびデータ統合プログラムを記録したコンピュータ読み取り可能な記録媒体
WO2015145661A1 (ja) * 2014-03-27 2015-10-01 株式会社日立製作所 ストレージシステム及び重複データ排除方法

Also Published As

Publication number Publication date
US11132235B2 (en) 2021-09-28
US20190042317A1 (en) 2019-02-07
WO2018150503A1 (ja) 2018-08-23
JP6546704B2 (ja) 2019-07-17

Similar Documents

Publication Publication Date Title
US10423647B2 (en) Descriptive datacenter state comparison
US20190213206A1 (en) Systems and methods for providing dynamic indexer discovery
US8054763B2 (en) Migration of switch in a storage area network
US9886451B2 (en) Computer system and method to assist analysis of asynchronous remote replication
KR100968301B1 (ko) 복사 기능 자동 선택 방법, 장치 및 컴퓨터 판독가능한 저장 매체
US10599476B2 (en) Device and method for acquiring values of counters associated with a computational task
CN114443639A (zh) 处理数据表及自动训练机器学习模型的方法和系统
JP4383484B2 (ja) メッセージ解析装置、制御方法および制御プログラム
CN113760847A (zh) 日志数据处理方法、装置、设备及存储介质
WO2018150503A1 (ja) データ処理方法、分散型データ処理システム及び記憶媒体
US10509678B2 (en) Management system for managing computer system
US10083121B2 (en) Storage system and storage method
US11374815B2 (en) Network configuration diagram generate method and recording medium
US20200076681A1 (en) Volume allocation management apparatus, volume allocation management method, and volume allocation management program
US20160004584A1 (en) Method and computer system to allocate actual memory area from storage pool to virtual volume
CN113778973A (zh) 数据存储方法和装置
JP5901962B2 (ja) コマンド処理システム及び方法
US8836466B2 (en) Monitoring system, device, monitoring method, and monitoring program
US10970288B2 (en) Analysis device
JP5472885B2 (ja) プログラム、ストリームデータ処理方法及びストリームデータ処理計算機
US20240103885A1 (en) Computer system, system configuration candidate output method, and storage medium storing system configuration candidate output program
JP2019047188A (ja) 分析管理システムおよび分析管理方法
JPWO2019012572A1 (ja) データリニエージ検出装置、データリニエージ検出方法、及びデータリニエージ検出プログラム
JPWO2018061070A1 (ja) 計算機システム及び分析ソースデータ管理方法
WO2018011985A1 (ja) 管理システム及びプラットフォーム構築支援方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180731

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: 20190618

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190621

R150 Certificate of patent or registration of utility model

Ref document number: 6546704

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150