JP2015210788A - 相関係数算出方法、相関係数算出プログラムおよび相関係数算出装置 - Google Patents

相関係数算出方法、相関係数算出プログラムおよび相関係数算出装置 Download PDF

Info

Publication number
JP2015210788A
JP2015210788A JP2014094069A JP2014094069A JP2015210788A JP 2015210788 A JP2015210788 A JP 2015210788A JP 2014094069 A JP2014094069 A JP 2014094069A JP 2014094069 A JP2014094069 A JP 2014094069A JP 2015210788 A JP2015210788 A JP 2015210788A
Authority
JP
Japan
Prior art keywords
correlation coefficient
series data
time
processing
layer
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
JP2014094069A
Other languages
English (en)
Other versions
JP6330456B2 (ja
Inventor
泰彦 金政
Yasuhiko Kanemasa
泰彦 金政
久保田 敦
Atsushi Kubota
敦 久保田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2014094069A priority Critical patent/JP6330456B2/ja
Priority to US14/672,942 priority patent/US10339203B2/en
Publication of JP2015210788A publication Critical patent/JP2015210788A/ja
Application granted granted Critical
Publication of JP6330456B2 publication Critical patent/JP6330456B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Operations Research (AREA)
  • Probability & Statistics with Applications (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Algebra (AREA)
  • Evolutionary Biology (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Debugging And Monitoring (AREA)

Abstract

【課題】階層全体のリクエストによる影響を除いた処理間の相関係数を算出すること。【解決手段】性能診断サーバ100は、多階層システム70から、時刻毎の実行回数を示す時系列データを取得し、時系列データを基にして、各階層でサーバに実行される処理タイプ間の相関係数を算出する。性能診断サーバ100は、各処理タイプ間の相関係数から、多階層全体のトレンドの影響を除去した偏相関係数を算出し、算出した偏相関係数によって、各処理タイプ間の相関係数を更新する。【選択図】図1

Description

本発明は、相関係数算出方法等に関する。
近年、多階層システムに対して応答遅延等に関する性能診断が行われている。例えば、多階層システムは、Web層、AP(Application)層、DB(Database)層など複数の階層から構成されている。多階層システムでは、各階層で処理が実行されて次の階層を呼び出すことにより処理が継続される。ここで、階層間での呼び出し関係が分からないので、下の階層のある処理タイプの応答遅延の影響を受けて、それを呼び出している上の階層の処理タイプの応答が遅延したとしても、この遅延を上の階層に起因する応答遅延と誤判定する場合がある。
図38は、階層間における応答遅延の伝搬の一例を示す図である。図38の各グラフにおいて、縦軸は応答時間に対応する軸であり、横軸は時刻に対応する軸である。グラフ10a,10bは、Web層10で動作する処理タイプW1,W2の応答時間と時刻との関係を示すグラフである。例えば、処理タイプW1は、11で応答遅延が発生している。処理タイプW2は、12a,12bで応答遅延が発生している。
グラフ20a,20bは、AP層20で動作する処理タイプA1,A2の応答時間と時刻との関係を示すグラフである。例えば、処理タイプA1は、21で応答遅延が発生している。処理タイプA2は、22で応答遅延が発生している。
グラフ30a,30bは、DB層30で動作する処理タイプD1,D2の応答時間と時刻との関係を示すグラフである。例えば、処理タイプD1は、31で応答遅延が発生している。
例えば、DB装置30のある処理タイプに応答遅延が発生すると、この処理タイプを呼び出している上の層の処理タイプの応答時間も増大し、見かけ上は、上位の階層の処理タイプに問題があるように見えてしまう。例えば、図38に示す例では、処理タイプD1の応答遅延31が伝搬して、応答遅延11,12a,12b,21,22が発生した場合には、見かけ上は、処理タイプA1,A2や、処理タイプW1,W2に問題があるように見える。
階層間の処理タイプ同士の呼び出し関係を特定すれば、応答遅延が、呼び出し関係によるものなのか、偶然の一致であるのかを判定でき、応答遅延を発生している処理タイプを特定できる。ここで、処理タイプの呼び出し関係を判定する従来技術1、従来技術2が存在する。
従来技術1は、異なる階層に属する2つの処理タイプについて、実行数の時系列データ同士を相関分析する。従来技術1は、相関分析した結果、「有意に相関あり」と判定した場合に、各処理タイプの間には呼び出し関係があると判定する。
図39は、従来技術1を説明するための図である。図39に示す例では、AP層20で動作する処理タイプを、処理タイプX,Y,Zとする。DB層30で動作する処理タイプを、処理タイプA,B,Cとする。処理タイプX,Y,Zの時系列データをそれぞれ、時系列データ20X,20Y,20Zとする。処理タイプAの時系列データを時系列データ30Aとする。各時系列データは、処理タイプによる各時刻の実行数を示すデータである。
従来技術1は、時系列データ30Aと時系列データ20Xとの相関係数を算出し、算出した相関係数が有意に相関有りといえる場合に、処理タイプAと処理対応Xとが呼び出し関係にあると判定する。従来技術1は、時系列データ30Aと時系列データ20Yとの相関係数を算出し、算出した相関係数が有意に相関有りといえる場合に、処理タイプAと処理対応Yとが呼び出し関係にあると判定する。従来技術1は、時系列データ30Aと時系列データ20Zとの相関係数を算出し、算出した相関係数が有意に相関有りといえる場合に、処理タイプAと処理対応Zとが呼び出し関係にあると判定する。
従来技術2は、下の階層のある処理タイプと、この処理タイプについて呼び出し候補となり得る上の階層の全処理タイプとの間で、時系列データの相関係数を総当たりで算出する。従来技術2は、上の階層の処理タイプを該当する相関係数の値に基づき、クラスタリングによって、相関係数の高いグループと、相関係数の低いグループに分け、相関係数の高いグループにグループ分けされた処理タイプを、呼び出し元の処理タイプとして判定する。
図40および図41は、従来技術2を説明するための図である。図40に示す例では、AP層20で動作する処理タイプを、処理タイプX,Y,Zとする。また、AP層20で動作する他の処理タイプの図示を省略する。DB層30で動作する処理タイプを、処理タイプ30Aとする。従来技術2は、処理タイプAと、AP層20の全処理タイプとの間で、時系列データの相関係数を総当たりで算出する。
従来技術2は、相関係数の算出結果を基にして、処理タイプをクラスタリングする。図41は、相関係数の分布を示すグラフであり、縦軸は処理タイプの数に対応する軸であり、横軸は相関係数に対応する軸である。従来技術2は、相関係数の大きさに応じて、グループ1A,1Bに分類し、グループBの相関係数に対応する処理タイプを、処理タイプAと呼び出し関係にある処理タイプとして判定する。
特開2002−7659号公報 特開2007−304647号公報
しかしながら、上述した従来技術では、階層全体のリクエストによる影響を考慮していないため処理タイプ間の呼び出し関係の有無を正確に判定できないという問題がある。
図42は、階層全体のリクエストによる影響の一例を示す図である。図42において、時系列データ40aは、多階層システムの全体の実行数と時刻との関係を示すものである。呼び出し頻度の高い処理タイプは、実行回数が多階層システムの全体の実行数に比例する傾向がある。例えば、処理タイプYおよび処理タイプAが呼び出し頻度の高い処理タイプとすると、処理タイプYの時系列データ40bと、処理タイプAの時系列データ40cとは、時系列データ40aに類似したものとなる。このため、処理タイプAが処理タイプYによって呼び出されていない場合でも、処理タイプAと処理タイプYとの相関係数が高くなり、処理タイプAが処理タイプYによって呼び出されていると誤判定してしまう。
1つの側面では、階層全体のリクエストによる影響を除いた処理間の相関係数を算出することができる相関係数算出方法、相関係数算出プログラムおよび相関係数算出装置を提供することを目的とする。
第1の案では、コンピュータは、下記の処理を実行する。コンピュータは、多階層で構成されるシステムの階層間の処理に対するリクエスト数の時系列データおよび階層ごとの全体リクエスト数の時系列データを算出する。コンピュータは、第1階層における第1の処理の時系列データと第2階層における第2の処理の時系列データ間の第1相関係数を算出する。コンピュータは、第2階層の全体リクエスト数の時系列データと第2の処理の時系列データ間の第2相関係数を算出する。コンピュータは、第2階層の全体リクエスト数の時系列データと第1の処理の時系列データ間の第3相関係数を算出する。コンピュータは、第1階層の全体リクエストが第3相関係数に与える影響を除いた第3偏相関係数を算出する。コンピュータは、第1階層の全体リクエストが第2相関係数に与える影響を除いた第2偏相関係数を算出する。コンピュータは、第1階層の全体リクエストが第1相関係数に与える影響を除いた第1偏相関係数を算出する。コンピュータは、第3偏相関係数および前記第2偏相関係数を用いて、第2階層の全体リクエストが第1偏相関係数に与える影響を除いた相関係数を前記第1処理と第2処理間の相関係数とする。
本発明の1実施態様によれば、階層全体のリクエストによる影響を除いた処理間の相関係数を算出することができる。
図1は、本実施例にかかるシステムの構成を示す図である。 図2は、本実施例に係る性能診断サーバの構成を示す機能ブロック図である。 図3は、第1時系列データのデータ構造の一例を示す図である。 図4は、相関係数テーブルのデータ構造の一例を示す図である。 図5は、第1偏相関係数テーブルのデータ構造の一例を示す図である。 図6は、ノードリストのデータ構造の一例を示す図である。 図7は、呼び出し関係情報のデータ構造の一例を示す図である。 図8は、多階層全体のトレンドの影響を示す図である。 図9は、多階層全体のトレンドの影響を除去する処理の一例を示す図(1)である。 図10は、多階層全体のトレンドの影響を除去する処理の一例を示す図(2)である。 図11は、多階層全体のトレンドの影響を除去する処理の一例を示す図(3)である。 図12は、多階層全体のトレンドの影響を除去する処理の一例を示す図(4)である。 図13は、同時呼び出しの影響を除去する処理の一例を示す図(1)である。 図14は、同時呼び出しの影響を除去する処理の一例を示す図(2)である。 図15は、同時呼び出しの影響を除去する処理の一例を示す図(3)である。 図16は、同時呼び出しの影響を除去する処理の一例を示す図(4)である。 図17は、同時呼び出しの影響を除去する処理の一例を示す図(5)である。 図18は、同時呼び出しの影響を除去する処理の一例を示す図(6)である。 図19は、同時呼び出しの影響を除去する処理の一例を示す図(7)である。 図20は、同時呼び出しの影響を除去する処理の一例を示す図(8)である。 図21は、同時呼び出しの影響を除去する処理の一例を示す図(9)である。 図22は、同時呼び出しの影響を除去する処理の一例を示す図(10)である。 図23は、同時呼び出しの影響を除去する処理の一例を示す図(11)である。 図24は、同時呼び出しの影響を除去する処理の一例を示す図(12)である。 図25は、同時呼び出しの影響を除去する処理の一例を示す図(13)である。 図26は、同時呼び出しの影響を除去する処理の一例を示す図(14)である。 図27は、同時呼び出しの影響を除去する処理の一例を示す図(15)である。 図28は、同時呼び出しの影響を除去する処理の一例を示す図(16)である。 図29は、同時呼び出しの影響を除去する処理の一例を示す図(17)である。 図30は、判定部の処理の一例を示す図である。 図31は、判定部の判定結果の画面例を示す図である。 図32は、呼び出し関係を判定する処理手順を示すフローチャート(1)である。 図33は、呼び出し関係を判定する処理手順を示すフローチャート(2)である。 図34は、同時呼び出しされる処理による影響を除去する処理手順を示すフローチャートである。 図35は、応答遅延を発生している処理タイプを判定する処理手順を示すフローチャートである。 図36は、同時呼び出しによる影響の一例を説明するための図である。 図37は、相関係数算出プログラムを実行するコンピュータの一例を示す図である。 図38は、階層間における応答遅延の伝搬の一例を示す図である。 図39は、従来技術1を説明するための図である。 図40は、従来技術2を説明するための図(1)である。 図41は、従来技術2を説明するための図(2)である。 図42は、階層全体のリクエストによる影響の一例を示す図である。
以下に、本願の開示する相関係数算出方法、相関係数算出プログラムおよび相関係数算出装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
図1は、本実施例にかかるシステムの構成を示す図である。図1に示すように、このシステムは、スイッチ60と、多階層システム70と、性能診断サーバ100とを有する。性能診断サーバ100は、相関係数算出装置の一例である。多階層システム70および性能診断サーバ100は、スイッチ60に接続される。スイッチ60は、ネットワーク50に接続される。
スイッチ60は、多階層システム70とネットワーク50とのデータ通信を中継する装置である。また、スイッチ60は、多階層システム70から実行回数の時系列データを受信した場合には、時系列データを性能診断サーバ100に送信する。
多階層システム70は、各層のサーバが協働して、サービスを提供するシステムである。例えば、多階層システムは、Web層71と、AP層72と、DB層73とを有する。Web層71は、Webブラウザなどのクライアントソフトウェアの要求に応じて、サービスを提供するサーバを有する層であり、サーバ71a,71b,71cを有する。Web層71は、その他のサーバを有していても良い。
AP層72は、プログラムの実行環境やWeb層71とDB層73とを連結する機能を有するサーバを有する層であり、サーバ72a,72bを有する。AP層72は、その他のサーバを有していても良い。DB層73は、Web層71やAP層72のサーバから要求されたデータを送信したり、操作要求を受け付けてデータの書き換えを行うサーバを有する層であり、サーバ73a,73bを有する。DB層73は、その他のサーバを有していても良い。
また、多階層システム70は、性能診断サーバ100からの要求に応じて、時系列データを性能診断サーバ100に送信する。この時系列データは、多階層システムの階層毎の各処理タイプの実行回数を、時刻毎に示す情報である。時系列データに関する具体的な説明は後述する。
性能診断サーバ100は、多階層システム70に対して応答遅延に関する性能診断を実行するサーバである。図2は、本実施例に係る性能診断サーバの構成を示す機能ブロック図である。図2に示すように、性能診断サーバ100は、通信部110と、入力部120と、表示部130と、記憶部140と、制御部150とを有する。
通信部110は、スイッチ60、ネットワーク50を介して他の装置とデータ通信を実行する処理部である。例えば、通信部110は、通信装置に対応する。後述する制御部150は、通信部110を介して、他の装置とデータをやり取りする。
入力部120は、各種の情報を性能診断サーバ100に入力するための入力装置である。例えば、入力部120は、キーボードやマウス、タッチパネル、入力ボタン等に対応する。表示部130は、制御部150から出力される情報を表示する表示装置である。表示部130は、液晶ディスプレイ、タッチパネル等に対応する。
記憶部140は、第1時系列データ141、相関係数テーブル142、偏相関係数テーブル143、ノードリスト144、呼び出し関係テーブル145、第2時系列データ146を有する。記憶部140は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ(Flash Memory)などの半導体メモリ素子などの記憶装置に対応する。
第1時系列データ141は、多階層システム70の各階層のサーバで実行される処理タイプの実行回数を時刻毎に示す情報である。第1時系列データ141は、呼び出し関係テーブル145を生成するために用いられる学習用の時系列データである。
図3は、第1時系列データのデータ構造の一例を示す図である。図3に示すように、この第1時系列データ141は、時刻と、階層情報と、処理タイプIDと、実行回数とを対応付ける。このうち、階層情報は、多階層システム70の階層を識別する情報である。処理タイプIDは、サーバで実行される処理タイプを識別する情報である。実行回数は、該当する時刻に、該当する処理タイプが何回実行されたのかを示す情報である。例えば、図3の1行目のレコードでは、時刻「7:00:01」において、「Web層」の「処理タイプO」が、「4回」実行されたことが示されている。
相関係数テーブル142は、処理タイプ間の相関係数の情報を保持するテーブルである。図4は、相関係数テーブルのデータ構造の一例を示す図である。図4に示すように、この相関係数テーブル142は、相関係数の組情報と、サンプル数と、相関係数とを対応付ける。相関係数の組情報は、相関係数を算出した処理タイプ等の組を示す情報である。なお、Web層全体は、Web層71で実行される全ての処理タイプを示す。AP層全体は、AP層72で実行される全ての処理タイプを示す。DB層全体は、DB層73で実行される全ての処理タイプを示す。図4の1行目のレコードでは「処理タイプX」と「処理タイプA」との相関係数が「CC(X,A)」であることを示される。図4の2行目のレコードでは「処理タイプX」と「AP層全体」との相関係数が「CC(X、TAPP)」であることが示される。サンプル数の説明は後述する。
第1偏相関係数テーブル143aは、処理タイプ間の偏相関係数の情報を保持するテーブルである。図5は、第1偏相関係数テーブルのデータ構造の一例を示す図である。図5に示すように、この第1偏相関係数テーブル143aは、偏相関係数の組情報と、サンプル数と、偏相関係数とを対応付ける。偏相関係数の組情報は、偏相関係数を算出した処理タイプの組を示す情報である。図5の1行目のレコードでは「処理タイプX」と「処理タイプA」との偏相関係数が「PCC(X,A−TAPP,TDB)」であることが示される。サンプル数の説明は後述する。
第2偏相関係数テーブル143bは、後述する第2算出部153によって算出された各処理タイプの偏相関係数の情報を保持するテーブルである。
ノードリスト144は、相関係数を算出した処理タイプについて、この処理タイプと同時に呼び出される処理タイプの候補の情報を保持するテーブルである。図6は、ノードリストのデータ構造の一例を示す図である。図6に示すように、このノードリスト144は、相関係数の組情報と、同時呼び出しされる処理タイプの候補とを対応付ける。相関係数の組情報は、相関係数を算出した処理タイプの組を示す情報である。同時呼び出しされる処理タイプの候補は、相関係数を算出した処理タイプについて、この処理タイプと同時に呼び出される処理タイプの候補を示す。例えば、図6の1行目に示す例では「処理タイプP、処理タイプQ、処理タイプY、処理タイプZ」は、「処理タイプX」および「処理タイプA」と同時に呼び出される処理タイプの候補である。
呼び出し関係テーブル145は、呼び出し関係にある処理タイプの組の情報を保持するテーブルである。図7は、呼び出し関係情報のデータ構造の一例を示す図である。図7の1行目のレコードでは「処理タイプX」と「処理タイプA」とが呼び出し関係にあることが示される。
第2時系列データ146は、多階層システム70の各階層のサーバで実行される各処理タイプの応答時間と時刻とを対応付けた情報である。応答時間は、サーバがサービスの要求を受けてから、サービスを提供するまでの時間である。
制御部150は、取得部151と、第1算出部152と、第2算出部153と、特定部154と、判定部155とを有する。制御部150は、例えば、ASIC(Application Specific Integrated Circuit)や、FPGA(Field Programmable Gate Array)などの集積装置に対応する。また、制御部150は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等の電子回路に対応する。
取得部151は、多階層システム70から時系列データを取得する処理部である。取得部151は、取得した時系列データを第1時系列データ141として、記憶部140に格納する。また、取得部151は、多階層システム70から、応答時間と時刻との関係を示すデータを取得した場合に、取得したデータを第2時系列データ146として、記憶部140に格納する。
第1算出部152は、第1時系列データ141を基にして、各処理タイプ間の相関係数を算出する処理部である。また、第1算出部152は、各処理タイプ間の相関係数から、多階層全体のトレンドの影響を除去することで、各処理タイプ間の相関係数を更新する。第1算出部152は、算出した各処理タイプ間の相関係数の情報を、相関係数テーブル142に登録する。
第1算出部152の処理について具体的に説明する。まず、第1算出部152は、第1時系列データ141を基にして、各処理タイプの実行回数と時刻との関係を示す時系列データを生成する。第1算出部152は、Web層71に含まれる全ての処理タイプの実行回数と時刻との関係を示す時系列データを生成する。第1算出部152は、AP層72に含まれる全ての処理タイプの実行回数と時刻との関係を示す時系列データを生成する。第1算出部152は、DP層73に含まれる全ての処理タイプの実行回数と時刻との関係を示す時系列データを生成する。
続いて、第1算出部152は、各時系列データを生成した後に、各処理タイプ間の相関係数を算出する。例えば、処理タイプXの時系列データと処理タイプAの時系列データとの相関係数をCC(X,A)と表記する。
第1算出部152は、Web層71全体の時系列データと各処理タイプの時系列データとの相関係数を算出する。例えば、Web層71全体の時系列データと処理タイプXの時系列データとの相関係数をCC(X,TWeb)と表記する。
第1算出部152は、AP層72全体の時系列データと各処理タイプの時系列データとの相関係数を算出する。例えば、AP層72全体の時系列データと処理タイプXの時系列データとの相関係数をCC(X,TAPP)と表記する。
第1算出部152は、DB層73全体の時系列データと各処理タイプの時系列データとの相関係数を算出する。例えば、DB層73全体の時系列データと処理タイプXの時系列データとの相関係数をCC(X,TDB)と表記する。
また、第1算出部152は、Web層71全体の時系列データとAP層72全体の時系列データとの相関係数CC(TWeb,TAPP)を算出する。第1算出部152は、AP層72全体の時系列データとDB層73全体の時系列データとの相関係数CC(TAPP,TDB)を算出する。第1算出部152は、相関係数の算出結果を、相関係数テーブル142に登録する。
続いて、第1算出部152は、各相関係数を算出した後に、各処理タイプ間の相関係数から、多階層全体のトレンドの影響を除去するための処理を実行する。図8は、多階層全体のトレンドの影響を示す図である。図8では一例として、AP層72、DB層73について説明する。
図8に示すように、AP層全体の時系列データ74のトレンドが、処理タイプXの時系列データ72X、処理タイプYの時系列データ72Y、処理タイプZの時系列データ72Zに影響を与える。AP層全体の時系列データ74のトレンドが、DB層全体の時系列データ75に影響を与える。DB層全体の時系列データ75のトレンドが、処理タイプAの時系列データ73A、処理タイプBの時系列データ73B、処理タイプCの時系列データ73Cに影響を与える。
図9〜図12は、多階層全体のトレンドの影響を除去する処理の一例を示す図である。図9〜図12に示す例では、処理タイプXと処理タイプAとの相関係数から、多階層全体のトレンドの影響を除去した偏相関係数PCC(X,A−TAPP,TDB)を算出する例について説明する。ここでは、多階層全体のトレンドの一例として、AP層72全体の時系列データ74のトレンドおよびDB層73全体の時系列データ75のトレンドを示す。
図9について説明する。AP層72全体の時系列データ74とDB層73全体の時系列データ75との相関係数を、相関係数CC(TAPP,TDB)とする。AP層72全体の時系列データ74と処理タイプXの時系列データ72Xとの相関係数を、相関係数CC(X,TAPP)とする。AP層72全体の時系列データ74と処理タイプAの時系列データ73Aとの相関係数を、相関係数CC(A,TAPP)とする。DB層73全体の時系列データ75と処理タイプXの時系列データ72Xとの相関係数を、相関係数CC(X,TDB)とする。DB層73全体の時系列データ75と処理タイプAの時系列データ73Aとの相関係数を、相関係数CC(A,TDB)とする。処理タイプXの時系列データ72Xと処理タイプAの時系列データ73Aとの相関係数を、相関係数CC(X,A)とする。
第1算出部152は、以下の処理を実行して、AP層72全体の時系列データ74が、他の相関係数に与える影響を一つずつ除去する。図9において、第1算出部152は、相関係数CC(X,TDB)から、AP層72全体の時系列データ74の影響を除去した偏相関係数PCC(X,TDB−TAPP)を算出する。第1算出部152は、例えば、第1算出部152は、式(1)に基づいて、偏相関係数PCC(X,TDB−TAPP)を算出する。
Figure 2015210788
図10について説明する。第1算出部152は、相関係数CC(A,TDB)から、AP層72全体の時系列データ74の影響を除去した偏相関係数PCC(A,TDB−TAPP)を算出する。例えば、第1算出部152は、式(2)に基づいて、偏相関係数PCC(A,TDB−TAPP)を算出する。
Figure 2015210788
図11について説明する。第1算出部152は、相関係数CC(X,A)から、AP層72全体の時系列データ74の影響を除去した偏相関係数PCC(X,A−TAPP)を算出する。例えば、第1算出部152は、式(3)に基づいて、偏相関係数PCC(X,A−TAPP)を算出する。算出部152が、図9〜図11に示す処理を実行することで、AP層72全体の時系列データ74の影響を、相関係数CC(X,TDB)、CC(A,TDB)、CC(X,A)から除去できる。
Figure 2015210788
図12について説明する。第1算出部152は、DB層73全体の時系列データ75が、処理タイプXと処理タイプAとの相関係数に与える影響を除去する。具体的に、第1算出部152は、式(4)に基づいて、DB層73全体の時系列データ75が、処理タイプXと処理タイプAとの相関係数(偏相関係数PCC(X,A−TAPP))に与える影響を除去した偏相関係数PCC(X,A−TAPP,TDB)を算出する。
Figure 2015210788
第1算出部152は、その他の処理タイプ間の相関係数についても、上記の処理と同様の処理を繰り返し実行することで、各処理タイプ間の相関係数から多階層全体のトレンドの影響を除去した偏相関係数を算出する。第1算出部152は、偏相関係数の算出結果を、第1偏相関数テーブル143aに登録する。
図2の説明に戻る。第2算出部153は、各処理タイプ間の相関係数(偏相関係数)から、同時呼び出しによる影響を除去する処理部である。図13〜図29は、同時呼び出しの影響を除去する処理の一例を示す図である。図13に示すように、ここでは一例として、処理タイプXと処理タイプAとの相関係数から、同時呼び出しによる影響を除去する場合について説明する。Web層71には、処理タイプO、処理タイプP、処理タイプQが存在するものとする。AP層72には、処理タイプX、処理タイプY、処理タイプZが存在するものとする。DB層73には、処理タイプA、処理タイプB、処理タイプCが存在するものとする。
図14について説明する。第2算出部153は、処理タイプXの階層以上にある全ての処理タイプO,P,Q,Y,Zを、処理タイプXと同時に呼び出される処理タイプの候補として特定する。第2算出部153は、第1偏相関数テーブル143aを参照し、同時に呼び出される処理タイプの候補のうち、処理タイプX,Aと有意水準α1で有意に相関がある処理タイプを特定する。第2算出部153は、処理タイプX,Aと有意水準α1で有意に相関のない処理タイプを、同時に呼び出される処理タイプの候補から削除する。第2算出部153は、処理タイプの組と、この処理タイプに対して、同時に呼び出される処理タイプとを、ノードリスト144に登録する。例えば、有意水準α1の値を、0.10とする。第2算出部153は、第1時系列データ141のサンプル数に応じて、適宜補正しても良い。
図14において、例えば、処理タイプXと、処理タイプP,Q,Zとの偏相関係数がそれぞれ、有意水準α1において有意に相関があるとする。また、処理タイプAと、処理タイプYとの偏相関係数が、有意水準α1において有意に相関があるとする。ここで、同時に呼び出される処理タイプの候補O,P,Q,Y,Zのうち、処理タイプOは、処理タイプX,Aの何れに対しても、偏相関係数が、有意水準α1において有意な相関が認められない。このため、第2算出部153は、同時に呼び出される処理タイプの候補から、処理タイプOを削除する。第2算出部153は、処理タイプX,Aの組と、同時に呼び出しされる処理タイプ候補P,Q,Y,Zとを対応付けて、ノードリスト144に登録する。第2算出部153は、その他の処理タイプの組に対しても、同時に呼び出しされる処理タイプ候補を特定し、ノードリスト144に登録する。
図15について説明する。第2算出部153は、残った処理タイプの間を全結合する。すなわち、第2算出部153は、処理タイプAと処理タイプP,Q,Y,Zとを結合する。第2算出部153は、処理タイプXと処理タイプP,Q,Y,Zとを結合する。第2算出部153は、処理タイプYと処理タイプA,X,Z,P,Qとを結合する。第2算出部153は、処理タイプZと、処理タイプA,X,Y,P,Qとを結合する。第2算出部153は、処理タイプPと、処理タイプA,X,Y,Z,Qとを結合する。第2算出部153は、処理タイプQと、処理タイプA,X,Y,Z,Pとを結合する。各リンクの初期値は、リンクの両端の処理タイプの偏相関係数となる。
図16について説明する。第2算出部153は、処理タイプP,Q,Y,Zを一つずつ取り除いていく。第2算出部153は、処理タイプを取り除く前に、取り除く処理タイプの影響を、リンクで結ばれる処理タイプ同士の偏相関係数に反映させる。ここでは、処理タイプQを、取り除く場合について説明する。第2算出部153は、処理タイプQを取り除く場合に、処理タイプZ−A間(1)の偏相関係数と、処理タイプQ−Z間の偏相関係数と、処理タイプQ−A間の偏相関係数とを基にして、処理タイプZ−A間(1)の偏相関係数を更新する。例えば、第2算出部153は、式(5)を基にして、処理タイプA−Z間(1)の偏相関係数を算出し、処理タイプA−Z間の偏相関係数を更新する。式(5)は、一般的な偏相関係数を算出する式に対応する。偏相関係数を算出する算出式は、一般的な偏相関係数を算出する式に従うものであるため、以下の説明では、具体的な式を省略する。
Figure 2015210788
図17について説明する。第2算出部153は、処理タイプQを取り除く場合に、処理タイプY−A間(2)の偏相関係数と、処理タイプQ−Y間の偏相関係数と、処理タイプQ−A間の偏相関係数とを基にして、処理タイプY−A間(2)の偏相関係数を更新する。
図18について説明する。第2算出部153は、処理タイプQを取り除く場合に、処理タイプX−A間(3)の偏相関係数と、処理タイプQ−X間の偏相関係数と、処理タイプQ−A間の偏相関係数を基にして、処理タイプX−A間(3)の偏相関係数を更新する。
図19について説明する。第2算出部153は、処理タイプQを取り除く場合に、処理タイプP−A間(4)の偏相関係数と、処理タイプQ−P間の偏相関係数と、処理タイプQ−A間の偏相関係数とを基にして、処理タイプP−A間(4)の偏相関係数を更新する。
図20について説明する。第2算出部153は、処理タイプQを取り除く場合に、処理タイプY−Z間(5)の偏相関係数と、処理タイプQ−Y間の偏相関係数と、処理タイプQ−Z間の偏相関係数とを基にして、処理タイプY−Z間(5)の偏相関係数を更新する。
図21について説明する。第2算出部153は、処理タイプQを取り除く場合に、処理タイプX−Z間(6)の偏相関係数と、処理タイプQ−X間の偏相関係数と、処理タイプQ−Z間の偏相関係数と基にして、処理タイプX−Z間(6)の偏相関係数を更新する。
図22について説明する。第2算出部153は、処理タイプQを取り除く場合に、処理タイプP−Z間(7)の偏相関係数と、処理タイプQ−P間の偏相関係数と、処理タイプQ−Z間の偏相関係数と基にして、処理タイプP−Z間(7)の偏相関係数を更新する。
図23について説明する。第2算出部153は、処理タイプQを取り除く場合に、処理タイプX−Y間(8)の偏相関係数と、処理タイプQ−X間の偏相関係数と、処理タイプQ−Y間の偏相関係数とを基にして、処理タイプX−Y間(8)の偏相関係数を更新する。
図24について説明する。第2算出部153は、処理タイプQを取り除く場合に、処理タイプP−Y間(9)の偏相関係数と、処理タイプQ−P間の偏相関係数と、処理タイプQ−Y間の偏相関係数を基にして、処理タイプP−Y間(9)の偏相関係数を更新する。
図25について説明する。第2算出部153は、処理タイプQを取り除く場合に、処理タイプP−X間(10)の偏相関係数と、処理タイプQ−P間の偏相関係数と、処理タイプQ−X間の偏相関係数を基にして、処理タイプP−X間(10)の偏相関係数を更新する。
図26について説明する。第2算出部153は、図13〜図25の処理を実行することで、各処理タイプ間(1)〜(10)の偏相関係数を更新し、処理タイプQの影響を取り除く。第2算出部153は、処理タイプQの影響を取り除いた後に、処理タイプQを除去する。例えば、第2算出部153は、ノードリスト144に登録された相関関係の組情報「処理タイプX、処理タイプA」に対応する同時呼び出しされる処理タイプから、処理タイプQを除去する。
図27について説明する。第2算出部153は、処理タイプQの影響を取り除く場合と同様にして、処理タイプZの影響を、各処理タイプ間の偏相関係数から取り除くことで、各処理タイプ間の偏相関係数の値を更新する。第2算出部153は、処理タイプZの影響を取り除いた後に、処理タイプZを除去する。例えば、第2算出部153は、ノードリスト144に登録された相関関係の組情報「処理タイプX、処理タイプA」に対応する同時呼び出しされる処理タイプから、処理タイプZを除去する。
図28について説明する。第2算出部153は、処理タイプQの影響を取り除く場合と同様にして、処理タイプPの影響を、各処理タイプ間の偏相関係数から取り除くことで、各処理タイプ間の偏相関係数の値を更新する。第2算出部153は、処理タイプPの影響を取り除いた後に、処理タイプPを除去する。例えば、第2算出部153は、ノードリスト144に登録された相関関係の組情報「処理タイプX、処理タイプA」に対応する同時呼び出しされる処理タイプから、処理タイプPを除去する。
図29について説明する。第2算出部153は、処理タイプQの影響を取り除く場合と同様にして、処理タイプYの影響を、各処理タイプ間の偏相関係数から取り除くことで、各処理タイプ間の偏相関係数の値を更新する。第2算出部153は、処理タイプYの影響を取り除いた後に、処理タイプYを除去する。例えば、第2算出部153は、ノードリスト144に登録された相関関係の組情報「処理タイプX、処理タイプA」に対応する同時呼び出しされる処理タイプから、処理タイプYを除去する。
第2算出部153は、図13〜図29に示す処理を実行することで、処理タイプXと処理タイプAとの偏相関係数から、同時呼び出しによる影響を除去することができる。第2算出部153は、最終的に得られた処理タイプXと処理タイプAとの偏相関係数を、第2偏相関係数テーブル143bに格納する。第2算出部153は、他の処理タイプ間の偏相関係数についても、図13〜図29に対応する処理を行うことで、各処理タイプ間の偏相関数から、同時呼び出しによる影響を除去することができる。
上記の第1算出部152および第2算出部153が処理を実行することで、第2偏相関係数テーブル143bに登録された偏相関係数は、多階層全体のトレンドの影響と、同時呼び出しによる影響が除去された偏相関係数となる。
特定部154は、第2偏相関係数テーブル143bを基にして、呼び出し関係にある処理タイプの組を特定する処理部である。特定部154は、呼び出し関係にある処理タイプの組の情報を、呼び出し関係テーブル145に登録する。
特定部154は、第2偏相関係数テーブル147を参照し、有意水準α2において、有意に相関があるといえる処理タイプの組を特定する。例えば、有意水準α2の値を、0.01とする。特定部154は、有意水準α2と、相関係数を算出した際のサンプル数から算出される自由度(少ない方のサンプル数−2)と、第2偏相関係数テーブル147の偏相関係数とを比較し、偏相関係数が有意水準α2において有意に相関がある、処理タイプの組を特定する。例えば、図5において、偏相関係数PCC(X,A−TAPP,TDB)が、有意水準α2と与えられた自由度において相関があると認められる値以上である場合には、特定部154は、処理タイプXおよび処理タイプAが、呼び出し関係にあると特定する。ただし、図5の偏相関係数は、第1算出部152および第2算出部153によって、多階層全体のトレンドの影響と、同時呼び出しによる影響が除去された偏相関係数とする。また、ここで言うサンプル数とは、図3において、当該処理タイプの実行数が1以上であった時刻の数である。
判定部155は、呼び出し関係テーブル145および第2時系列データ146を基にして、応答遅延の発生している処理タイプを判定する処理部である。判定部155は、判定結果を、表示部130に表示させる。以下において、判定部155の処理について具体的に説明する。
判定部155は、第2時系列データ146をスキャンし、応答時間が閾値以上となる処理タイプを特定する。判定部155は、呼び出し関係テーブル145を参照し、各処理タイプの呼び出し関係を特定する。判定部155は、応答時間が閾値以上となる処理タイプのうち、呼び出し先の処理タイプも応答時間が閾値以上となっている場合には、呼び出し先の処理タイプを、応答遅延の発生している処理タイプとして判定する。また、判定部155は、応答時間が閾値以上となる処理タイプのうち、呼び出し先の処理タイプの応答時間が閾値以上となっていない場合には、呼び出し元の処理タイプを、応答遅延の発生している処理タイプとして判定する。
図30は、判定部の処理の一例を示す図である。図30において、応答時間データ72xは、処理タイプXの応答時間と時刻との関係を示すデータである。応答時間データ72yは、処理タイプYの応答時間と時刻との関係を示すデータである。応答時間データ73aは、処理タイプAの応答時間と時刻との関係を示すデータである。応答時間データ73bは、処理タイプBの応答時間と時刻との関係を示すデータである。また、図30に示す例では、処理タイプXと処理タイプAとが呼び出し関係にあり、呼び出し元を処理タイプX、呼び出し先を処理タイプAとする。処理タイプYと処理タイプBとが呼び出し関係にあり、呼び出し元を処理タイプY、呼び出し先を処理タイプBとする。
例えば、判定部155が、各応答時間データをスキャンすると、処理タイプX,A,Yにおいて、応答時間が閾値以上になっており、そのうちで処理タイプXとAは同時刻に応答遅延が発生している。判定部155は、処理タイプX、処理タイプAは、呼び出し関係にあるため、処理タイプXおよび処理タイプAのうち、呼び出し先の処理タイプAを、応答遅延の発生している処理タイプであると判定する。また、判定部155は、処理タイプYについて、呼び出し先の処理タイプBの同時刻の応答時間が閾値以上となっていないため、処理タイプYを、応答遅延の発生している処理タイプであると判定する。
図31は、判定部の判定結果の画面例を示す図である。図31において、1つのバーが処理タイプに対応する。例えば、バー81〜86は、Web層71で実行される各処理タイプにそれぞれ対応する。バー87〜89は、AP層72で実行される各処理タイプに対応する。バー90〜93は、DB層73で実行される各処理タイプに対応する。判定部155は、各バー81〜93の高さを、処理タイプの実行回数に応じて変化させる。例えば、判定部155は、実行回数の多い処理タイプのバーをより高く設定する。判定部155は、呼び出し関係テーブル145を基にして、呼び出し関係にある処理タイプのバーの間にリンクを設定する。
図31の点線の枠は、サーバを表す。図31の例では、Web層71およびAP層72に2台のサーバが存在し、DB層73に1台のサーバが存在する例を示す。判定部155は、バーの色を過去の応答遅延の発生回数に応じて、変化させても良い。例えば、判定部155は、過去に、所定回数以上応答遅延を観測した処理タイプのバーを、第1の色に設定する。判定部155は、過去に、応答遅延を1回以上、所定回数未満だけ観測した処理タイプのバーを、第2の色に設定する。判定部155は、応答遅延を1回も観測していない処理タイプのバーを、第3の色に設定する。
また、判定部155は、応答遅延を発生している処理タイプのバーに、マークを設定する。例えば、応答遅延を発生している処理タイプのバーを、バー91とすると、判定部155は、バー91にマーク95を設定する。更に、判定部155は、応答遅延を発生している処理タイプのバーにつながるリンクを強調表示してもよい。例えば、バー91とバー88とのリンク、バー88とバー83,85とのリンクを強調表示させても良い。
次に、本実施例に係る性能診断サーバ100の処理手順について説明する。図32および図33は、呼び出し関係を判定する処理手順を示すフローチャートである。図32に示すように、性能診断サーバ100の第1算出部152は、ステップS101A〜ステップS101Bまでの処理を、処理タイプ毎にループし、全ての処理タイプに対して処理が終了した後に、ステップS110Aに移行する。
第1算出部152は、現在の処理タイプについて、上位の階層が存在するか否かを判定する(ステップS102)。第1算出部152は、上位の階層が存在しない場合には(ステップS102,No)、再度ステップS101Aに移行する。
第1算出部152は、上位の階層が存在する場合には(ステップS102,Yes)、ステップS103Aに移行する。第1算出部152は、ステップS103A〜ステップS103Bまでの処理を、上位の処理タイプ毎にループし、全ての上の処理タイプに対して処理が終了した後に、ループを抜ける。
第1算出部152は、2つの処理タイプの実行回数の時系列データ間で相関係数を計算する(ステップS104)。第1算出部152は、上位階層との偏相関係数を算出し、上位階層における実行回数の影響を除去する(ステップS105)。第1算出部152は、下位階層との偏相関係数を算出し、下位階層における実行回数の影響を除去する(ステップS106)。
第2算出部153は、得られた偏相関係数が与えられたサンプル数と有意水準において、有意に相関があると言えるか否かを判定する(ステップS107)。第1算出部151は、有意に相関があると言えない場合には(ステップS107,No)、ステップS109に移行する。一方、第2算出部153は、有意に相関があると言える場合には(ステップS107,Yes)、該当するペアをお互いに「同時呼び出しされる処理の候補」として、ノードリスト144に記録する(ステップS108)。
第1算出部152は、偏相関係数を偏相関係数テーブル143に登録する(ステップS109)。
図33の説明に移行する。性能診断サーバ100の第2算出部153は、ステップS110A〜ステップS110Bまでの処理を、処理タイプ毎にループし、全ての処理タイプに対して処理が終了した後に、呼び出し関係を判定する処理を終了する。
第2算出部153は、現在の処理タイプについて、上位の階層が存在するか否かを判定する(ステップS111)。第2算出部153は、上位の階層が存在しない場合には(ステップS111,No)、再度ステップS110Aに移行する。
第2算出部153は、上位の階層が存在する場合には(ステップS111,Yes)、ステップS112Aに移行する。第2算出部153は、ステップS112A〜112Bまでの処理を、上位の処理タイプ毎にループし、全ての上位の処理タイプに対して処理が終了した後に、ループを抜ける。
第2算出部153は、「同時呼び出しされる処理」により影響を除去する(ステップS113)。第2算出部153は、得られた偏相関係数が与えられたサンプル数と有意水準において、有意に相関があると言えるか否かを判定する(ステップS114)。第2算出部153は、有意に相関があると言えない場合には(ステップS114,No)、再度ステップS112Aに移行する。一方、第2算出部153は、有意に相関があると言える場合には(ステップS114,Yes)、該当するペアの間に呼び出し関係があると判定し、呼び出し関係テーブルに登録する(ステップS115)。
次に、図33のステップS113に示した「同時呼び出しされる処理」による影響を除去する処理手順の一例について説明する。図34は、同時呼び出しされる処理による影響を除去する処理手順を示すフローチャートである。図34に示すように、第2算出部153は、第1処理タイプと第2処理タイプのいずれかと同時に「同時に呼び出される処理タイプ」の候補として記録された処理タイプで、第1処理タイプの階層以上のものを全て収集し、ノードリスト144に登録する(ステップS201)。
第2算出部153は、ノードリスト144の端末に第1処理タイプ、第2処理タイプを追加する(ステップS202)。なお、図6に示したノードリスト144において、第2算出部153は、第1処理タイプおよび第2処理タイプに相当する情報を、相関係数の組情報に登録していた。しかし、これに限定されるものではなく、ステップS202に示すように、第2算出部153は、同時呼び出しされる処理タイプの後に、第1処理タイプおよび第2処理タイプに相当する情報を追加しても良い。
第2算出部153は、ノードリスト144内の処理タイプ2つの全ての組合せについて、各偏相関係数を記憶部140上の作業領域にコピーする(ステップS203)。第2算出部153は、ステップS204A〜204Bまでの処理をループする。
第2算出部153は、ノードリスト144内の処理タイプ数が2より大きいか否かを判定する(ステップS205)。第2算出部153は、ノードリスト144内の処理タイプ数が2より大きくない場合には(ステップS205,No)、ループを抜け、ステップS210に移行する。
一方、第2算出部153は、ノードリスト144内の処理タイプ数が2より大きい場合には(ステップS205,Yes)、ノードリスト144内の先頭の処理タイプを取り外す(ステップS206)。この先頭の処理タイプを処理タイプ(1)と表記する。
第2算出部153は、ノードリスト144内の2つの処理タイプのペア全てについて、ステップS207A〜207Bまでの処理をループする。ある処理タイプのペアを、処理タイプ(2)、処理タイプ(3)と表記する。
第2算出部153は、処理タイプ(2)と処理タイプ(3)の間の暫定相関係数から、処理タイプ(1)の影響を除去することで、処理タイプ(2)と処理タイプ(3)との間の偏相関係数を算出する(ステップS208)。
第2算出部153は、算出した偏相関係数を、処理タイプ(2)と処理タイプ(3)との間の新しい暫定相関係数に設定する(ステップS209)。
第2算出部153は、ステップS207A〜207Bまでの処理をループが終了した後に、各処理タイプ間の偏相関係数を偏相関係数テーブルに記録し(ステップS210)、同時呼び出しされる処理」による影響を除去する処理を終了する。
次に、応答遅延を発生している処理タイプを判定する処理手順について説明する。図35は、応答遅延を発生している処理タイプを判定する処理手順を示すフローチャートである。図35に示すように、性能診断サーバ100の判定部155は、応答遅延している処理タイプを検出し、遅延一覧リストに登録する(ステップS301)。ここでは、遅延一覧リストの図示を省略する。
判定部155は、ステップS302A〜ステップ302Bまでの処理を、応答遅延している処理タイプの数だけループする。判定部155は、応答遅延している全ての処理タイプに対して処理が終了した後に、ループを抜ける。
判定部155は、現在の処理タイプについて、下位の階層が存在するか否かを判定する(ステップS303)。判定部155は、下位の階層が存在しない場合には(ステップS303,No)、現在の処理タイプを応答遅延の発生源として診断結果に記録し、ステップS304に移行する。ここでは、診断結果の図示を省略する。
一方、判定部155は、下位の階層が存在する場合には(ステップS303,Yes)、現在の処理タイプと、下位の階層のいずれかの処理タイプとの間に呼び出し関係が存在するか否かを判定する(ステップS305)。判定部155は、下位の階層のいずれかの処理タイプとの間に呼び出し関係がない場合には(ステップS305,No)、ステップS304に移行する。
一方、判定部155は、下位の階層のいずれかの処理タイプとの間に呼び出し関係が存在する場合には(ステップS305,Yes)、下位の階層の各処理タイプについて、同一期間において応答遅延しているか否かを判定する(ステップS306)。判定部155は、呼び出し関係にある下位の階層の処理タイプの中に、同一期間において応答遅延している処理タイプが存在しない場合には(ステップS307,No)、ステップS304に移行する。
一方、判定部155は、呼び出し関係にある下位の階層の処理タイプの中に、同一期間において応答遅延している処理タイプが存在する場合には(ステップS307,Yes)、ステップS308に移行する。
判定部155は、現在の処理タイプの応答遅延は、下位の階層の処理タイプにおける応答遅延が伝搬してきたものと判定する。判定部155は、現在の処理タイプと、呼び出し関係にある処理タイプとを対応付けて、診断結果に記憶する(ステップS308)。
次に、本実施例に係る性能診断サーバ100の効果について説明する。性能診断サーバ100は、各処理タイプの相関係数から多階層全体のトレンドの影響を除去した偏相関係数を算出し、各処理タイプ間の相関係数を更新する。このため、性能診断サーバ100によれば、階層全体のリクエストによる影響を除いた処理タイプ間の相関係数を算出することができ、これによって、各処理タイプの呼び出し関係を精密に特定することができる。
性能診断サーバ100は、各処理タイプの相関係数から同時呼び出しによる影響を除去した偏相関係数を算出し、各処理タイプの相関係数を更新する。このため、性能診断サーバ100によれば、同時呼び出しによる影響を除いた処理タイプ間の相関係数を算出することができ、これによって、各処理タイプの呼び出し関係を精密に特定することができる。
図36は、同時呼び出しによる影響の一例を説明するための図である。図36において、例えば、処理タイプXと処理タイプYとが同時に呼び出される関係にあると、処理タイプXと処理タイプYとの相関係数が大きくなる。また、処理タイプXと処理タイプAとの間に呼び出し関係がある場合には、処理タイプXと処理タイプYとが同時に呼び出されるが故に、処理タイプYと処理タイプAとの間に呼び出し関係がないにもかかわらず、処理タイプYと処理タイプAとの相関係数が高くなる。このため、処理タイプYと処理タイプAとの間に呼び出し関係があると誤判定してしまう。これに対して、性能診断サーバ100は、上記のようにして、同時呼び出しの影響を取り除くため、誤判定を防止することができる。
性能診断サーバ100は、該当する処理タイプの階層以上にある全ての処理タイプのうち、該当する処理タイプとの相関係数を基にして、同時呼び出しの候補となる処理タイプを絞り込み。そして、性能診断サーバ100は、絞り込んだ処理タイプを基にして、同時呼び出しによる影響を除去する。このため、計算コストを削減することができる。
性能診断サーバ100は、多階層全体のトレンドの影響を除去し、同時呼び出しによる影響を除去した各処理タイプ間の相関係数に基づき、呼び出し関係を特定し、この呼び出し関係を基にして、応答遅延の発生源となる処理タイプを判定する。このため、応答遅延の発生源となる処理タイプを正確に特定することができる。
次に、上記実施例に示した性能診断サーバ100と同様の機能を実現する相関係数算出プログラムを実行するコンピュータの一例について説明する。図37は、相関係数算出プログラムを実行するコンピュータの一例を示す図である。
図37に示すように、コンピュータ200は、各種演算処理を実行するCPU201と、ユーザからのデータの入力を受け付ける入力装置202と、ディスプレイ203とを有する。また、コンピュータ200は、記憶媒体からプログラム等を読取る読み取り装置204と、ネットワークを介して他のコンピュータとの間でデータの授受を行うインターフェース装置205とを有する。また、コンピュータ200は、各種情報を一時記憶するRAM206と、ハードディスク装置207とを有する。そして、各装置201〜207は、バス208に接続される。
ハードディスク装置207は、算出プログラム207a、特定プログラム207b、判定プログラム207cを有する。CPU201は、算出プログラム207a、特定プログラム207b、判定プログラム207cを読み出してRAM206に展開する。算出プログラム207aは、算出プロセス206aとして機能する。特定プログラム207bは、特定プロセス206bとして機能する。判定プログラム207cは、判定プロセス206cとして機能する。
例えば、算出プロセス206aは、第1算出部152、第2算出部153に対応する。特定プロセス206bは、特定部154に対応する。判定プロセス206cは、判定部155に対応する。
なお、算出プログラム207a、特定プログラム207b、判定プログラム207cについては、必ずしも最初からハードディスク装置207に記憶させておかなくても良い。例えば、コンピュータ200に挿入されるフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ200が算出プログラム207a、特定プログラム207b、判定プログラム207cを読み出して実行するようにしてもよい。
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)コンピュータが実行する相関係数算出方法であって、
多階層で構成されるシステムの階層間の処理に対するリクエスト数の時系列データおよび階層ごとの全体リクエスト数の時系列データを算出し、
第1階層における第1の処理の時系列データと第2階層における第2の処理の時系列データ間の第1相関係数を算出し、
前記第2階層の全体リクエスト数の時系列データと前記第2の処理の時系列データ間の第2相関係数を算出し、
前記第2階層の全体リクエスト数の時系列データと前記第1の処理の時系列データ間の第3相関係数を算出し、
前記第1階層の全体リクエストが前記第3相関係数に与える影響を除いた第3偏相関係数を算出し、
前記第1階層の全体リクエストが前記第2相関係数に与える影響を除いた第2偏相関係数を算出し、
前記第1階層の全体リクエストが前記第1相関係数に与える影響を除いた第1偏相関係数を算出し、
前記第3偏相関係数および前記第2偏相関係数を用いて、前記第2階層の全体リクエストが前記第1偏相関係数に与える影響を除いた相関係数を前記第1処理と前記第2処理間の相関係数とする
処理を実行することを特徴とする相関係数算出方法。
(付記2)前記第1階層に存在する前記第1の処理と異なる第3の処理と、前記第1階層よりも上の階層に存在する第4の処理とを特定し、
前記第2の処理の時系列データおよび前記第3の処理の時系列データ間の第4相関係数を、前記第3の処理の時系列データおよび前記第4の処理の時系列データ間の第5相関係数と、前記第2の処理の時系列データと前記第4の処理の時系列データ間の第6相関係数とを基にして算出し、
前記第1相関係数を、前記第1の処理の時系列データおよび前記第4の処理の時系列データ間の第7相関係数と、前記第6相関係数とを基にして更新し、
さらに前記第1相関係数を、前記第1の処理の時系列データおよび前記第3の処理の時系列データ間の第8相関係数と、前記第4相関係数とを基にして更新する処理を更に実行することを特徴とする付記1に記載の相関係数算出方法。
(付記3)前記特定する処理は、複数の第3の処理のうち前記第2の処理と有意に相関のある第3の処理を特定し、複数の第4の処理のうち前記第1の処理と有意に相関のある第4の処理を特定することを特徴とする付記2に記載の相関係数算出方法。
(付記4)前記第1の処理の時系列データを基にして前記第1の処理に応答遅延が発生している場合に、前記第1の処理から呼び出される第2の処理を特定し、前記第2の処理に応答遅延が発生しているか否かを判定し、判定結果を出力する処理を更に実行することを特徴とする付記1、2または3に記載の相関係数算出方法。
(付記5)コンピュータに、
多階層で構成されるシステムの階層間の処理に対するリクエスト数の時系列データおよび階層ごとの全体リクエスト数の時系列データを算出し、
第1階層における第1の処理の時系列データと第2階層における第2の処理の時系列データ間の第1相関係数を算出し、
前記第2階層の全体リクエスト数の時系列データと前記第2の処理の時系列データ間の第2相関係数を算出し、
前記第2階層の全体リクエスト数の時系列データと前記第1の処理の時系列データ間の第3相関係数を算出し、
前記第1階層の全体リクエストが前記第3相関係数に与える影響を除いた第3偏相関係数を算出し、
前記第1階層の全体リクエストが前記第2相関係数に与える影響を除いた第2偏相関係数を算出し、
前記第1階層の全体リクエストが前記第1相関係数に与える影響を除いた第1偏相関係数を算出し、
前記第3偏相関係数および前記第2偏相関係数を用いて、前記第2階層の全体リクエストが前記第1偏相関係数に与える影響を除いた相関係数を前記第1処理と前記第2処理間の相関係数とする
処理を実行させることを特徴とする相関係数算出プログラム。
(付記6)前記第1階層に存在する前記第1の処理と異なる第3の処理と、前記第1階層よりも上の階層に存在する第4の処理とを特定し、
前記第2の処理の時系列データおよび前記第3の処理の時系列データ間の第4相関係数を、前記第3の処理の時系列データおよび前記第4の処理の時系列データ間の第5相関係数と、前記第2の処理の時系列データと前記第4の処理の時系列データ間の第6相関係数とを基にして算出し、
前記第1相関係数を、前記第1の処理の時系列データおよび前記第4の処理の時系列データ間の第7相関係数と、前記第6相関係数とを基にして更新し、
さらに前記第1相関係数を、前記第1の処理の時系列データおよび前記第3の処理の時系列データ間の第8相関係数と、前記第4相関係数とを基にして更新する処理を更に実行することを特徴とする付記5に記載の相関係数算出プログラム。
(付記7)前記特定する処理は、複数の第3の処理のうち前記第2の処理と有意に相関のある第3の処理を特定し、複数の第4の処理のうち前記第1の処理と有意に相関のある第4の処理を特定することを特徴とする付記6に記載の相関係数算出プログラム。
(付記8)前記第1の処理の時系列データを基にして前記第1の処理に応答遅延が発生している場合に、前記第1の処理から呼び出される第2の処理を特定し、前記第2の処理に応答遅延が発生しているか否かを判定し、判定結果を出力する処理を更に実行することを特徴とする付記5、6または7に記載の相関係数算出プログラム。
(付記9)多階層で構成されるシステムの階層間の処理に対するリクエスト数の時系列データおよび階層ごとの全体リクエスト数の時系列データを算出し、第1階層における第1の処理の時系列データと第2階層における第2の処理の時系列データ間の第1相関係数を算出し、前記第2階層の全体リクエスト数の時系列データと前記第2の処理の時系列データ間の第2相関係数を算出し、前記第2階層の全体リクエスト数の時系列データと前記第1の処理の時系列データ間の第3相関係数を算出し、前記第1階層の全体リクエストが前記第3相関係数に与える影響を除いた第3偏相関係数を算出し、前記第1階層の全体リクエストが前記第2相関係数に与える影響を除いた第2偏相関係数を算出し、前記第1階層の全体リクエストが前記第1相関係数に与える影響を除いた第1偏相関係数を算出し、前記第3偏相関係数および前記第2偏相関係数を用いて、前記第2階層の全体リクエストが前記第1偏相関係数に与える影響を除いた相関係数を前記第1処理と前記第2処理間の相関係数とする第1算出部
を有することを特徴とする相関係数算出装置。
(付記10)前記第1階層に存在する前記第1の処理と異なる第3の処理と、前記第1階層よりも上の階層に存在する第4の処理とを特定し、前記第2の処理の時系列データおよび前記第3の処理の時系列データ間の第4相関係数を、前記第3の処理の時系列データおよび前記第4の処理の時系列データ間の第5相関係数と、前記第2の処理の時系列データと前記第4の処理の時系列データ間の第6相関係数とを基にして算出し、前記第1相関係数を、前記第1の処理の時系列データおよび前記第4の処理の時系列データ間の第7相関係数と、前記第6相関係数とを基にして更新し、さらに前記第1相関係数を、前記第1の処理の時系列データおよび前記第3の処理の時系列データ間の第8相関係数と、前記第4相関係数とを基にして更新する第2算出部を更に有することを特徴とする相関係数算出装置。
(付記11)前記第2算出部は、複数の第3の処理のうち前記第2の処理と有意に相関のある第3の処理を特定し、複数の第4の処理のうち前記第1の処理と有意に相関のある第4の処理を特定することを特徴とする付記10に記載の相関係数算出装置。
(付記12)前記第1の処理の時系列データを基にして前記第1の処理に応答遅延が発生している場合に、前記第1の処理から呼び出される第2の処理を特定し、前記第2の処理に応答遅延が発生しているか否かを判定し、判定結果を出力する判定部を更に有することを特徴とする付記9、10または11に記載の相関係数算出装置。
50 ネットワーク
60 スイッチ
70 多階層システム
100 性能診断サーバ

Claims (6)

  1. コンピュータが実行する相関係数算出方法であって、
    多階層で構成されるシステムの階層間の処理に対するリクエスト数の時系列データおよび階層ごとの全体リクエスト数の時系列データを算出し、
    第1階層における第1の処理の時系列データと第2階層における第2の処理の時系列データ間の第1相関係数を算出し、
    前記第2階層の全体リクエスト数の時系列データと前記第2の処理の時系列データ間の第2相関係数を算出し、
    前記第2階層の全体リクエスト数の時系列データと前記第1の処理の時系列データ間の第3相関係数を算出し、
    前記第1階層の全体リクエストが前記第3相関係数に与える影響を除いた第3偏相関係数を算出し、
    前記第1階層の全体リクエストが前記第2相関係数に与える影響を除いた第2偏相関係数を算出し、
    前記第1階層の全体リクエストが前記第1相関係数に与える影響を除いた第1偏相関係数を算出し、
    前記第3偏相関係数および前記第2偏相関係数を用いて、前記第2階層の全体リクエストが前記第1偏相関係数に与える影響を除いた相関係数を前記第1処理と前記第2処理間の相関係数とする
    処理を実行することを特徴とする相関係数算出方法。
  2. 前記第1階層に存在する前記第1の処理と異なる第3の処理と前記第1階層よりも上の階層に存在する第4の処理とを特定し、
    前記第2の処理の時系列データおよび前記第3の処理の時系列データ間の第4相関係数を、前記第3の処理の時系列データおよび前記第4の処理の時系列データ間の第5相関係数と、前記第2の処理の時系列データと前記第4の処理の時系列データ間の第6相関係数とを基にして算出し、
    前記第1相関係数を、前記第1の処理の時系列データおよび前記第4の処理の時系列データ間の第7相関係数と、前記第6相関係数とを基にして更新し、
    さらに前記第1相関係数を、前記第1の処理の時系列データおよび前記第3の処理の時系列データ間の第8相関係数と、前記第4相関係数とを基にして更新する処理を更に実行することを特徴とする請求項1に記載の相関係数算出方法。
  3. 前記特定する処理は、複数の第3の処理のうち前記第2の処理と有意に相関のある第3の処理を特定し、複数の第4の処理のうち前記第1の処理と有意に相関のある第4の処理を特定することを特徴とする請求項2に記載の相関係数算出方法。
  4. 前記第1の処理の時系列データを基にして前記第1の処理に応答遅延が発生している場合に、前記第1の処理から呼び出される第2の処理を特定し、前記第2の処理に応答遅延が発生しているか否かを判定し、判定結果を出力する処理を更に実行することを特徴とする請求項1、2または3に記載の相関係数算出方法。
  5. コンピュータに、
    多階層で構成されるシステムの階層間の処理に対するリクエスト数の時系列データおよび階層ごとの全体リクエスト数の時系列データを算出し、
    第1階層における第1の処理の時系列データと第2階層における第2の処理の時系列データ間の第1相関係数を算出し、
    前記第2階層の全体リクエスト数の時系列データと前記第2の処理の時系列データ間の第2相関係数を算出し、
    前記第2階層の全体リクエスト数の時系列データと前記第1の処理の時系列データ間の第3相関係数を算出し、
    前記第1階層の全体リクエストが前記第3相関係数に与える影響を除いた第3偏相関係数を算出し、
    前記第1階層の全体リクエストが前記第2相関係数に与える影響を除いた第2偏相関係数を算出し、
    前記第1階層の全体リクエストが前記第1相関係数に与える影響を除いた第1偏相関係数を算出し、
    前記第3偏相関係数および前記第2偏相関係数を用いて、前記第2階層の全体リクエストが前記第1偏相関係数に与える影響を除いた相関係数を前記第1処理と前記第2処理間の相関係数とする
    処理を実行させることを特徴とする相関係数算出プログラム。
  6. 多階層で構成されるシステムの階層間の処理に対するリクエスト数の時系列データおよび階層ごとの全体リクエスト数の時系列データを算出し、第1階層における第1の処理の時系列データと第2階層における第2の処理の時系列データ間の第1相関係数を算出し、前記第2階層の全体リクエスト数の時系列データと前記第2の処理の時系列データ間の第2相関係数を算出し、前記第2階層の全体リクエスト数の時系列データと前記第1の処理の時系列データ間の第3相関係数を算出し、前記第1階層の全体リクエストが前記第3相関係数に与える影響を除いた第3偏相関係数を算出し、前記第1階層の全体リクエストが前記第2相関係数に与える影響を除いた第2偏相関係数を算出し、前記第1階層の全体リクエストが前記第1相関係数に与える影響を除いた第1偏相関係数を算出し、前記第3偏相関係数および前記第2偏相関係数を用いて、前記第2階層の全体リクエストが前記第1偏相関係数に与える影響を除いた相関係数を前記第1処理と前記第2処理間の相関係数とする第1算出部
    を有することを特徴とする相関係数算出装置。
JP2014094069A 2014-04-30 2014-04-30 相関係数算出方法、相関係数算出プログラムおよび相関係数算出装置 Active JP6330456B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014094069A JP6330456B2 (ja) 2014-04-30 2014-04-30 相関係数算出方法、相関係数算出プログラムおよび相関係数算出装置
US14/672,942 US10339203B2 (en) 2014-04-30 2015-03-30 Correlation coefficient calculation method, computer-readable recording medium, and correlation coefficient calculation device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014094069A JP6330456B2 (ja) 2014-04-30 2014-04-30 相関係数算出方法、相関係数算出プログラムおよび相関係数算出装置

Publications (2)

Publication Number Publication Date
JP2015210788A true JP2015210788A (ja) 2015-11-24
JP6330456B2 JP6330456B2 (ja) 2018-05-30

Family

ID=54355348

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014094069A Active JP6330456B2 (ja) 2014-04-30 2014-04-30 相関係数算出方法、相関係数算出プログラムおよび相関係数算出装置

Country Status (2)

Country Link
US (1) US10339203B2 (ja)
JP (1) JP6330456B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017164095A1 (ja) * 2016-03-23 2017-09-28 日本電気株式会社 要因分析装置、要因分析方法、およびプログラムを記憶した記憶媒体
JP2018063225A (ja) * 2016-10-14 2018-04-19 公益財団法人鉄道総合技術研究所 波形データの急進箇所抽出処理方法及び急進箇所抽出処理システム

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA3109739A1 (en) * 2009-12-10 2011-01-11 Royal Bank Of Canada Synchronized processing of data by networked computing resources
US10715837B2 (en) * 2015-03-13 2020-07-14 At&T Intellectual Property I, L.P. Determination of a service office of a media content distribution system to record a media content item with a network recorder
CN113421020B (zh) * 2021-07-13 2024-06-21 神策网络科技(北京)有限公司 一种多指标异常点重合度分析方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011258057A (ja) * 2010-06-10 2011-12-22 Fujitsu Ltd 解析プログラム、解析方法、および解析装置

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002007659A (ja) 2000-06-21 2002-01-11 Noriaki Kanda 商品分析装置、方法、記憶媒体及び出力物
JP4417331B2 (ja) * 2003-09-24 2010-02-17 株式会社エー・アンド・デイ 多信号解析装置
US9129226B2 (en) * 2011-12-04 2015-09-08 Beyondcore, Inc. Analyzing data sets with the help of inexpert humans to find patterns
US20070112715A1 (en) * 2005-11-07 2007-05-17 Nec Laboratories America System failure detection employing supervised and unsupervised monitoring
JP2007207101A (ja) * 2006-02-03 2007-08-16 Infocom Corp グラフ生成方法、グラフ生成プログラム並びにデータマイニングシステム
JP4616791B2 (ja) 2006-05-08 2011-01-19 富士通株式会社 リクエスト種別プログラム、リクエスト種別装置およびリクエスト種別方法
JP4859558B2 (ja) * 2006-06-30 2012-01-25 株式会社日立製作所 コンピュータシステムの制御方法及びコンピュータシステム
CA2719720C (en) * 2008-03-27 2017-10-31 Cirba Inc. System and method for detecting system relationships by correlating system workload activity levels
JP5237034B2 (ja) * 2008-09-30 2013-07-17 株式会社日立製作所 イベント情報取得外のit装置を対象とする根本原因解析方法、装置、プログラム。
WO2013042789A1 (ja) * 2011-09-19 2013-03-28 日本電気株式会社 運用管理装置、運用管理方法、及びプログラム
WO2014080598A1 (ja) * 2012-11-20 2014-05-30 日本電気株式会社 運用管理装置、及び、運用管理方法
DE112013006635T5 (de) * 2013-05-16 2015-10-29 Hitachi, Ltd. Detektionsvorrichtung, Detektionsverfahren und Aufzeichungsmedium
US8832330B1 (en) * 2013-05-23 2014-09-09 Nimble Storage, Inc. Analysis of storage system latency by correlating activity of storage system components with latency measurements
US9451017B2 (en) * 2013-07-24 2016-09-20 Dynatrace Llc Method and system for combining trace data describing multiple individual transaction executions with transaction processing infrastructure monitoring data
US9052938B1 (en) * 2014-04-15 2015-06-09 Splunk Inc. Correlation and associated display of virtual machine data and storage performance data

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011258057A (ja) * 2010-06-10 2011-12-22 Fujitsu Ltd 解析プログラム、解析方法、および解析装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017164095A1 (ja) * 2016-03-23 2017-09-28 日本電気株式会社 要因分析装置、要因分析方法、およびプログラムを記憶した記憶媒体
US11580414B2 (en) 2016-03-23 2023-02-14 Nec Corporation Factor analysis device, factor analysis method, and storage medium on which program is stored
JP2018063225A (ja) * 2016-10-14 2018-04-19 公益財団法人鉄道総合技術研究所 波形データの急進箇所抽出処理方法及び急進箇所抽出処理システム
JP2021107819A (ja) * 2016-10-14 2021-07-29 公益財団法人鉄道総合技術研究所 波形データのデータ処理方法
JP7178056B2 (ja) 2016-10-14 2022-11-25 公益財団法人鉄道総合技術研究所 波形データのデータ処理方法

Also Published As

Publication number Publication date
US20150317283A1 (en) 2015-11-05
JP6330456B2 (ja) 2018-05-30
US10339203B2 (en) 2019-07-02

Similar Documents

Publication Publication Date Title
JP6330456B2 (ja) 相関係数算出方法、相関係数算出プログラムおよび相関係数算出装置
US10482411B2 (en) Dashboard for dynamic display of distributed transaction data
Balsamo et al. A review on queueing network models with finite capacity queues for software architectures performance prediction
US9680719B2 (en) Communication system, client terminal, and server
CN109885786A (zh) 数据缓存处理方法、装置、电子设备及可读存储介质
CN108780309B (zh) 记录制造工序的可视化程序的记录介质、制造工序的可视化方法以及制造工序的可视化***
JP2012099102A (ja) 分散型コンピュータシステム、インタラクティブ型クライアント−サーバ・アプリケーションのベリファイ方法、及び製品
JP2011138405A (ja) 障害箇所推定システム、障害箇所推定装置および障害箇所推定方法
WO2020173136A1 (zh) 应用***的监控方法、装置、设备及存储介质
JP2018165857A (ja) 分析装置、分析システム、分析方法および分析プログラム
KR20210106379A (ko) 블록체인에 기반한 데이터 처리 방법, 장치, 기기, 매체 및 프로그램
CN102546205B (zh) 一种故障关系生成及故障确定方法及装置
WO2018135254A1 (ja) 影響範囲特定プログラム、影響範囲特定方法、および影響範囲特定装置
US10388043B2 (en) Display of manufacturing process and facility used therefore
JP2012099103A (ja) 状態グラフを同期させる方法、製品及び電子装置
CN116225690A (zh) 基于docker的内存多维数据库计算负载均衡方法及***
CN110020166B (zh) 一种数据分析方法及相关设备
JP2017058979A (ja) 遅延情報出力装置、遅延情報出力方法および遅延情報出力プログラム
CN108363529A (zh) 应用程序界面的前台运行时间的确定方法及装置
CN114253920A (zh) 一种交易重新排序方法、装置、设备及可读存储介质
JP2023042138A (ja) 因果探索装置
CN111522748A (zh) 一种自动化测试案例生成方法、装置、服务器及存储介质
EP3944115A1 (en) Information processing program, information processing method, and information processing apparatus
US11960560B1 (en) Methods for analyzing recurring accessibility issues with dynamic web site behavior and devices thereof
CN110598141B (zh) 信息查询方法、电子装置及计算机可读存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170206

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171128

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180123

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180409

R150 Certificate of patent or registration of utility model

Ref document number: 6330456

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150