JP5561182B2 - System analysis support program, system analysis support device, and system analysis support method - Google Patents

System analysis support program, system analysis support device, and system analysis support method Download PDF

Info

Publication number
JP5561182B2
JP5561182B2 JP2011010294A JP2011010294A JP5561182B2 JP 5561182 B2 JP5561182 B2 JP 5561182B2 JP 2011010294 A JP2011010294 A JP 2011010294A JP 2011010294 A JP2011010294 A JP 2011010294A JP 5561182 B2 JP5561182 B2 JP 5561182B2
Authority
JP
Japan
Prior art keywords
message
messages
protocol
period
batch processing
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
JP2011010294A
Other languages
Japanese (ja)
Other versions
JP2012150733A (en
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.)
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 JP2011010294A priority Critical patent/JP5561182B2/en
Publication of JP2012150733A publication Critical patent/JP2012150733A/en
Application granted granted Critical
Publication of JP5561182B2 publication Critical patent/JP5561182B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Description

本発明は、ネットワークシステムの分析を支援するシステム分析支援プログラム、システム分析支援装置、およびシステム分析支援方法に関する。   The present invention relates to a system analysis support program, a system analysis support apparatus, and a system analysis support method for supporting analysis of a network system.

近年、大規模化、複雑化するネットワークシステムの運用状況や性能問題などを的確に把握することが難しくなっている。例えば、複数のアプリケーションが連携して動作するネットワークシステムでは、性能劣化や障害の原因を突き止めるために、各サーバの挙動だけでなくシステム全体の性能を観測、分析するため、運用状況や性能問題を把握することが難しい。   In recent years, it has become difficult to accurately grasp the operating status and performance problems of network systems that are becoming larger and more complex. For example, in a network system in which multiple applications operate in cooperation, in order to determine the cause of performance degradation or failure, not only the behavior of each server but also the performance of the entire system is observed and analyzed. Difficult to grasp.

関連する先行技術としては、例えば、複数のプロセッサから構成される並列データベースシステムの動作解析を行う技術がある。従来の動作解析方法は、複数のプロセッサの各々についてデータベースアクセス処理の開始時刻と終了時刻の履歴情報を収集し、同一プロセッサについてデータベースアクセス処理の開始時刻と終了時刻とを対応付ける。そして、動作解析方法は、各プロセッサについて対応付けた終了時刻と開始時刻から処理時間を計算し、該処理時間が規定時間を超えているかどうかを判定する。   As a related prior art, for example, there is a technique for performing an operation analysis of a parallel database system including a plurality of processors. The conventional operation analysis method collects history information of the start time and end time of the database access process for each of a plurality of processors, and associates the start time and end time of the database access process for the same processor. Then, the operation analysis method calculates a processing time from the end time and the start time associated with each processor, and determines whether or not the processing time exceeds a specified time.

また、先行技術として、データベースに対する操作履歴を管理する技術がある。従来の管理装置は、バッチ処理の実行中を除き、データベースの操作を行うごとに操作内容を示す操作履歴をログ記憶手段に格納する。また、管理装置は、バッチ処理要求に応じてバッチ処理が実行されたときには、バッチ処理実行中の操作履歴を格納することなく、バッチ処理の実行を示すチェックポイントログをログ記憶手段に格納する。   As a prior art, there is a technique for managing an operation history for a database. A conventional management apparatus stores an operation history indicating operation contents in a log storage unit every time a database operation is performed, except during batch processing. Further, when the batch processing is executed in response to the batch processing request, the management device stores the checkpoint log indicating the execution of the batch processing in the log storage unit without storing the operation history during the execution of the batch processing.

また、先行技術として、システムの稼働状況を分析する技術がある。従来のシステム分析装置は、モデル生成指示が入力されると、処理間の呼出関係の確からしさに基づく選択基準に従って選択されたメッセージ集合に基づきサーバ間の呼出の制約条件を満たすトランザクションモデルを生成する。また、システム分析装置は、分析指示が入力されると、トランザクションモデルに合致するプロトコルログによりトランザクションの処理状態を分析する。   Further, as a prior art, there is a technique for analyzing the operation status of the system. When a model generation instruction is input, a conventional system analysis apparatus generates a transaction model that satisfies a call restriction condition between servers based on a message set selected according to a selection criterion based on the probability of a call relation between processes. . Further, when an analysis instruction is input, the system analysis apparatus analyzes the transaction processing state using a protocol log that matches the transaction model.

特開平8−339381号公報JP-A-8-339381 特許第4166056号公報Japanese Patent No. 4166056 特開2006−11683号公報JP 2006-11683 A

しかしながら、従来技術は、ネットワークシステムにおいてオンライン処理とバッチ処理が混在して行われる場合、システム内のサーバ間で送受信されるメッセージがオンライン処理またはバッチ処理のいずれのものかを判別することが難しいという問題がある。この結果、例えば、オンライン処理にかかる各サーバの処理時間を正確に求めることが難しくなり、ネットワークシステムの分析精度の低下を招くという問題がある。   However, in the conventional technology, when online processing and batch processing are performed together in a network system, it is difficult to determine whether a message transmitted / received between servers in the system is either online processing or batch processing. There's a problem. As a result, for example, it is difficult to accurately obtain the processing time of each server related to online processing, and there is a problem that the analysis accuracy of the network system is lowered.

1つの側面では、本発明は、バッチ処理にかかるメッセージを判別することができるシステム分析支援プログラム、システム分析支援装置、およびシステム分析支援方法を提供することを目的とする。   In one aspect, an object of the present invention is to provide a system analysis support program, a system analysis support apparatus, and a system analysis support method that can determine a message related to batch processing.

1つの態様では、プロトコルの階層構造が定義されたシステム内で受け渡されたメッセージ群の中から、前記システム内のデータベースを操作するためのプロトコルの直上層のプロトコルのリクエストとレスポンスのペアを検出し、前記メッセージ群の中から、所定期間内に送信された、前記データベースに対する所定の操作に関するメッセージの集合を選択し、選択されたメッセージの集合のうち、検出された1以上のペアのリクエスト時刻とレスポンス時刻の間に送信されたメッセージの割合を表す第1の指標値を算出し、前記所定期間のうち、前記1以上のペアのリクエスト時刻からレスポンス時刻までの期間が占める割合を表す第2の指標値を算出し、算出された第1および第2の指標値に基づいて、前記所定の操作がバッチ処理の操作か否かを判定し、判定された判定結果を出力する。   In one aspect, a request / response pair of a protocol immediately above a protocol for operating a database in the system is detected from a group of messages passed in the system in which the hierarchical structure of the protocol is defined. And selecting a set of messages related to a predetermined operation on the database transmitted within a predetermined period from the group of messages, and request time of one or more pairs detected from the selected set of messages. A first index value representing a ratio of messages transmitted between the response time and a response time, and a second ratio representing a ratio of a period from the request time to the response time of the one or more pairs in the predetermined period And the predetermined operation is performed based on the calculated first and second index values. To determine work or not, and outputs the determined determination result.

1態様によれば、バッチ処理にかかるメッセージを判別することができるという効果を奏する。   According to one aspect, there is an effect that a message related to batch processing can be determined.

図1は、実施の形態にかかるネットワークシステムの一実施例を示すシステム構成図である。FIG. 1 is a system configuration diagram illustrating an example of a network system according to an embodiment. 図2は、ネットワークシステム内のメッセージ群の一例を示す説明図(その1)である。FIG. 2 is an explanatory diagram (part 1) illustrating an example of a message group in the network system. 図3は、ネットワークシステム内のメッセージ群の一例を示す説明図(その2)である。FIG. 3 is an explanatory diagram (part 2) illustrating an example of a message group in the network system. 図4は、実施の形態にかかるシステム分析支援装置のハードウェア構成の一例を示すブロック図である。FIG. 4 is a block diagram of an example of a hardware configuration of the system analysis support apparatus according to the embodiment. 図5は、メッセージDBの記憶内容の一例を示す説明図である。FIG. 5 is an explanatory diagram showing an example of the contents stored in the message DB. 図6は、階層構造定義情報の具体例を示す説明図である。FIG. 6 is an explanatory diagram of a specific example of hierarchical structure definition information. 図7は、実施の形態にかかるシステム分析支援装置の機能的構成の一例を示すブロック図である。FIG. 7 is a block diagram of an example of a functional configuration of the system analysis support apparatus according to the embodiment. 図8は、ペア情報テーブルの記憶内容の一例を示す説明図である。FIG. 8 is an explanatory diagram showing an example of the stored contents of the pair information table. 図9は、出現率/占有率テーブルの記憶内容の一例を示す説明図である。FIG. 9 is an explanatory diagram of an example of the contents stored in the appearance rate / occupancy rate table. 図10は、オブジェクトリストの具体例を示す説明図である。FIG. 10 is an explanatory diagram of a specific example of the object list. 図11は、レスポンスメッセージのオブジェクトの特定例を示す説明図である。FIG. 11 is an explanatory diagram of a specific example of the response message object. 図12は、ネットワークシステム内のメッセージ群の一例を示す説明図(その3)である。FIG. 12 is an explanatory diagram (part 3) illustrating an example of a message group in the network system. 図13は、中間テーブルの記憶内容の一例を示す説明図である。FIG. 13 is an explanatory diagram of an example of the contents stored in the intermediate table. 図14は、ネットワークシステム内のメッセージ群の一例を示す説明図(その4)である。FIG. 14 is an explanatory diagram (part 4) illustrating an example of a message group in the network system. 図15は、多重度テーブルの記憶内容の一例を示す説明図である。FIG. 15 is an explanatory diagram of an example of the contents stored in the multiplicity table. 図16は、バッチ処理のオブジェクトの判定例を示す説明図(その1)である。FIG. 16 is an explanatory diagram (part 1) of an example of determining a batch processing object. 図17は、バッチ処理のオブジェクトの判定例を示す説明図(その2)である。FIG. 17 is an explanatory diagram (part 2) of an example of determining a batch processing object. 図18は、処理対象テーブルの記憶内容の一例を示す説明図である。FIG. 18 is an explanatory diagram of an example of the contents stored in the processing target table. 図19は、実施の形態にかかるシステム分析支援装置のシステム分析支援処理手順の一例を示すフローチャートである。FIG. 19 is a flowchart illustrating an example of a system analysis support processing procedure of the system analysis support apparatus according to the embodiment. 図20は、ステップS1905の出現率算出処理の具体的な処理手順の一例を示すフローチャートである。FIG. 20 is a flowchart illustrating an example of a specific processing procedure of the appearance rate calculation processing in step S1905. 図21は、ステップS1906の占有率算出処理の具体的な処理手順の一例を示すフローチャートである。FIG. 21 is a flowchart illustrating an example of a specific processing procedure of the occupation ratio calculation processing in step S1906. 図22は、ステップS1909の判定処理の具体的な処理手順の一例を示すフローチャート(その1)である。FIG. 22 is a flowchart (part 1) illustrating an example of a specific processing procedure of the determination processing in step S1909. 図23は、ステップS1909の判定処理の具体的な処理手順の一例を示すフローチャート(その2)である。FIG. 23 is a flowchart (part 2) illustrating an example of a specific processing procedure of the determination processing in step S1909. 図24は、メッセージ削除処理の具体的な処理手順の一例を示すフローチャートである。FIG. 24 is a flowchart illustrating an example of a specific processing procedure of message deletion processing.

以下に添付図面を参照して、この発明にかかるシステム分析支援プログラム、システム分析支援装置、およびシステム分析支援方法の好適な実施の形態を詳細に説明する。   Exemplary embodiments of a system analysis support program, a system analysis support apparatus, and a system analysis support method according to the present invention will be explained below in detail with reference to the accompanying drawings.

(ネットワークシステムのシステム構成)
図1は、実施の形態にかかるネットワークシステムの一実施例を示すシステム構成図である。図1において、ネットワークシステム100は、システム分析支援装置101と、Webサーバ102と、AP(アプリケーション)サーバ103と、DB(データベース)サーバ104と、クライアント端末105と、を含む構成である。
(System configuration of network system)
FIG. 1 is a system configuration diagram illustrating an example of a network system according to an embodiment. In FIG. 1, a network system 100 includes a system analysis support apparatus 101, a Web server 102, an AP (application) server 103, a DB (database) server 104, and a client terminal 105.

ネットワークシステム100において、Webサーバ102、APサーバ103、DBサーバ104およびクライアント端末105は、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)などのネットワーク110を介して相互に通信可能に接続されている。   In the network system 100, the Web server 102, the AP server 103, the DB server 104, and the client terminal 105 are connected to be able to communicate with each other via a network 110 such as the Internet, a LAN (Local Area Network), and a WAN (Wide Area Network). Has been.

ここで、ネットワークシステム100は、プロトコルの階層構造が定義されたシステムである。プロトコルとは、ネットワーク110を介してコンピュータ(Webサーバ102、APサーバ103、DBサーバ104)同士が通信を行う際の通信規約である。ここでは、最上位の第1階層には、HTTP(HyperText Transfer Protocol)が定義されている。このHTTPは、クライアント端末105とWebサーバ102との通信に用いられるプロトコルである。   Here, the network system 100 is a system in which a hierarchical structure of protocols is defined. The protocol is a communication protocol when computers (Web server 102, AP server 103, DB server 104) communicate with each other via the network 110. Here, HTTP (HyperText Transfer Protocol) is defined in the highest first layer. This HTTP is a protocol used for communication between the client terminal 105 and the Web server 102.

第2階層には、IIOP(Internet Inter−ORB Protocol)が定義されている。このIIOPは、Webサーバ102とAPサーバ103との通信に用いられるプロトコルである。最下位の第3階層には、SQL(Structured Query Language)が定義されている。このSQLは、APサーバ103とDBサーバ104との通信に用いられるプロトコルである。   In the second layer, IIOP (Internet Inter-ORB Protocol) is defined. This IIOP is a protocol used for communication between the Web server 102 and the AP server 103. In the third lowest layer, SQL (Structured Query Language) is defined. This SQL is a protocol used for communication between the AP server 103 and the DB server 104.

また、ネットワークシステム100は、オンライン処理とバッチ処理が混在するシステムである。オンライン処理は、クライアント端末105からの要求に応じて処理を行う処理方式である。バッチ処理は、例えば、一定期間収集したデータを一括処理、または、複数の手順からなる処理を予め決められた手順に従って連続処理する処理方式である。   The network system 100 is a system in which online processing and batch processing are mixed. The online processing is a processing method that performs processing in response to a request from the client terminal 105. Batch processing is, for example, a processing method in which data collected for a certain period is batch-processed, or processing consisting of a plurality of procedures is continuously processed according to a predetermined procedure.

システム分析支援装置101は、ネットワークシステム100のシステム分析を支援するコンピュータである。Webサーバ102は、クライアント端末105に搭載されたブラウザからの要求に応じて、HTML(HyperText Markup Language)文書を送信するコンピュータである。   The system analysis support apparatus 101 is a computer that supports system analysis of the network system 100. The Web server 102 is a computer that transmits an HTML (HyperText Markup Language) document in response to a request from a browser installed in the client terminal 105.

APサーバ103は、Webサーバ102とDBサーバ104との橋渡しをおこない、データベース120に対する処理(例えば、検索処理、更新処理、削除処理など)を制御するコンピュータである。DBサーバ104は、データ群を格納するデータベース120を備え、データベース120に対する処理を実行するコンピュータである。   The AP server 103 is a computer that bridges between the Web server 102 and the DB server 104 and controls processing (for example, search processing, update processing, deletion processing, etc.) for the database 120. The DB server 104 is a computer that includes a database 120 that stores a data group and executes processing on the database 120.

クライアント端末105は、ブラウザを備え、Webサーバ102と通信するコンピュータである。クライアント端末105は、例えば、パーソナル・コンピュータ、スマートフォン、携帯電話端末などである。   The client terminal 105 is a computer that includes a browser and communicates with the Web server 102. The client terminal 105 is, for example, a personal computer, a smartphone, a mobile phone terminal, or the like.

ここで、ネットワークシステム100内で受け渡されたメッセージ群の一例について説明する。メッセージとは、HTTP、IIOP、SQLのいずれかのプロトコルを用いて、ネットワークシステム100内のコンピュータ間で送受信される電文である。   Here, an example of a message group delivered in the network system 100 will be described. A message is a message transmitted and received between computers in the network system 100 using any one protocol of HTTP, IIOP, and SQL.

図2は、ネットワークシステム内のメッセージ群の一例を示す説明図(その1)である。図2において、ネットワークシステム100内のコンピュータ(Webサーバ102、APサーバ103、DBサーバ104)間で送受信されたメッセージM1〜M16が時系列に示されている。図2中、右向矢印はリクエストメッセージを表し、左向矢印はレスポンスメッセージを表している。   FIG. 2 is an explanatory diagram (part 1) illustrating an example of a message group in the network system. In FIG. 2, messages M1 to M16 transmitted and received between computers (Web server 102, AP server 103, DB server 104) in network system 100 are shown in time series. In FIG. 2, a rightward arrow indicates a request message, and a leftward arrow indicates a response message.

メッセージM1〜M10は、クライアント端末105からの要求に応じて、各コンピュータ間で送受信されたメッセージの集合である。具体的には、メッセージM1〜M10は、クライアント端末105のブラウザにより「URL1」が指定されたことで発生したオンライン処理のトランザクションを示している。   The messages M <b> 1 to M <b> 10 are a set of messages transmitted / received between the computers in response to a request from the client terminal 105. Specifically, the messages M <b> 1 to M <b> 10 indicate an online processing transaction that occurs when “URL1” is designated by the browser of the client terminal 105.

また、メッセージM11〜M16は、APサーバ103からの要求に応じて、APサーバ103とDBサーバ104との間で送受信されたメッセージの集合である。具体的には、メッセージM11〜M16は、バッチ処理のメッセージの集合である。すなわち、オンライン処理のメッセージM1〜M10が、バッチ処理のメッセージM11〜M16と混在している。   Messages M11 to M16 are a set of messages transmitted and received between the AP server 103 and the DB server 104 in response to a request from the AP server 103. Specifically, the messages M11 to M16 are a set of batch processing messages. That is, messages M1 to M10 for online processing are mixed with messages M11 to M16 for batch processing.

例えば、メッセージ群M1〜M16を解析して、オンライン処理にかかる各コンピュータの処理時間を計算する場合、メッセージ群M1〜M16の中からバッチ処理のメッセージM11〜M16を除外する必要がある。ところが、各メッセージM1〜M16には、オンライン処理またはバッチ処理のいずれの処理のものかを判別するための情報が含まれていない。   For example, when analyzing the message groups M1 to M16 and calculating the processing time of each computer for online processing, it is necessary to exclude the batch processing messages M11 to M16 from the message groups M1 to M16. However, the messages M1 to M16 do not include information for determining whether the processing is online processing or batch processing.

そこで、本実施の形態にかかるシステム分析支援装置101は、バッチ処理のメッセージが有する特徴を利用して、ネットワークシステム100内で受け渡されるメッセージ群の中からバッチ処理のメッセージを判別するための情報を作成する。つぎに、図3を用いて、バッチ処理のメッセージが有する特徴について説明する。   Therefore, the system analysis support apparatus 101 according to the present embodiment uses the characteristics of the batch processing message, and information for determining the batch processing message from the message group delivered within the network system 100. Create Next, characteristics of the batch processing message will be described with reference to FIG.

なお、以下の説明において、本明細書では、上位階層のプロトコル(例えば、IIOP)のリクエストメッセージの送信時刻とレスポンスメッセージの送信時刻との間に送信された下位階層のプロトコル(例えば、SQL)のメッセージを「親が存在するメッセージ」という。一方、上位階層のプロトコルのリクエストメッセージの送信時刻とレスポンスメッセージの送信時刻との間に送信されたものではない下位階層のプロトコルのメッセージを「親が存在しないメッセージ」という。   In the following description, in this specification, the lower layer protocol (for example, SQL) transmitted between the request message transmission time and the response message transmission time of the upper layer protocol (for example, IIOP) is described. The message is referred to as a “message with a parent”. On the other hand, a message of a lower layer protocol that is not transmitted between the transmission time of the request message of the upper layer protocol and the transmission time of the response message is referred to as a “message having no parent”.

図3は、ネットワークシステム内のメッセージ群の一例を示す説明図(その2)である。図3において、メッセージM11〜M16は、APサーバ103とDBサーバ104との間で送受信されるバッチ処理のメッセージである。バッチ処理のメッセージM11〜M16は、プロトコル「SQL」のメッセージである。   FIG. 3 is an explanatory diagram (part 2) illustrating an example of a message group in the network system. In FIG. 3, messages M <b> 11 to M <b> 16 are batch processing messages transmitted and received between the AP server 103 and the DB server 104. The batch processing messages M11 to M16 are messages of the protocol “SQL”.

ここで、バッチ処理のメッセージM11〜M16は、直上層のプロトコル「IIOP」のメッセージと親子関係を有さない。親子関係とは、上位階層のプロトコルのコンピュータへの処理要求に伴って、下位階層のプロトコルのコンピュータへの処理要求が発生する呼出関係を表している。   Here, the messages M11 to M16 of the batch processing do not have a parent-child relationship with the message of the protocol “IIOP” in the immediately upper layer. The parent-child relationship represents a call relationship in which a processing request to a lower-layer protocol computer is generated in accordance with a processing request to a higher-layer protocol computer.

バッチ処理のメッセージは直上層のプロトコルのメッセージと親子関係を有さないため、第3階層のプロトコル「SQL」のメッセージうち、親が存在しないメッセージはバッチ処理のメッセージであるといえる。ところが、オンライン処理のメッセージとバッチ処理のメッセージとが混在すると、バッチ処理のメッセージであっても親が存在する場合がある。   Since the message of the batch process does not have a parent-child relationship with the message of the protocol immediately above, it can be said that the message having no parent among the messages of the protocol “SQL” in the third layer is the message of the batch process. However, when online processing messages and batch processing messages are mixed, there may be a parent even for batch processing messages.

図3の例では、バッチ処理のメッセージM11〜M16のうちメッセージM11,M12,M16は、親が存在するメッセージである。このため、オンライン処理とバッチ処理とが混在するネットワークシステム100では、親子関係の有無だけを判断して、バッチ処理のメッセージを判別することは難しい。   In the example of FIG. 3, messages M11, M12, and M16 among the messages M11 to M16 for batch processing are messages that have a parent. For this reason, in the network system 100 in which online processing and batch processing are mixed, it is difficult to determine the message of batch processing by determining only the parent-child relationship.

ここで、バッチ処理のメッセージに親が存在する傾向は、集計期間Tに対する、直上層のプロトコルのリクエストメッセージの送信時刻とレスポンスメッセージの送信時刻との間の期間(以下、「占有期間」という)が占める割合が増加するに伴って顕著になる。   Here, the tendency of the parent to exist in the batch processing message is that the period between the request message transmission time and the response message transmission time of the protocol immediately above the aggregation period T (hereinafter referred to as “occupation period”). As the proportion of occupies increases, it becomes more prominent.

図3の例では、集計期間Tにおいて、直上層のプロトコル「IIOP」のリクエストメッセージM2の送信時刻とレスポンスメッセージM9との間の占有期間は、『t1』である。また、集計期間Tにおいて、直上層のプロトコル「IIOP」のリクエストメッセージM17の送信時刻とレスポンスメッセージ(不図示)との間の占有期間は、『t2』である。   In the example of FIG. 3, in the counting period T, the occupation period between the transmission time of the request message M2 of the protocol “IIOP” of the immediately higher layer and the response message M9 is “t1”. Further, in the counting period T, the occupation period between the transmission time of the request message M17 of the protocol “IIOP” immediately above and the response message (not shown) is “t2”.

換言すれば、集計期間Tに対する占有期間(例えば、『t1+t2』)が占める割合(以下、「占有率」という)の増加に伴って、親が存在する割合が増加するメッセージは、バッチ処理のメッセージであるといえる。   In other words, a message in which the ratio of the presence of a parent increases with an increase in the ratio of the occupation period (for example, “t1 + t2”) to the aggregation period T (hereinafter referred to as “occupancy ratio”) is a message for batch processing. You can say that.

そこで、システム分析支援装置101は、直上層のプロトコルの占有率の増加に伴って親が存在する割合が増加するという特徴を利用して、バッチ処理のメッセージを判別するための情報を作成する。具体的には、例えば、システム分析支援装置101は、第3階層のプロトコル「SQL」のメッセージをオブジェクト単位で分類する。   Therefore, the system analysis support apparatus 101 creates information for discriminating batch processing messages by using the feature that the ratio of the presence of the parent increases as the occupation ratio of the protocol in the immediately upper layer increases. Specifically, for example, the system analysis support apparatus 101 classifies messages of the protocol “SQL” in the third layer in units of objects.

オブジェクトとは、メッセージを分類するためのものである。第3階層のプロトコル「SQL」のメッセージの場合、該メッセージに含まれるデータベース120に対する操作を表す命令文の一部または全部によって表現される。なお、オブジェクトの具体例については後述する。   An object is for classifying messages. In the case of a message of the protocol “SQL” in the third layer, it is expressed by a part or all of a command statement representing an operation on the database 120 included in the message. A specific example of the object will be described later.

つぎに、システム分析支援装置101は、プロトコル「SQL」のメッセージのオブジェクトごとに、該オブジェクトの集計期間T内のメッセージのうち親が存在するメッセージの出現率を求める。そして、システム分析支援装置101は、集計期間Tに対する直上層のプロトコル「IIOP」の占有期間の占有率と、オブジェクトごとの出現率とに基づいて、バッチ処理のオブジェクトを判断する。   Next, the system analysis support apparatus 101 obtains, for each object of the message of the protocol “SQL”, an appearance rate of a message having a parent among messages within the aggregation period T of the object. Then, the system analysis support apparatus 101 determines batch processing objects based on the occupation period of the immediately upper layer protocol “IIOP” with respect to the aggregation period T and the appearance ratio of each object.

これにより、システム分析時に、処理対象となるネットワークシステム100内のメッセージデータ群の中からバッチ処理のオブジェクトのメッセージを判別して除去することができ、分析精度の向上を図ることができる。   Thus, during system analysis, messages of batch processing objects can be determined and removed from the message data group in the network system 100 to be processed, and analysis accuracy can be improved.

(システム分析支援装置101のハードウェア構成)
図4は、実施の形態にかかるシステム分析支援装置のハードウェア構成の一例を示すブロック図である。図4において、システム分析支援装置101は、CPU(Central Processing Unit)401と、ROM(Read‐Only Memory)402と、RAM(Random Access Memory)403と、磁気ディスクドライブ404と、磁気ディスク405と、光ディスクドライブ406と、光ディスク407と、ディスプレイ408と、I/F(Interface)409と、キーボード410と、マウス411と、スキャナ412と、プリンタ413と、を備えている。また、各構成部はバス400によってそれぞれ接続されている。
(Hardware configuration of system analysis support apparatus 101)
FIG. 4 is a block diagram of an example of a hardware configuration of the system analysis support apparatus according to the embodiment. In FIG. 4, a system analysis support apparatus 101 includes a CPU (Central Processing Unit) 401, a ROM (Read-Only Memory) 402, a RAM (Random Access Memory) 403, a magnetic disk drive 404, a magnetic disk 405, An optical disk drive 406, an optical disk 407, a display 408, an I / F (Interface) 409, a keyboard 410, a mouse 411, a scanner 412, and a printer 413 are provided. Each component is connected by a bus 400.

ここで、CPU401は、システム分析支援装置101の全体の制御を司る。ROM402は、ブートプログラムなどのプログラムを記憶している。RAM403は、CPU401のワークエリアとして使用される。磁気ディスクドライブ404は、CPU401の制御にしたがって磁気ディスク405に対するデータのリード/ライトを制御する。磁気ディスク405は、磁気ディスクドライブ404の制御で書き込まれたデータを記憶する。   Here, the CPU 401 controls the entire system analysis support apparatus 101. The ROM 402 stores programs such as a boot program. The RAM 403 is used as a work area for the CPU 401. The magnetic disk drive 404 controls the reading / writing of the data with respect to the magnetic disk 405 according to control of CPU401. The magnetic disk 405 stores data written under the control of the magnetic disk drive 404.

光ディスクドライブ406は、CPU401の制御にしたがって光ディスク407に対するデータのリード/ライトを制御する。光ディスク407は、光ディスクドライブ406の制御で書き込まれたデータを記憶したり、光ディスク407に記憶されたデータをコンピュータに読み取らせたりする。   The optical disk drive 406 controls reading / writing of data with respect to the optical disk 407 according to the control of the CPU 401. The optical disk 407 stores data written under the control of the optical disk drive 406, or causes the computer to read data stored on the optical disk 407.

ディスプレイ408は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ408は、例えば、CRT、TFT液晶ディスプレイ、プラズマディスプレイなどを採用することができる。   The display 408 displays data such as a document, an image, and function information as well as a cursor, an icon, or a tool box. As the display 408, for example, a CRT, a TFT liquid crystal display, a plasma display, or the like can be adopted.

I/F409は、通信回線を通じてLAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどのネットワーク110に接続され、このネットワーク110を介して他のコンピュータに接続される。そして、I/F409は、ネットワーク110と内部のインターフェースを司り、外部のコンピュータからのデータの入出力を制御する。I/F409には、例えば、モデムやLANアダプタなどを採用することができる。   The I / F 409 is connected to a network 110 such as a LAN (Local Area Network), a WAN (Wide Area Network), and the Internet through a communication line, and is connected to another computer via the network 110. The I / F 409 controls an internal interface with the network 110 and controls input / output of data from an external computer. For example, a modem or a LAN adapter may be employed as the I / F 409.

キーボード410は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス411は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。   The keyboard 410 includes keys for inputting characters, numbers, various instructions, and the like, and inputs data. Moreover, a touch panel type input pad or a numeric keypad may be used. The mouse 411 moves the cursor, selects a range, moves the window, changes the size, and the like. A trackball or a joystick may be used as long as they have the same function as a pointing device.

スキャナ412は、画像を光学的に読み取り、システム分析支援装置101内に画像データを取り込む。なお、スキャナ412は、OCR(Optical Character Reader)機能を持たせてもよい。また、プリンタ413は、画像データや文書データを印刷する。プリンタ413には、例えば、レーザプリンタやインクジェットプリンタを採用することができる。   The scanner 412 optically reads an image and takes in the image data into the system analysis support apparatus 101. The scanner 412 may have an OCR (Optical Character Reader) function. The printer 413 prints image data and document data. As the printer 413, for example, a laser printer or an ink jet printer can be adopted.

なお、図1に示したWebサーバ102、APサーバ103、DBサーバ104およびクライアント端末105についても、上述したシステム分析支援装置101と同様のハードウェア構成によって実現することができる。   Note that the Web server 102, AP server 103, DB server 104, and client terminal 105 shown in FIG. 1 can also be realized with the same hardware configuration as the system analysis support apparatus 101 described above.

(メッセージDB500の記憶内容)
つぎに、図5を用いて、システム分析支援装置101が用いるメッセージDB500について説明する。メッセージDB500は、例えば、図4に示したRAM403、磁気ディスク405、光ディスク407などの記憶装置により実現される。
(Contents stored in message DB 500)
Next, the message DB 500 used by the system analysis support apparatus 101 will be described with reference to FIG. The message DB 500 is realized by a storage device such as the RAM 403, the magnetic disk 405, and the optical disk 407 shown in FIG.

図5は、メッセージDBの記憶内容の一例を示す説明図である。図5において、メッセージDB500は、メッセージID、タイムスタンプ、プロトコル、メッセージ種別およびオブジェクトのフィールドを有する。各フィールドに情報を設定することで、メッセージのメッセージデータ(例えば、メッセージデータ500−1〜500−12)がレコードとして記憶されている。   FIG. 5 is an explanatory diagram showing an example of the contents stored in the message DB. In FIG. 5, the message DB 500 has fields for message ID, time stamp, protocol, message type, and object. By setting information in each field, message data (for example, message data 500-1 to 500-12) of the message is stored as a record.

メッセージIDは、ネットワークシステム100内で送受信されたメッセージの識別子である。ペアとなる一対のメッセージには、同一のメッセージIDが付与される。タイムスタンプは、メッセージの送信時刻である。なお、各メッセージデータは、送信時刻の早い順にソートされてメッセージDB500に記憶されている。プロトコルは、メッセージのプロトコルである。   The message ID is an identifier of a message transmitted / received in the network system 100. The same message ID is assigned to a pair of messages. The time stamp is a message transmission time. Each message data is sorted and stored in the message DB 500 in ascending order of transmission time. The protocol is a message protocol.

メッセージ種別は、リクエストメッセージまたはレスポンスメッセージを示す情報である。以下、リクエストメッセージはメッセージ種別「リクエスト」のメッセージを示し、レスポンスメッセージはメッセージ種別「レスポンス」のメッセージを示す。オブジェクトは、各メッセージを分類するための識別子である。図5の例では、第3階層のプロトコル「SQL」のリクエストメッセージについてのオブジェクトのみ表記されている。   The message type is information indicating a request message or a response message. Hereinafter, the request message indicates a message of the message type “request”, and the response message indicates a message of the message type “response”. The object is an identifier for classifying each message. In the example of FIG. 5, only the object for the request message of the protocol “SQL” in the third layer is shown.

ここで、第3階層のプロトコル「SQL」のリクエストメッセージについてのオブジェクトについて説明する。例えば、オブジェクトSQL1は、リクエストメッセージS1に含まれるDB120に対する操作を表す命令文から抽出された文字列である。   Here, an object about the request message of the protocol “SQL” in the third layer will be described. For example, the object SQL1 is a character string extracted from a command statement representing an operation on the DB 120 included in the request message S1.

より具体的には、例えば、リクエストメッセージS1に含まれるDB120に対する操作を表す命令文を「SELECT ID, Name FROM Customer WHERE ID=100」とする。この命令文は、DB120内の「Customer」テーブルの中から、「ID=100」の「ID」および「Name」を取得するためのものである。この場合、例えば、命令文に含まれる「SELECT … FROM Customer WHERE …」をオブジェクト「SQL1」とすることができる。なお、オブジェクト「SQL1」に含まれる「…」は任意の文字列を示している。   More specifically, for example, a command statement representing an operation on the DB 120 included in the request message S1 is “SELECT ID, Name FROM Customer WHERE ID = 100”. This statement is for acquiring “ID” and “Name” of “ID = 100” from the “Customer” table in the DB 120. In this case, for example, “SELECT... FROM Customer WHERE...” Included in the statement can be set as the object “SQL1”. Note that “...” included in the object “SQL1” indicates an arbitrary character string.

また、命令文を「DELETE FROM Customer WHERE ID=100」とする。この命令文は、DB120内の「Customer」テーブルの中から、「ID=100」のレコードを削除するためのものである。この場合、例えば、命令文に含まれる「DELETE FROM Customer WHERE …」をオブジェクト「SQL1」とすることができる。   Also, the command statement is “DELETE FROM Customer WHERE ID = 100”. This statement is for deleting the record of “ID = 100” from the “Customer” table in the DB 120. In this case, for example, “DELETE FROM Customer WHERE...” Included in the statement can be set as the object “SQL1”.

また、命令文を「UPDATE Customer SET ID=100」とする。この命令文は、DB120内の「Customer」テーブルの中から、「ID=100」のレコードを更新するためのものである。この場合、例えば、命令文に含まれる「UPDATE Customer SET …」をオブジェクト「SQL1」とすることができる。   The command statement is “UPDATE Customer SET ID = 100”. This statement is for updating the record of “ID = 100” from the “Customer” table in the DB 120. In this case, for example, “UPDATE Customer SET...” Included in the command statement can be the object “SQL1”.

このように、オブジェクトは、リクエストメッセージに含まれる命令文の一つ以上の句や文節の組合せによって表現することができる。プロトコル「HTTP」のリクエストメッセージの場合、オブジェクトとして、例えば、URL(Uniform Resource Locator)を用いることができる。また、プロトコル「IIOP」のリクエストメッセージの場合、オブジェクトとして、例えば、ある機能を実現するためのプログラムの名称を用いることができる。   As described above, an object can be expressed by a combination of one or more phrases or clauses included in a request message. In the case of a request message of the protocol “HTTP”, for example, a URL (Uniform Resource Locator) can be used as an object. In the case of a request message of the protocol “IIOP”, for example, the name of a program for realizing a certain function can be used as an object.

ここで、メッセージデータ500−4を例に挙げると、送信時刻「00:00:00.003」にプロトコル「SQL」のリクエストメッセージS1が、APサーバ103からDBサーバ104に送信されたことを認識できる。また、リクエストメッセージS1のオブジェクト「SQL1」を認識することができる。   Here, taking the message data 500-4 as an example, it is recognized that the request message S1 of the protocol “SQL” is transmitted from the AP server 103 to the DB server 104 at the transmission time “00: 00: 00.003”. it can. Further, the object “SQL1” of the request message S1 can be recognized.

メッセージの送信元および送信先のコンピュータは、プロトコルとメッセージ種別から特定することができる。例えば、プロトコル「HTTP」、メッセージ種別「リクエスト」の場合、送信元のコンピュータはクライアント端末105であり、送信先のコンピュータはWebサーバ102である。なお、上述した説明では、タイムスタンプをメッセージの送信時刻と定義したが、タイムスタンプをメッセージの受信時刻と定義してもよい。   The message source and destination computers can be identified from the protocol and the message type. For example, in the case of the protocol “HTTP” and the message type “request”, the transmission source computer is the client terminal 105 and the transmission destination computer is the Web server 102. In the above description, the time stamp is defined as the message transmission time, but the time stamp may be defined as the message reception time.

(階層構造定義情報600の具体例)
つぎに、ネットワークシステム100のプロトコルの階層構造を定義する階層構造定義情報の具体例について説明する。
(Specific example of hierarchical structure definition information 600)
Next, a specific example of the hierarchical structure definition information that defines the hierarchical structure of the protocol of the network system 100 will be described.

図6は、階層構造定義情報の具体例を示す説明図である。図6において、階層構造定義情報600には、ネットワークシステム100の3階層のプロトコルが定義されている。具体的には、階層構造定義情報600には、最上位の第1階層にHTTPが定義され、第2階層にIIOPが定義され、最下位の第3階層にSQLが定義されている。   FIG. 6 is an explanatory diagram of a specific example of hierarchical structure definition information. In FIG. 6, the hierarchical structure definition information 600 defines a three-layer protocol of the network system 100. Specifically, in the hierarchical structure definition information 600, HTTP is defined in the highest first hierarchy, IIOP is defined in the second hierarchy, and SQL is defined in the lowest third hierarchy.

(分析支援装置101の機能的構成)
図7は、実施の形態にかかるシステム分析支援装置の機能的構成の一例を示すブロック図である。図7において、システム分析支援装置101は、取得部701と、検出部702と、特定部703と、選択部704と、第1の算出部705と、第2の算出部706と、判定部707と、出力部708と、削除部709と、を含む構成である。各機能部(取得部701〜削除部709)は、具体的には、例えば、図4に示したROM402、RAM403、磁気ディスク405、光ディスク407などの記憶装置に記憶されたプログラムをCPU401に実行させることにより、または、I/F409により、その機能を実現する。また、各機能部の処理結果は、特に指定する場合を除いて、RAM403、磁気ディスク405、光ディスク407などの記憶装置に記憶される。
(Functional configuration of the analysis support apparatus 101)
FIG. 7 is a block diagram of an example of a functional configuration of the system analysis support apparatus according to the embodiment. 7, the system analysis support apparatus 101 includes an acquisition unit 701, a detection unit 702, a specification unit 703, a selection unit 704, a first calculation unit 705, a second calculation unit 706, and a determination unit 707. And an output unit 708 and a deletion unit 709. Specifically, each function unit (acquisition unit 701 to deletion unit 709) causes the CPU 401 to execute a program stored in a storage device such as the ROM 402, the RAM 403, the magnetic disk 405, and the optical disk 407 illustrated in FIG. Or the I / F 409 realizes the function. Further, the processing results of the respective functional units are stored in a storage device such as the RAM 403, the magnetic disk 405, and the optical disk 407 unless otherwise specified.

取得部701は、ネットワークシステム100のプロトコルの階層構造が定義された階層構造定義情報600(図6参照)を取得する機能を有する。具体的には、例えば、取得部701が、階層構造定義情報600を、図4に示したキーボード410やマウス411を用いたユーザの操作入力により取得してもよく、また、外部のコンピュータから階層構造定義情報600を受信してもよい。階層構造定義情報600によれば、ネットワークシステム100のプロトコルの階層構造を認識することができる。   The acquisition unit 701 has a function of acquiring hierarchical structure definition information 600 (see FIG. 6) in which the hierarchical structure of the protocol of the network system 100 is defined. Specifically, for example, the acquisition unit 701 may acquire the hierarchical structure definition information 600 by a user operation input using the keyboard 410 or the mouse 411 illustrated in FIG. The structure definition information 600 may be received. According to the hierarchical structure definition information 600, the hierarchical structure of the protocol of the network system 100 can be recognized.

また、取得部701は、ネットワークシステム100内で受け渡されたメッセージ群を取得する機能を有する。メッセージは、例えば、メッセージID、タイムスタンプ、プロトコルおよびメッセージ種別を含む電文である。また、リクエストメッセージには、オブジェクトが含まれている。   The acquisition unit 701 has a function of acquiring a message group delivered within the network system 100. The message is, for example, a message including a message ID, a time stamp, a protocol, and a message type. The request message includes an object.

具体的には、例えば、取得部701が、ネットワークシステム100内に設けられたスイッチ(不図示)を介して、ネットワークシステム100内のコンピュータ間で送受信されるパケットをキャプチャする。そして、システム分析支援装置101において、キャプチャしたパケット群をメッセージ解析して各メッセージを再構成することにより、メッセージ群を取得する。   Specifically, for example, the acquisition unit 701 captures packets transmitted and received between computers in the network system 100 via a switch (not shown) provided in the network system 100. Then, the system analysis support apparatus 101 acquires a message group by analyzing the captured packet group and reconstructing each message.

また、取得部701が、例えば、メッセージ群を、キーボード410やマウス411を用いたユーザの操作入力により取得してもよく、さらに、外部のコンピュータからメッセージ群を受信してもよい。取得されたメッセージのメッセージID、タイムスタンプ、プロトコルおよびメッセージ種別は、例えば、図5に示したメッセージDB500に記憶される。   For example, the acquisition unit 701 may acquire a message group by a user operation input using the keyboard 410 or the mouse 411, and may further receive a message group from an external computer. The message ID, time stamp, protocol, and message type of the acquired message are stored in, for example, the message DB 500 shown in FIG.

検出部702は、取得されたメッセージ群の中から、ネットワークシステム100内のデータベース120を操作するためのプロトコルの直上層のプロトコルのリクエストメッセージとレスポンスメッセージのペアを検出する機能を有する。   The detection unit 702 has a function of detecting a request message and response message pair of a protocol immediately above the protocol for operating the database 120 in the network system 100 from the acquired message group.

ここで、データベース120を操作するためのプロトコルは、ネットワークシステム100の第3階層に定義されている「SQL」である。また、プロトコル「SQL」の直上層のプロトコルは、ネットワークシステム100の第2階層に定義されている「IIOP」である。   Here, the protocol for operating the database 120 is “SQL” defined in the third layer of the network system 100. The protocol immediately above the protocol “SQL” is “IIOP” defined in the second layer of the network system 100.

具体的には、例えば、まず、検出部702が、メッセージDB500の中から、プロトコル「IIOP」の任意のメッセージデータを検出する。つぎに、検出部702が、メッセージDB500の中から、選択したメッセージデータとメッセージIDが同一かつプロトコル「IIOP」のメッセージデータを検出する。これにより、プロトコル「IIOP」のリクエストメッセージとレスポンスメッセージのペアを検出することができる。   Specifically, for example, the detection unit 702 first detects arbitrary message data of the protocol “IIOP” from the message DB 500. Next, the detection unit 702 detects message data having the same message ID as the selected message data and the protocol “IIOP” from the message DB 500. Thereby, a pair of a request message and a response message of the protocol “IIOP” can be detected.

一例として、検出部702が、メッセージDB500の中からメッセージデータ500−3を検出した場合を想定する。この場合、検出部702が、メッセージDB500の中からメッセージID「I1」かつプロトコル「IIOP」のメッセージデータ500−7を検出する。これにより、プロトコル「IIOP」のリクエストメッセージI1とレスポンスメッセージI1とのペアを検出することができる。   As an example, it is assumed that the detection unit 702 detects message data 500-3 from the message DB 500. In this case, the detection unit 702 detects the message data 500-7 of the message ID “I1” and the protocol “IIOP” from the message DB 500. Thereby, a pair of the request message I1 and the response message I1 of the protocol “IIOP” can be detected.

検出部702は、例えば、メッセージDB500の中から検出されていないプロトコル「IIOP」のメッセージデータがなくなるまで、ペアを検出する処理を繰り返し行う。これにより、メッセージDB500の中からプロトコル「IIOP」のリクエストメッセージとレスポンスメッセージのすべてのペアを検出することができる。   For example, the detection unit 702 repeatedly performs the process of detecting pairs until there is no message data of the protocol “IIOP” that has not been detected in the message DB 500. As a result, all pairs of request message and response message of protocol “IIOP” can be detected from the message DB 500.

また、検出部702は、検出したペアごとに、該ペアのリクエストメッセージの送信時刻をリクエスト時刻として特定し、該ペアのレスポンスメッセージの送信時刻をレスポンス時刻として特定する。一例として、プロトコル「IIOP」かつメッセージID「I1」のペアが検出された場合を想定する。この場合、メッセージデータ500−3のタイムスタンプ「00:00:00.002」をリクエスト時刻とし、メッセージデータ500−7のタイムスタンプ「00:00:00.006」をレスポンス時刻として特定する。   Further, for each detected pair, the detection unit 702 specifies the transmission time of the request message of the pair as a request time, and specifies the transmission time of the response message of the pair as a response time. As an example, a case where a pair of protocol “IIOP” and message ID “I1” is detected is assumed. In this case, the time stamp “00: 00: 0.0002” of the message data 500-3 is specified as the request time, and the time stamp “00: 00: 0.0006” of the message data 500-7 is specified as the response time.

検出された検出結果は、例えば、図8に示すペア情報テーブル800に記憶される。ペア情報テーブル800は、例えば、RAM403、磁気ディスク405、光ディスク407などの記憶装置により実現される。ここで、ペア情報テーブル800について説明する。   The detected detection result is stored in, for example, the pair information table 800 shown in FIG. The pair information table 800 is realized by a storage device such as the RAM 403, the magnetic disk 405, and the optical disk 407, for example. Here, the pair information table 800 will be described.

図8は、ペア情報テーブルの記憶内容の一例を示す説明図である。図8において、ペア情報テーブル800は、ペアID、メッセージID、リクエスト時刻およびレスポンス時刻のフィールドを有する。各フィールドに情報を設定することで、検出されたペアごとのペア情報(例えば、ペア情報800−1,800−2)がレコードとして記憶されている。   FIG. 8 is an explanatory diagram showing an example of the stored contents of the pair information table. In FIG. 8, a pair information table 800 has fields for a pair ID, a message ID, a request time, and a response time. By setting information in each field, pair information (for example, pair information 800-1 and 800-2) for each detected pair is stored as a record.

ここで、ペアIDは、プロトコル「IIOP」のリクエストメッセージとレスポンスメッセージとのペアの識別子である。メッセージIDは、ペアのメッセージIDである。リクエスト時刻は、ペアのリクエストメッセージの送信時刻である。レスポンス時刻は、ペアのレスポンスメッセージの送信時刻である。   Here, the pair ID is an identifier of a pair of a request message and a response message of the protocol “IIOP”. The message ID is a paired message ID. The request time is the transmission time of the pair request message. The response time is the transmission time of the pair response message.

例えば、ペア情報800−1によれば、リクエスト時刻「00:00:00.002」にペアP1のリクエストメッセージI1が送信され、レスポンス時刻「00:00:00.006」にペアP1のレスポンスメッセージI1が送信されたことを認識できる。   For example, according to the pair information 800-1, the request message I1 of the pair P1 is transmitted at the request time “00: 00: 00.002”, and the response message of the pair P1 at the response time “00: 00: 00.006”. It can be recognized that I1 has been transmitted.

図7の説明に戻り、特定部703は、取得されたメッセージ群のうち、ネットワークシステム100内のデータベース120を操作するためのプロトコルのメッセージのオブジェクトを特定する機能を有する。   Returning to the description of FIG. 7, the specifying unit 703 has a function of specifying a message object of a protocol for operating the database 120 in the network system 100 among the acquired message group.

具体的には、例えば、まず、特定部703が、プロトコル「SQL」のリクエストメッセージのオブジェクトを特定する。より具体的には、例えば、特定部703が、取得されたプロトコル「SQL」のリクエストメッセージの中から、予め規定された抽出ルールに従って命令文の一部または全部を抽出することによりオブジェクトを特定する。   Specifically, for example, first, the specifying unit 703 specifies an object of a request message of the protocol “SQL”. More specifically, for example, the specifying unit 703 specifies an object by extracting a part or all of a command sentence from a request message of the acquired protocol “SQL” according to a predetermined extraction rule. .

例えば、取得されたリクエストメッセージS1に含まれる命令文を「SELECT ID, Name FROM Customer WHERE ID=100」とする。この場合、例えば、特定部703が、リクエストメッセージS1の中から、「SELECT … FROM Customer WHERE …」を抽出することにより、オブジェクト「SQL1」を特定する。   For example, the command statement included in the acquired request message S1 is “SELECT ID, Name FROM Customer WHERE ID = 100”. In this case, for example, the identifying unit 703 identifies the object “SQL1” by extracting “SELECT ... FROM Customer WHERE ...” from the request message S1.

特定されたリクエストメッセージのオブジェクトは、メッセージDB500内の該当するメッセージデータのオブジェクトフィールドに設定される。例えば、特定されたリクエストメッセージS1のオブジェクト「SQL1」は、メッセージDB500内のメッセージデータ500−4のオブジェクトフィールドに設定される。   The specified request message object is set in the object field of the corresponding message data in the message DB 500. For example, the identified object “SQL1” of the request message S1 is set in the object field of the message data 500-4 in the message DB 500.

つぎに、特定部703が、プロトコル「SQL」のレスポンスメッセージのオブジェクトを特定する。具体的には、例えば、まず、特定部703が、メッセージDB500の中から、プロトコル「SQL」かつメッセージ種別「リクエスト」のメッセージデータを選択する。そして、特定部703が、選択したメッセージデータのオブジェクトを特定する。   Next, the identifying unit 703 identifies the response message object of the protocol “SQL”. Specifically, for example, the identifying unit 703 first selects message data of the protocol “SQL” and the message type “request” from the message DB 500. Then, the specifying unit 703 specifies the object of the selected message data.

このあと、特定部703が、メッセージDB500の中から、選択したメッセージデータとメッセージIDが同一かつプロトコル「SQL」のメッセージデータを検索する。ここで、メッセージデータが検索された場合、特定部703が、メッセージDB500内の該メッセージデータのオブジェクトフィールドに、特定したオブジェクトを設定する。   Thereafter, the specifying unit 703 searches the message DB 500 for message data having the same message ID as the selected message data and the protocol “SQL”. Here, when the message data is searched, the specifying unit 703 sets the specified object in the object field of the message data in the message DB 500.

これにより、プロトコル「SQL」のレスポンスメッセージのオブジェクトを特定することができる。なお、プロトコル「SQL」のレスポンスメッセージのオブジェクトの特定例については、図11を用いて後述する。   Thereby, the object of the response message of the protocol “SQL” can be specified. A specific example of the response message object of the protocol “SQL” will be described later with reference to FIG.

選択部704は、取得されたメッセージ群の中から、所定期間T内に送信された、データベース120に対する所定の操作に関するメッセージの集合を選択する機能を有する。データベース120に対する所定の操作に関するメッセージとは、データベース120に対する所定の操作を表す命令文を含むリクエストメッセージおよび該リクエストメッセージと同一メッセージIDのレスポンスメッセージである。   The selection unit 704 has a function of selecting a set of messages relating to a predetermined operation on the database 120 transmitted within a predetermined period T from the acquired message group. The message related to the predetermined operation on the database 120 is a request message including a command statement representing the predetermined operation on the database 120 and a response message having the same message ID as the request message.

すなわち、所定の操作に関するメッセージの集合は、プロトコル「SQL」の同一オブジェクトのメッセージの集合である。具体的には、例えば、選択部704が、メッセージDB500のオブジェクトフィールドを参照して、プロトコル「SQL」のオブジェクトごとに、所定期間T内に送信された同一オブジェクトのメッセージの集合を抽出する。   That is, a set of messages related to a predetermined operation is a set of messages of the same object of the protocol “SQL”. Specifically, for example, the selection unit 704 refers to the object field of the message DB 500 and extracts a set of messages of the same object transmitted within a predetermined period T for each object of the protocol “SQL”.

一例として、所定期間Tを「00:00:00.000〜00:00:00.011」とする。この場合、選択部704が、例えば、メッセージDB500のオブジェクトフィールドを参照して、所定期間T内に送信されたオブジェクト「SQL1」のリクエストメッセージS1およびレスポンスメッセージS1を選択する。   As an example, the predetermined period T is set to “00: 00: 00.000 to 00: 00: 00.011”. In this case, for example, the selection unit 704 refers to the object field of the message DB 500 and selects the request message S1 and the response message S1 of the object “SQL1” transmitted within the predetermined period T.

なお、所定期間Tは、任意に設定可能であり、例えば、RAM403、磁気ディスク405、光ディスク407などの記憶装置に記憶されている。具体的には、例えば、所定期間Tは、例えば、10分単位や1時間単位の期間である。   The predetermined period T can be arbitrarily set, and is stored in a storage device such as the RAM 403, the magnetic disk 405, and the optical disk 407, for example. Specifically, for example, the predetermined period T is, for example, a period of 10 minutes or 1 hour.

第1の算出部705は、選択されたメッセージの集合のうち、検出部702によって検出された1以上のペアのリクエスト時刻とレスポンス時刻の間に送信されたメッセージの割合を表す指標値を算出する機能を有する。   The first calculation unit 705 calculates an index value representing the ratio of messages transmitted between the request time and the response time of one or more pairs detected by the detection unit 702 in the selected set of messages. It has a function.

ここで、選択されたメッセージは、プロトコル「SQL」のメッセージである。検出されたペアは、プロトコル「IIOP」のメッセージのペアである。すなわち、検出された1つ以上のペアのリクエスト時刻とレスポンス時刻の間に送信されたメッセージとは、親が存在するメッセージである。   Here, the selected message is a message of the protocol “SQL”. The detected pair is a message pair of the protocol “IIOP”. That is, the message transmitted between the request time and the response time of one or more detected pairs is a message having a parent.

具体的には、例えば、第1の算出部705が、プロトコル「SQL」のオブジェクトごとに、選択された該オブジェクトのメッセージの集合のうち、親が存在するメッセージの割合を表す指標値(以下、「出現率」という)を算出する。なお、第1の算出部705の具体的な処理内容については、図12を用いて後述する。   Specifically, for example, for each object of the protocol “SQL”, the first calculation unit 705 indicates an index value (hereinafter, referred to as a ratio of messages having a parent among a set of messages of the selected object). (Referred to as “appearance rate”). The specific processing content of the first calculation unit 705 will be described later with reference to FIG.

以下説明のため、プロトコル「SQL」の任意のオブジェクトを「オブジェクトSQLi」と表記する。   For the sake of explanation, an arbitrary object of the protocol “SQL” is expressed as “object SQLi”.

第2の算出部706は、所定期間Tのうち、検出された1以上のペアのリクエスト時刻からレスポンス時刻までの期間(以下、「占有期間」という)が占める割合を表す指標値(以下、「占有率」という)を算出する機能を有する。ここで、占有期間とは、所定期間Tのうち多重度が1以上の期間の合計である。多重度とは、データベース120を操作するためのプロトコルの直上層のプロトコルのペアのリクエスト時刻からレスポンス時刻までの期間が重なっている数である。   The second calculation unit 706 includes an index value (hereinafter, referred to as “the occupied period”) that occupies a period from the request time to the response time of one or more detected pairs in the predetermined period T (hereinafter referred to as “occupation period”). It has a function of calculating an occupancy rate). Here, the occupation period is a total of periods in which the multiplicity is 1 or more in the predetermined period T. The multiplicity is the number of overlapping periods from the request time to the response time of the protocol pair immediately above the protocol for operating the database 120.

具体的には、例えば、第2の算出部706が、所定期間Tのうち、多重度が1以上の期間の合計を表すプロトコル「IIOP」の占有期間を算出する。そして、第2の算出部706が、所定期間Tのうち、プロトコル「IIOP」の占有期間が占める割合を表す占有率を算出する。なお、第2の算出部706の具体的な処理内容は、図13を用いて後述する。   Specifically, for example, the second calculation unit 706 calculates the occupation period of the protocol “IIOP” that represents the total of the multiplicity periods of 1 or more in the predetermined period T. Then, the second calculation unit 706 calculates an occupancy ratio representing a ratio of the occupation period of the protocol “IIOP” in the predetermined period T. The specific processing content of the second calculation unit 706 will be described later with reference to FIG.

判定部707は、算出された出現率および占有率に基づいて、データベース120に対する所定の操作がバッチ処理の操作か否かを判定する。具体的には、例えば、判定部707が、プロトコル「SQL」のオブジェクトSQLiの出現率(以下、「出現率Ai」という)および所定期間Tの占有率(以下、「占有率P」という)に基づいて、オブジェクトSQLiがバッチ処理のオブジェクトか否かを判定する。   The determination unit 707 determines whether a predetermined operation on the database 120 is a batch processing operation based on the calculated appearance rate and occupancy rate. Specifically, for example, the determination unit 707 determines the appearance rate of the object SQLi of the protocol “SQL” (hereinafter referred to as “appearance rate Ai”) and the occupation rate of the predetermined period T (hereinafter referred to as “occupancy rate P”). Based on this, it is determined whether or not the object SQLi is an object for batch processing.

より具体的には、例えば、判定部707が、オブジェクトSQLiの出現率Aiが閾値α以下かつ所定期間Tの占有率Pが閾値β以下の場合、オブジェクトSQLiがバッチ処理のオブジェクトであると判定する。閾値α、βは、予め設定されてROM402、RAM403、磁気ディスク405、光ディスク407などの記憶装置に記憶されている。   More specifically, for example, when the appearance rate Ai of the object SQLi is equal to or less than the threshold value α and the occupation rate P of the predetermined period T is equal to or less than the threshold value β, the determination unit 707 determines that the object SQLi is an object for batch processing. . The threshold values α and β are set in advance and stored in a storage device such as the ROM 402, the RAM 403, the magnetic disk 405, and the optical disk 407.

ここで、オブジェクトSQLiの出現率Aiが低ければ低いほど、オブジェクトSQLiがバッチ処理のオブジェクトである可能性が高くなる。また、所定期間Tの占有率Pが低ければ低いほど、オブジェクトSQLiがバッチ処理のオブジェクトである可能性が高くなる。   Here, the lower the appearance rate Ai of the object SQLi, the higher the possibility that the object SQLi is an object for batch processing. In addition, the lower the occupation ratio P of the predetermined period T, the higher the possibility that the object SQLi is an object for batch processing.

すなわち、上記閾値α、βを小さい値に設定するほど、バッチ処理のオブジェクトを正確に判定することができる。一方、上記閾値α、βの値が小さすぎると、バッチ処理のオブジェクトであると判定される基準が厳しくなり、オブジェクトSQLiがバッチ処理のオブジェクトであっても判定されない場合がある。   That is, the smaller the thresholds α and β are set, the more accurately the batch processing object can be determined. On the other hand, if the threshold values α and β are too small, the criterion for determining that the object is a batch process becomes strict, and the object SQLi may not be determined even if it is a batch process object.

このため、閾値αは、シミュレーションを行うなどして、オブジェクトSQLiの出現率Aiが閾値α以下の場合、オブジェクトSQLiがバッチ処理のオブジェクトである可能性が高くなる適切な値(例えば、10[%])に設定される。同様に、閾値βは、シミュレーションを行うなどして、所定期間Tの占有率Pが閾値β以下の場合、オブジェクトSQLiがバッチ処理のオブジェクトである可能性が高くなる適切な値(例えば、10[%])に設定される。   For this reason, the threshold value α is an appropriate value (for example, 10 [%] that increases the possibility that the object SQLi is an object of batch processing when the appearance rate Ai of the object SQLi is equal to or less than the threshold value α by performing a simulation or the like. ]). Similarly, the threshold value β is an appropriate value (for example, 10 [], for example, when the occupation rate P of the predetermined period T is equal to or less than the threshold value β by performing a simulation or the like. %]).

また、選択部704は、複数の所定期間の各々の所定期間ごとに、メッセージ群の中から、各々の所定期間内に送信された、オブジェクトSQLiのメッセージの集合を選択することにしてもよい。ここで、複数の所定期間は、例えば、メッセージ群の集計期間全体を所定期間Tで区切って分割された期間の集合である。   The selection unit 704 may select a set of messages of the object SQLi transmitted within each predetermined period from the message group for each predetermined period of the plurality of predetermined periods. Here, the plurality of predetermined periods are, for example, a set of periods divided by dividing the entire aggregation period of the message group by the predetermined period T.

以下説明のため、複数の所定期間を「集計期間T1〜Tm」と表記し、集計期間T1〜Tmのうち任意の集計期間を「集計期間Tj」と表記する(j=1,2,…,m)。   For the following description, a plurality of predetermined periods are denoted as “aggregation periods T1 to Tm”, and an arbitrary aggregation period among the aggregation periods T1 to Tm is denoted as “aggregation period Tj” (j = 1, 2,... m).

また、第1の算出部705は、集計期間Tjごとに、集計期間Tjごとに選択されたオブジェクトSQLiのメッセージの集合のうち、親が存在するメッセージの割合を表す出現率Aiを算出することにしてもよい。また、第2の算出部706は、集計期間Tjごとに、集計期間Tjのうち占有期間が占める割合を表す占有率Pを算出することにしてもよい。   In addition, the first calculation unit 705 calculates, for each aggregation period Tj, an appearance rate Ai that represents a ratio of messages in which a parent exists in a set of messages of the object SQLi selected for each aggregation period Tj. May be. In addition, the second calculation unit 706 may calculate an occupancy rate P that represents a ratio of the occupation period in the aggregation period Tj for each aggregation period Tj.

以下説明のため、集計期間TjにおけるオブジェクトSQLiの出現率Aiを「出現率Aji」と表記する。また、集計期間Tjのうち占有期間が占める割合を表す占有率Pを「占有率Pj」と表記する。 For the sake of explanation, the appearance rate Ai of the object SQLi in the aggregation period Tj is expressed as “appearance rate A j i”. Further, the occupation rate P representing the proportion of the occupation period in the total period Tj is expressed as “occupancy rate Pj”.

算出された集計期間TjにおけるオブジェクトSQLiの出現率Ajiおよび占有率Pjは、例えば、図9に示す出現率/占有率テーブル900に記憶される。出現率/占有率テーブル900は、例えば、RAM403、磁気ディスク405、光ディスク407などの記憶装置により実現される。ここで、出現率/占有率テーブル900について説明する。 The appearance rate A j i and the occupation rate Pj of the object SQLi in the calculated total period Tj are stored in, for example, the appearance rate / occupancy rate table 900 illustrated in FIG. The appearance rate / occupancy rate table 900 is realized by a storage device such as the RAM 403, the magnetic disk 405, and the optical disk 407, for example. Here, the appearance rate / occupancy rate table 900 will be described.

図9は、出現率/占有率テーブルの記憶内容の一例を示す説明図である。図9において、出現率/占有率テーブル900は、集計期間ID、オブジェクトID、出現率および占有率のフィールドを有する。各フィールドに情報を設定することで、集計期間Tjごとの出現率/占有率情報(例えば、出現率/占有率情報900−1,900−2)がレコードとして記憶されている。   FIG. 9 is an explanatory diagram of an example of the contents stored in the appearance rate / occupancy rate table. In FIG. 9, the appearance rate / occupancy rate table 900 has fields of a total period ID, an object ID, an appearance rate, and an occupation rate. By setting information in each field, appearance rate / occupancy rate information (for example, appearance rate / occupancy rate information 900-1 and 900-2) for each aggregation period Tj is stored as a record.

集計期間IDは、集計期間Tjの識別子である。オブジェクトIDは、プロトコル「SQL」のオブジェクトの識別子である。出現率は、集計期間TjにおけるオブジェクトSQLiの出現率Ajiである。占有率は、集計期間Tjのうち占有期間が占める割合を表す占有率Pjである。 The aggregation period ID is an identifier of the aggregation period Tj. The object ID is an identifier of an object of the protocol “SQL”. The appearance rate is the appearance rate A j i of the object SQLi in the total period Tj. The occupation ratio is an occupation ratio Pj that represents the ratio of the occupation period to the total period Tj.

一例として出現率/占有率情報900−1を例に挙げると、集計期間T1におけるオブジェクトSQL1の出現率A11、オブジェクトSQL2の出現率A12、オブジェクトSQL3の出現率A13、および集計期間T1の占有率P1が設定されている。 Taking the appearance rate / occupancy rate information 900-1 as an example, the appearance rate A 1 1 of the object SQL1, the appearance rate A 1 2 of the object SQL2, the appearance rate A 1 3 of the object SQL3, and the aggregation in the aggregation period T1 The occupation rate P1 of the period T1 is set.

図7の説明に戻り、また、判定部707は、集計期間Tjごとに算出されたオブジェクトSQLiの出現率Ajiおよび占有率Pjに基づいて、オブジェクトSQLiがバッチ処理のオブジェクトか否かを判定することにしてもよい。なお、判定部707の具体的な処理内容については、図16および図17を用いて後述する。 Returning to the description of FIG. 7, the determination unit 707 determines whether or not the object SQLi is an object of batch processing based on the appearance rate A j i and the occupation rate Pj of the object SQLi calculated for each aggregation period Tj. You may decide to do it. The specific processing contents of the determination unit 707 will be described later with reference to FIGS.

出力部708は、判定された判定結果を出力する機能を有する。具体的には、例えば、出力部708が、後述の図10に示すような、バッチ処理のオブジェクトSQLiをリスト化して示すオブジェクトリスト1000を出力することにしてもよい。   The output unit 708 has a function of outputting the determined determination result. Specifically, for example, the output unit 708 may output an object list 1000 that lists batch processing objects SQLi as shown in FIG.

出力形式としては、例えば、ディスプレイ408への表示、プリンタ413への印刷出力、I/F409による外部装置への送信がある。また、RAM403、磁気ディスク405、光ディスク407などの記憶領域に記憶することとしてもよい。ここで、オブジェクトリスト1000の具体例について説明する。   The output format includes, for example, display on the display 408, print output to the printer 413, and transmission to an external device via the I / F 409. Alternatively, the data may be stored in a storage area such as the RAM 403, the magnetic disk 405, and the optical disk 407. Here, a specific example of the object list 1000 will be described.

図10は、オブジェクトリストの具体例を示す説明図である。図10において、オブジェクトリスト1000は、バッチ処理のオブジェクトSQL3,SQL4,SQL6をリスト化して示す情報である。オブジェクトリスト1000によれば、プロトコル「SQL」のオブジェクトのうち、バッチ処理のオブジェクトであると判定されたオブジェクトSQL3,SQL4,SQL6を判別することができる。   FIG. 10 is an explanatory diagram of a specific example of the object list. In FIG. 10, an object list 1000 is information indicating a list of batch processing objects SQL3, SQL4, and SQL6. According to the object list 1000, it is possible to determine the objects SQL3, SQL4, and SQL6 that are determined to be batch processing objects among the objects of the protocol “SQL”.

図7の説明に戻り、削除部709は、オブジェクトSQLiがバッチ処理のオブジェクトであると判定された場合、ネットワークシステム100内で受け渡されたメッセージ群の中から、オブジェクトSQLiのメッセージを削除する機能を有する。   Returning to the description of FIG. 7, the deletion unit 709 deletes the message of the object SQLi from the message group delivered in the network system 100 when it is determined that the object SQLi is an object of batch processing. Have

具体的には、例えば、削除部709が、メッセージ群の中から、オブジェクトSQLiを表す文字列を含むリクエストメッセージを特定する。つぎに、削除部709が、メッセージ群の中から、特定したリクエストメッセージと同一メッセージIDのレスポンスメッセージを検索する。   Specifically, for example, the deletion unit 709 specifies a request message including a character string representing the object SQLi from the message group. Next, the deletion unit 709 searches the message group for a response message having the same message ID as the identified request message.

そして、削除部709が、メッセージ群の中から、特定したリクエストメッセージおよびレスポンスメッセージを削除する。これにより、ネットワークシステム100内で受け渡されたメッセージ群の中から、バッチ処理のオブジェクトSQLiのメッセージを削除することができる。なお、メッセージの削除例については、図18を用いて後述する。   Then, the deletion unit 709 deletes the identified request message and response message from the message group. Thereby, the message of the batch processing object SQLi can be deleted from the message group delivered within the network system 100. An example of message deletion will be described later with reference to FIG.

また、出力部708は、ネットワークシステム100内で受け渡されたメッセージ群の中から、バッチ処理のオブジェクトSQLiのメッセージが削除された削除後のメッセージ群を出力することにしてもよい。これにより、バッチ処理のオブジェクトSQLiのメッセージを除く残余のメッセージ群を用いて、ネットワークシステム100内の各コンピュータの処理時間を求めることが可能となり、システム分析の分析精度を向上させることができる。   Further, the output unit 708 may output a deleted message group from which the message of the batch processing object SQLi is deleted from the message group delivered in the network system 100. Thereby, it is possible to obtain the processing time of each computer in the network system 100 using the remaining message group excluding the message of the batch processing object SQLi, and the analysis accuracy of the system analysis can be improved.

なお、上述した説明では、HTTP、IIOPおよびSQLの3階層のネットワークシステム100を例に挙げて説明したが、これに限らない。例えば、ネットワークシステム100内のデータベース120を操作するためのプロトコルを含む多階層システム(例えば、2階層、4階層など)であればよい。   In the above description, the three-layer network system 100 of HTTP, IIOP, and SQL has been described as an example, but the present invention is not limited to this. For example, it may be a multi-layer system (for example, two layers, four layers, etc.) including a protocol for operating the database 120 in the network system 100.

(レスポンスメッセージのオブジェクトの特定例)
つぎに、図11を用いて、プロトコル「SQL」のレスポンスメッセージのオブジェクトSQLiの特定例について説明する。
(Specific example of response message object)
Next, a specific example of the object SQLi of the response message of the protocol “SQL” will be described with reference to FIG.

図11は、レスポンスメッセージのオブジェクトの特定例を示す説明図である。図11の(11−1)において、メッセージDB500には、プロトコル「SQL」のリクエストメッセージS1,S2,S3のオブジェクトSQL1,SQL2,SQL3が設定されている。   FIG. 11 is an explanatory diagram of a specific example of the response message object. In (11-1) of FIG. 11, objects SQL1, SQL2, and SQL3 of request messages S1, S2, and S3 of the protocol “SQL” are set in the message DB 500.

以下、リクエストメッセージS1,S2,S3と同一メッセージIDのレスポンスメッセージS1〜S3のオブジェクトSQLiを特定する場合を例に挙げて説明する。   Hereinafter, a case where the objects SQLi of the response messages S1 to S3 having the same message ID as the request messages S1, S2, and S3 are specified will be described as an example.

・レスポンスメッセージS1のオブジェクトSQLi
まず、特定部703が、メッセージDB500の中から、プロトコル「SQL」かつメッセージ種別「リクエスト」のメッセージデータ500−4を選択する。そして、特定部703が、メッセージデータ500−4のオブジェクトSQL1を特定する。つぎに、特定部703が、メッセージDB500の中から、メッセージデータ500−4とメッセージIDが同一かつプロトコル「SQL」のメッセージデータを検索する。
-Object SQLi of response message S1
First, the specifying unit 703 selects the message data 500-4 having the protocol “SQL” and the message type “request” from the message DB 500. Then, the specifying unit 703 specifies the object SQL1 of the message data 500-4. Next, the specifying unit 703 searches the message DB 500 for message data having the same message ID as the message data 500-4 and the protocol “SQL”.

ここでは、メッセージデータ500−6が検索される。そして、特定部703が、メッセージDB500内のメッセージデータ500−6のオブジェクトフィールドに、特定したオブジェクトSQL1を設定する(図11中、(11−2)参照)。これにより、レスポンスメッセージS1のオブジェクトSQL1を特定することができる。   Here, message data 500-6 is searched. Then, the specifying unit 703 sets the specified object SQL1 in the object field of the message data 500-6 in the message DB 500 (see (11-2) in FIG. 11). Thereby, the object SQL1 of the response message S1 can be specified.

・レスポンスメッセージS2のオブジェクトSQLi
まず、特定部703が、メッセージDB500の中から、プロトコル「SQL」かつメッセージ種別「リクエスト」のメッセージデータ500−8を選択する。そして、特定部703が、メッセージデータ500−8のオブジェクトSQL2を特定する。つぎに、特定部703が、メッセージDB500の中から、メッセージデータ500−8とメッセージIDが同一かつプロトコル「SQL」のメッセージデータを検索する。
-Object SQLi of response message S2
First, the identifying unit 703 selects the message data 500-8 having the protocol “SQL” and the message type “request” from the message DB 500. Then, the specifying unit 703 specifies the object SQL2 of the message data 500-8. Next, the specifying unit 703 searches the message DB 500 for message data having the same message ID as the message data 500-8 and the protocol “SQL”.

ここでは、メッセージデータ500−9が検索される。そして、特定部703が、メッセージDB500内のメッセージデータ500−9のオブジェクトフィールドに、特定したオブジェクトSQL2を設定する(図11中、(11−2)参照)。これにより、レスポンスメッセージS2のオブジェクトSQL2を特定することができる。   Here, message data 500-9 is searched. Then, the specifying unit 703 sets the specified object SQL2 in the object field of the message data 500-9 in the message DB 500 (see (11-2) in FIG. 11). Thereby, the object SQL2 of the response message S2 can be specified.

・レスポンスメッセージS3のオブジェクトSQLi
まず、特定部703が、メッセージDB500の中から、プロトコル「SQL」かつメッセージ種別「リクエスト」のメッセージデータ500−11を選択する。そして、特定部703が、メッセージデータ500−11のオブジェクトSQL3を特定する。つぎに、特定部703が、メッセージDB500の中から、メッセージデータ500−11とメッセージIDが同一かつプロトコル「SQL」のメッセージデータを検索する。
-Object SQLi of response message S3
First, the identifying unit 703 selects message data 500-11 of the protocol “SQL” and the message type “request” from the message DB 500. Then, the specifying unit 703 specifies the object SQL3 of the message data 500-11. Next, the specifying unit 703 searches the message DB 500 for message data having the same message ID as the message data 500-11 and the protocol “SQL”.

ここでは、メッセージデータ500−12が検索される。そして、特定部703が、メッセージDB500内のメッセージデータ500−12のオブジェクトフィールドに、特定したオブジェクトSQL3を設定する(図11中、(11−2)参照)。これにより、レスポンスメッセージS3のオブジェクトSQL3を特定することができる。   Here, message data 500-12 is searched. Then, the specifying unit 703 sets the specified object SQL3 in the object field of the message data 500-12 in the message DB 500 (see (11-2) in FIG. 11). Thereby, the object SQL3 of the response message S3 can be specified.

(第1の算出部705の具体的な処理内容)
つぎに、図12を用いて、集計期間TjにおけるオブジェクトSQLiの出現率Ajiを算出する第1の算出部705の具体的な処理内容について説明する。
(Specific processing contents of the first calculation unit 705)
Next, specific processing contents of the first calculation unit 705 that calculates the appearance rate A j i of the object SQLi in the counting period Tj will be described with reference to FIG.

第1の算出部705は、例えば、下記式(1)を用いて、集計期間TjにおけるオブジェクトSQLiの出現率Ajiを算出する。ただし、Ajiは、集計期間TjにおけるオブジェクトSQLiの出現率である。Yは、集計期間TjにおけるオブジェクトSQLiのメッセージの総数である。Xは、集計期間Tjにおける親が存在するオブジェクトSQLiのメッセージの総数である。 The first calculation unit 705 calculates the appearance rate A j i of the object SQLi in the counting period Tj using, for example, the following equation (1). However, A j i is the appearance rate of the object SQLi in the total period Tj. Y is the total number of messages of the object SQLi in the aggregation period Tj. X is the total number of messages of the object SQLi in which the parent exists in the aggregation period Tj.

ji=X/Y ・・・(1) A j i = X / Y (1)

図12は、ネットワークシステム内のメッセージ群の一例を示す説明図(その3)である。図12において、メッセージm1〜m3は、集計期間Txにおいて、Webサーバ102とAPサーバ103との間で送受信されたプロトコル「IIOP」のメッセージである。また、メッセージm4〜m17は、集計期間TxにおいてAPサーバ103とDBサーバ104との間で送受信されたプロトコル「SQL」のメッセージである。なお、集計期間Txは、集計期間T1〜Tmのいずれかの集計期間である。   FIG. 12 is an explanatory diagram (part 3) illustrating an example of a message group in the network system. In FIG. 12, messages m1 to m3 are messages of the protocol “IIOP” transmitted and received between the Web server 102 and the AP server 103 during the aggregation period Tx. Further, the messages m4 to m17 are messages of the protocol “SQL” transmitted / received between the AP server 103 and the DB server 104 in the aggregation period Tx. The aggregation period Tx is any one of the aggregation periods T1 to Tm.

ここで、プロトコル「IIOP」のメッセージm1,m2は、メッセージIDが同一のペアp1である。時刻t1は、プロトコル「IIOP」のメッセージm1(リクエスト)の送信時刻である。時刻t2は、プロトコル「IIOP」のメッセージm2(レスポンス)の送信時刻である。   Here, the messages m1 and m2 of the protocol “IIOP” are the pair p1 having the same message ID. Time t1 is the transmission time of the message m1 (request) of the protocol “IIOP”. Time t2 is the transmission time of the message m2 (response) of the protocol “IIOP”.

また、プロトコル「IIOP」のメッセージm3,m18は、メッセージIDが同一のペアp2である。時刻t3は、プロトコル「IIOP」のメッセージm3(リクエスト)の送信時刻である。時刻t5は、プロトコル「IIOP」のメッセージm18(レスポンス)の送信時刻である。ただし、メッセージm18(レスポンス)の送信時刻は集計期間Tx外となっている。時刻t4は、集計期間Txの終期の時刻である。   The messages m3 and m18 of the protocol “IIOP” are the pair p2 having the same message ID. Time t3 is a transmission time of the message m3 (request) of the protocol “IIOP”. Time t5 is the transmission time of the message m18 (response) of the protocol “IIOP”. However, the transmission time of the message m18 (response) is outside the total period Tx. Time t4 is the final time of the counting period Tx.

また、メッセージm4,m5,m8,m10,m16,m17は、オブジェクトSQL1のメッセージの集合である。メッセージm6,m7は、オブジェクトSQL2のメッセージの集合である。メッセージm9,m11,m12,m13,m14,m15は、オブジェクトSQL3のメッセージの集合である。   Messages m4, m5, m8, m10, m16, and m17 are a set of messages of the object SQL1. The messages m6 and m7 are a set of messages of the object SQL2. Messages m9, m11, m12, m13, m14, and m15 are a set of messages of the object SQL3.

・オブジェクトSQL1の出現率Ax
ここで、集計期間TxにおけるオブジェクトSQL1の出現率Ax1を算出する第1の算出部705の具体的な処理内容の一例について説明する。まず、第1の算出部705は、集計期間TxにおけるオブジェクトSQL1のメッセージm4,m5,m8,m10,m16,m17の総数Yを計数する。ここでは、総数Yは「Y=6」である。計数された総数Yは、例えば、後述の図13に示す中間テーブル1300に記憶される。
-Appearance rate A x 1 of object SQL1
Here, an example of specific processing contents of the first calculation unit 705 that calculates the appearance rate A x 1 of the object SQL1 in the total period Tx will be described. First, the first calculation unit 705 counts the total number Y of messages m4, m5, m8, m10, m16, and m17 of the object SQL1 in the aggregation period Tx. Here, the total number Y is “Y = 6”. The counted total number Y is stored, for example, in an intermediate table 1300 shown in FIG.

つぎに、第1の算出部705は、集計期間Txにおけるプロトコル「IIOP」の1以上のペアのリクエスト時刻とレスポンス時刻の間に送信されたオブジェクトSQL1のメッセージの総数を計数する。すなわち、第1の算出部705が、集計期間Txにおける親が存在するオブジェクトSQL1のメッセージの総数Xを計数する。   Next, the first calculation unit 705 counts the total number of messages of the object SQL1 transmitted between the request time and the response time of one or more pairs of the protocol “IIOP” in the aggregation period Tx. That is, the first calculation unit 705 counts the total number X of messages of the object SQL1 in which the parent exists in the aggregation period Tx.

ここで、オブジェクトSQL1のメッセージm4,m5,m8,m10,m16,m17のうち、メッセージm4,m5,m8,m10は、プロトコル「IIOP」のペアp1のリクエスト時刻t1とレスポンス時刻t2の間に送信されたメッセージである。すなわち、メッセージm4,m5,m8,m10は、親が存在するメッセージである。   Here, among the messages m4, m5, m8, m10, m16, and m17 of the object SQL1, the messages m4, m5, m8, and m10 are transmitted between the request time t1 and the response time t2 of the pair p1 of the protocol “IIOP”. Message. That is, the messages m4, m5, m8, and m10 are messages that have a parent.

また、オブジェクトSQL1のメッセージm4,m5,m8,m10,m16,m17のうち、メッセージm16,m17は、プロトコル「IIOP」のペアp2のリクエスト時刻t3と、レスポンス時刻t5前の時刻t4の間に送信されたメッセージである。すなわち、メッセージm16,m17は、親が存在するメッセージである。   Of the messages m4, m5, m8, m10, m16, and m17 of the object SQL1, the messages m16 and m17 are transmitted between the request time t3 of the pair p2 of the protocol “IIOP” and the time t4 before the response time t5. Message. That is, the messages m16 and m17 are messages having a parent.

したがって、メッセージm4,m5,m8,m10,m16,m17は、すべて親が存在するメッセージである。このため、集計期間Txにおける親が存在するオブジェクトSQL1のメッセージの総数Xは「X=6」となる。計数された総数Xは、例えば、後述の図13に示す中間テーブル1300に記憶される。   Accordingly, the messages m4, m5, m8, m10, m16, and m17 are all messages having a parent. For this reason, the total number X of messages of the object SQL1 in which the parent exists in the total period Tx is “X = 6”. The counted total number X is stored, for example, in an intermediate table 1300 shown in FIG.

この場合、第1の算出部705は、上記式(1)に「X=6」および「Y=6」を代入することにより、集計期間TxにおけるオブジェクトSQL1の出現率Ax1を算出する。ここでは、出現率Ax1は「Ax1=6/6=1」となる。 In this case, the first calculation unit 705 calculates the appearance rate A x 1 of the object SQL1 in the total period Tx by substituting “X = 6” and “Y = 6” into the above equation (1). Here, the appearance rate A x 1 is “A x 1 = 6/6 = 1”.

・オブジェクトSQL2の出現率Ax
つぎに、集計期間TxにおけるオブジェクトSQL2の出現率Ax2を算出する第1の算出部705の具体的な処理内容の一例について説明する。まず、第1の算出部705は、集計期間TxにおけるオブジェクトSQL2のメッセージm6,m7の総数Yを計数する。ここでは、総数Yは「Y=2」である。
-Appearance rate A x 2 of object SQL2
Next, an example of specific processing contents of the first calculation unit 705 that calculates the appearance rate A x 2 of the object SQL2 in the total period Tx will be described. First, the first calculation unit 705 counts the total number Y of messages m6 and m7 of the object SQL2 in the aggregation period Tx. Here, the total number Y is “Y = 2”.

つぎに、第1の算出部705は、集計期間Txにおける親が存在するオブジェクトSQL2のメッセージの総数Xを計数する。ここで、メッセージm6,m7は、プロトコル「IIOP」のペアp1のリクエスト時刻t1とレスポンス時刻t2の間に送信されたメッセージである。   Next, the first calculation unit 705 counts the total number X of messages of the object SQL2 in which the parent exists in the counting period Tx. Here, the messages m6 and m7 are messages transmitted between the request time t1 and the response time t2 of the pair p1 of the protocol “IIOP”.

すなわち、オブジェクトSQL2のメッセージm6,m7は、すべて親が存在するメッセージである。このため、集計期間Txにおける親が存在するオブジェクトSQL2のメッセージの総数Xは「X=2」となる。この場合、第1の算出部705は、上記式(1)に「X=2」および「Y=2」を代入することにより、集計期間TxにおけるオブジェクトSQL2の出現率Ax2を算出する。ここでは、出現率Ax2は「Ax2=2/2=1」となる。 That is, the messages m6 and m7 of the object SQL2 are all messages having a parent. For this reason, the total number X of messages of the object SQL2 in which the parent exists in the total period Tx is “X = 2”. In this case, the first calculation unit 705 calculates the appearance rate A x 2 of the object SQL2 in the aggregation period Tx by substituting “X = 2” and “Y = 2” into the above equation (1). Here, the appearance rate A x 2 is “A x 2 = 2/2 = 1”.

・オブジェクトSQL3の出現率Ax
つぎに、集計期間TxにおけるオブジェクトSQL3の出現率Ax3を算出する第1の算出部705の具体的な処理内容の一例について説明する。まず、第1の算出部705は、集計期間TxにおけるオブジェクトSQL3のメッセージm9,m11,m12,m13,m14,m15の総数Yを計数する。ここでは、総数Yは「Y=6」である。
-Appearance rate A x 3 of object SQL3
Next, an example of specific processing contents of the first calculation unit 705 that calculates the appearance rate A x 3 of the object SQL3 in the total period Tx will be described. First, the first calculation unit 705 counts the total number Y of messages m9, m11, m12, m13, m14, and m15 of the object SQL3 in the aggregation period Tx. Here, the total number Y is “Y = 6”.

つぎに、第1の算出部705は、集計期間Txにおける親が存在するオブジェクトSQL3のメッセージの総数Xを計数する。ここで、オブジェクトSQL3のメッセージm9,m11,m12,m13,m14,m15のうち、メッセージm9,m11は、プロトコル「IIOP」のペアp1のリクエスト時刻t1とレスポンス時刻t2の間に送信されたメッセージである。すなわち、メッセージm9,m11は、親が存在するメッセージである。   Next, the first calculation unit 705 counts the total number X of messages of the object SQL3 in which the parent exists in the counting period Tx. Here, of the messages m9, m11, m12, m13, m14, and m15 of the object SQL3, the messages m9 and m11 are messages transmitted between the request time t1 and the response time t2 of the pair p1 of the protocol “IIOP”. is there. That is, the messages m9 and m11 are messages having a parent.

また、オブジェクトSQL3のメッセージm9,m11,m12,m13,m14,15のうち、メッセージm15は、プロトコル「IIOP」のペアp2のリクエスト時刻t3と、レスポンス時刻t5前の時刻t4の間に送信されたメッセージである。すなわち、メッセージm15は、親が存在するメッセージである。   Of the messages m9, m11, m12, m13, m14, and 15 of the object SQL3, the message m15 is transmitted between the request time t3 of the pair p2 of the protocol “IIOP” and the time t4 before the response time t5. Message. That is, the message m15 is a message having a parent.

一方、オブジェクトSQL3のメッセージm9,m11,m12,m13,m14,m15のうち、メッセージm12,m13,m14は、プロトコル「IIOP」のペアp1,p2のいずれのペアのリクエスト時刻とレスポンス時刻の間に送信されていないメッセージである。すなわち、メッセージm12,m13,m14は、親が存在しないメッセージである。   On the other hand, among the messages m9, m11, m12, m13, m14, and m15 of the object SQL3, the messages m12, m13, and m14 are between the request time and the response time of any pair p1 and p2 of the protocol “IIOP”. The message has not been sent. That is, the messages m12, m13, and m14 are messages that do not have a parent.

このため、集計期間Txにおける親が存在するオブジェクトSQL3のメッセージの総数Xは「X=3」となる。この場合、第1の算出部705は、上記式(1)に「X=3」および「Y=6」を代入することにより、集計期間TxにおけるオブジェクトSQL3の出現率Ax3を算出する。ここでは、出現率Ax3は「Ax3=3/6=0.5」となる。 Therefore, the total number X of messages of the object SQL3 in which the parent exists in the total period Tx is “X = 3”. In this case, the first calculation unit 705 calculates the appearance rate A x 3 of the object SQL3 in the total period Tx by substituting “X = 3” and “Y = 6” into the above equation (1). Here, the appearance rate A x 3 is “A x 3 = 3/6 = 0.5”.

上述した第1の算出部705の一連の処理の途中で計数される集計期間TxにおけるオブジェクトSQL1のメッセージの総数Y、および親が存在するオブジェクトSQLiのメッセージの総数Xは、例えば、図13に示す中間テーブル1300に記憶される。中間テーブル1300は、例えば、RAM403、磁気ディスク405、光ディスク407などの記憶装置により実現される。ここで、中間テーブル1300について説明する。   For example, FIG. 13 shows the total number Y of messages of the object SQL1 and the total number X of messages of the object SQLLi in which the parent exists during the counting period Tx counted during the series of processes of the first calculation unit 705 described above. It is stored in the intermediate table 1300. The intermediate table 1300 is realized by a storage device such as the RAM 403, the magnetic disk 405, and the optical disk 407, for example. Here, the intermediate table 1300 will be described.

図13は、中間テーブルの記憶内容の一例を示す説明図である。図13において、中間テーブル1300は、集計期間ID、オブジェクトID、メッセージ数および親有メッセージ数のフィールドを有する。各フィールドに情報を設定することで、中間データ1300−1〜1300−3がレコードとして記憶されている。   FIG. 13 is an explanatory diagram of an example of the contents stored in the intermediate table. In FIG. 13, the intermediate table 1300 includes fields for a total period ID, an object ID, a message count, and a parent message count. By setting information in each field, intermediate data 1300-1 to 1300-3 are stored as records.

集計期間IDは、集計期間Tjの識別子である。オブジェクトIDは、プロトコル「SQL」のオブジェクトSQLiの識別子である。メッセージ数は、集計期間TjにおけるオブジェクトSQLiのメッセージの総数Yである。親有メッセージ数は、集計期間Tjにおける親が存在するオブジェクトSQLiのメッセージの総数Xである。   The aggregation period ID is an identifier of the aggregation period Tj. The object ID is an identifier of the object SQLi of the protocol “SQL”. The number of messages is the total number Y of messages of the object SQLi in the aggregation period Tj. The number of parent messages is the total number X of messages of the object SQLi in which the parent exists in the aggregation period Tj.

中間データ1300−1を例に挙げると、集計期間TxにおけるオブジェクトSQL1のメッセージの総数「Y=6」、および集計期間Tjにおける親が存在するオブジェクトSQL1のメッセージの総数「X=6」が示されている。ここでは、集計期間Txを例に挙げて、中間テーブル1300の記憶内容について説明したが、中間テーブル1300は集計期間T1〜Tmごとに作成される。   Taking the intermediate data 1300-1 as an example, the total number “Y = 6” of messages of the object SQL1 in the counting period Tx and the total number of messages “X = 6” of the object SQL1 in which the parent exists in the counting period Tj are shown. ing. Here, the storage period of the intermediate table 1300 has been described by taking the aggregation period Tx as an example, but the intermediate table 1300 is created for each of the aggregation periods T1 to Tm.

(第2の算出部706の具体的な処理内容)
つぎに、図14を用いて、集計期間Tjのうち占有期間が占める割合を表す占有率Pjを算出する第2の算出部706の具体的な処理内容について説明する。
(Specific processing contents of the second calculation unit 706)
Next, specific processing contents of the second calculation unit 706 that calculates the occupation rate Pj representing the proportion of the occupation period in the total period Tj will be described with reference to FIG.

第2の算出部706は、例えば、下記式(2)を用いて、集計期間Tjのうち占有期間が占める割合を表す占有率Pjを算出する。ただし、Lは、集計期間Tjのうち、プロトコル「IIOP」の1以上のペアのリクエスト時刻からレスポンス時刻までの占有期間(時間長)である。Tjは、集計期間(時間長)である。Pjは、集計期間Tjのうち占有期間Lが占める割合を表す占有率である。   The second calculation unit 706 calculates an occupancy rate Pj that represents the proportion of the occupation period in the aggregation period Tj using, for example, the following equation (2). However, L is an occupation period (time length) from the request time to the response time of one or more pairs of the protocol “IIOP” in the aggregation period Tj. Tj is a total period (time length). Pj is an occupancy ratio that represents the ratio of the occupation period L in the total period Tj.

Pj=L/Tj ・・・(2)   Pj = L / Tj (2)

図14は、ネットワークシステム内のメッセージ群の一例を示す説明図(その4)である。図14において、メッセージm19〜m23は、集計期間Tyにおいて、Webサーバ102とAPサーバ103との間で送受信されたプロトコル「IIOP」のメッセージである。また、メッセージm24〜m37は、集計期間TyにおいてAPサーバ103とDBサーバ104との間で送受信されたプロトコル「SQL」のメッセージである。なお、集計期間Tyは、集計期間T1〜Tmのいずれかの集計期間である。   FIG. 14 is an explanatory diagram (part 4) illustrating an example of a message group in the network system. In FIG. 14, messages m19 to m23 are messages of the protocol “IIOP” transmitted / received between the Web server 102 and the AP server 103 during the counting period Ty. Further, the messages m24 to m37 are messages of the protocol “SQL” transmitted / received between the AP server 103 and the DB server 104 in the aggregation period Ty. The aggregation period Ty is one of the aggregation periods T1 to Tm.

ここで、プロトコル「IIOP」のメッセージm19,m21は、メッセージIDが同一のペアp3である。時刻t6は、プロトコル「IIOP」のメッセージm19(リクエスト)の送信時刻である。時刻t8は、プロトコル「IIOP」のメッセージm21(レスポンス)の送信時刻である。   Here, the messages m19 and m21 of the protocol “IIOP” are the pair p3 having the same message ID. Time t6 is the transmission time of the message m19 (request) of the protocol “IIOP”. Time t8 is a transmission time of the message m21 (response) of the protocol “IIOP”.

また、プロトコル「IIOP」のメッセージm20,m22は、メッセージIDが同一のペアp4である。時刻t7は、プロトコル「IIOP」のメッセージm20(リクエスト)の送信時刻である。時刻t9は、プロトコル「IIOP」のメッセージm22(レスポンス)の送信時刻である。   Further, the messages m20 and m22 of the protocol “IIOP” are the pair p4 having the same message ID. Time t7 is a transmission time of the message m20 (request) of the protocol “IIOP”. Time t9 is a transmission time of the message m22 (response) of the protocol “IIOP”.

また、プロトコル「IIOP」のメッセージm23,m38は、メッセージIDが同一のペアp5である。時刻t10は、プロトコル「IIOP」のメッセージm23(リクエスト)の送信時刻である。時刻t12は、プロトコル「IIOP」のメッセージm38(レスポンス)の送信時刻である。ただし、メッセージm38(レスポンス)の送信時刻は集計期間Ty外となっている。時刻t11は、集計期間Tyの終期の時刻である。また、メッセージm24〜m37は、プロトコル「SQL」のメッセージである。   Further, the messages m23 and m38 of the protocol “IIOP” are the pair p5 having the same message ID. Time t10 is a transmission time of the message m23 (request) of the protocol “IIOP”. Time t12 is a transmission time of the message m38 (response) of the protocol “IIOP”. However, the transmission time of the message m38 (response) is outside the counting period Ty. Time t11 is the final time of the counting period Ty. The messages m24 to m37 are messages of the protocol “SQL”.

まず、第2の算出部706は、集計期間Tyにおけるプロトコル「IIOP」の多重度を算出する。具体的には、例えば、第2の算出部706が、集計期間Tyに送信されたプロトコル「IIOP」のメッセージm19〜m23の送信時刻t6〜t10ごとの多重度を時系列に算出する。   First, the second calculation unit 706 calculates the multiplicity of the protocol “IIOP” in the aggregation period Ty. Specifically, for example, the second calculation unit 706 calculates the multiplicity of the messages m19 to m23 of the protocol “IIOP” transmitted in the aggregation period Ty for each transmission time t6 to t10 in time series.

より具体的には、例えば、第2の算出部706が、集計期間Tyにおいて、リクエストメッセージが送信されるごとに多重度をインクリメントし、リクエストメッセージが送信されるごとに多重度をデクリメントする。ただし、多重度の初期値は「0」である。これにより、メッセージm19〜m23の送信時刻t6〜t10ごとの多重度を算出することができる。   More specifically, for example, in the counting period Ty, the second calculation unit 706 increments the multiplicity every time a request message is transmitted, and decrements the multiplicity every time a request message is transmitted. However, the initial value of multiplicity is “0”. As a result, the multiplicity for each of the transmission times t6 to t10 of the messages m19 to m23 can be calculated.

図14の例では、まず、第2の算出部706が、送信時刻t6において、リクエストメッセージm19が送信されたため、多重度をインクリメントする。この結果、送信時刻t6の多重度は「1」となる。つぎに、第2の算出部706が、送信時刻t7において、リクエストメッセージm20が送信されたため、多重度をインクリメントする。この結果、送信時刻t7の多重度は「2」となる。   In the example of FIG. 14, first, the second calculation unit 706 increments the multiplicity because the request message m19 is transmitted at the transmission time t6. As a result, the multiplicity at the transmission time t6 is “1”. Next, since the request message m20 is transmitted at the transmission time t7, the second calculation unit 706 increments the multiplicity. As a result, the multiplicity of the transmission time t7 is “2”.

つぎに、第2の算出部706が、送信時刻t8において、レスポンスメッセージm21が送信されたため、多重度をデクリメントする。この結果、送信時刻t8の多重度は「1」となる。つぎに、第2の算出部706が、送信時刻t9において、レスポンスメッセージm22が送信されたため、多重度をデクリメントする。この結果、送信時刻t9の多重度は「0」となる。   Next, since the response message m21 is transmitted at the transmission time t8, the second calculation unit 706 decrements the multiplicity. As a result, the multiplicity at the transmission time t8 is “1”. Next, since the response message m22 is transmitted at the transmission time t9, the second calculation unit 706 decrements the multiplicity. As a result, the multiplicity at the transmission time t9 is “0”.

つぎに、第2の算出部706が、送信時刻t10において、リクエストメッセージm23が送信されたため、多重度をインクリメントする。この結果、送信時刻t10の多重度は「1」となる。   Next, since the request message m23 is transmitted at the transmission time t10, the second calculation unit 706 increments the multiplicity. As a result, the multiplicity at the transmission time t10 is “1”.

算出された送信時刻t6〜t10ごとの多重度は、例えば、図15に示す多重度テーブル1500に記憶される。多重度テーブル1500は、例えば、RAM403、磁気ディスク405、光ディスク407などの記憶装置により実現される。ここで、多重度テーブル1500について説明する。   The calculated multiplicity for each transmission time t6 to t10 is stored, for example, in a multiplicity table 1500 shown in FIG. The multiplicity table 1500 is realized by a storage device such as the RAM 403, the magnetic disk 405, and the optical disk 407, for example. Here, the multiplicity table 1500 will be described.

図15は、多重度テーブルの記憶内容の一例を示す説明図である。図15において、多重度テーブル1500は、集計期間Tyにおける送信時刻t6〜t10ごとの多重度を記憶している。ここでは、集計期間Tyを例に挙げて、多重度テーブル1500の記憶内容について説明したが、多重度テーブル1500は集計期間T1〜Tmごとに作成される。   FIG. 15 is an explanatory diagram of an example of the contents stored in the multiplicity table. In FIG. 15, the multiplicity table 1500 stores the multiplicity for each transmission time t6 to t10 in the counting period Ty. Here, the storage period of the multiplicity table 1500 has been described by taking the aggregation period Ty as an example, but the multiplicity table 1500 is created for each of the aggregation periods T1 to Tm.

このあと、第2の算出部706は、例えば、多重度テーブル1500を参照して、集計期間Tyのうち多重度が1以上の期間の合計を求めることにより占有期間Lを算出する。具体的には、例えば、まず、第2の算出部706が、集計期間Tyのうち多重度が1以上の期間L1,L2を算出する。   Thereafter, the second calculation unit 706 calculates the occupation period L by referring to the multiplicity table 1500, for example, and calculating the total of the multiplicity periods of 1 or more in the aggregation period Ty. Specifically, for example, first, the second calculation unit 706 calculates the periods L1 and L2 having a multiplicity of 1 or more in the counting period Ty.

期間L1は、送信時刻t6から送信時刻t9までの期間である。期間L2は、送信時刻t10から送信時刻t11までの期間である。つぎに、第2の算出部706が、集計期間Tyのうち多重度が1以上の期間L1,L2の合計を求めることにより占有期間L(=L1+L2)を算出する。   The period L1 is a period from the transmission time t6 to the transmission time t9. The period L2 is a period from the transmission time t10 to the transmission time t11. Next, the second calculation unit 706 calculates the occupation period L (= L1 + L2) by calculating the sum of the periods L1 and L2 having a multiplicity of 1 or more in the counting period Ty.

そして、第2の算出部706は、上記式(2)に集計期間Ty(時間長)および占有期間L(時間長)を代入することにより、集計期間Tyのうち占有期間Lが占める割合を表す占有率Pyを算出する。   And the 2nd calculation part 706 represents the ratio for which the occupation period L accounts among the total periods Ty by substituting the total period Ty (time length) and the occupation period L (time length) to said Formula (2). The occupation rate Py is calculated.

なお、集計期間Tjの終期における多重度は、集計期間Tjに時系列に連続する集計期間(例えば、集計期間T(j+1))に持ち越すことにしてもよい。これにより、プロトコル「IIOP」のリクエストメッセージとレスポンスメッセージのペアが複数の集計期間に跨る場合にも、多重度を適切に算出することができる。   Note that the multiplicity at the end of the counting period Tj may be carried over to a counting period (for example, the counting period T (j + 1)) that is continuous in time series with the counting period Tj. Thereby, the multiplicity can be appropriately calculated even when the request message and response message pair of the protocol “IIOP” spans a plurality of aggregation periods.

(判定部707の具体的な処理内容)
つぎに、図16および図17を用いて、集計期間Tjごとに算出されたオブジェクトSQLiの出現率Ajiおよび占有率Pjに基づいて、オブジェクトSQLiがバッチ処理のオブジェクトか否かを判定する判定部707の具体的な処理内容について説明する。
(Specific processing contents of the determination unit 707)
Next, using FIG. 16 and FIG. 17, a determination is made as to whether or not the object SQLi is an object of batch processing based on the appearance rate A j i and the occupation rate Pj of the object SQLi calculated for each aggregation period Tj. Specific processing contents of the unit 707 will be described.

<判定例1>
図16は、バッチ処理のオブジェクトの判定例を示す説明図(その1)である。図16において、集計期間Tjの占有率Pjを表すX軸と、集計期間TjのオブジェクトSQLiの出現率Ajiを表すY軸とからなる座標系1600が示されている。座標系1600において、点f1〜f27は、集計期間Tjごとに算出された占有率PjおよびオブジェクトSQLiの出現率Ajiの組合せを示している。
<Judgment example 1>
FIG. 16 is an explanatory diagram (part 1) of an example of determining a batch processing object. FIG. 16 shows a coordinate system 1600 including an X axis representing the occupation rate Pj of the counting period Tj and a Y axis representing the appearance rate A j i of the object SQLi in the counting period Tj. In the coordinate system 1600, points f1 to f27 indicate combinations of the occupation rate Pj calculated for each aggregation period Tj and the appearance rate A j i of the object SQLi.

具体的には、点f1〜f9は、集計期間Tjごとに算出された占有率PjおよびオブジェクトSQL1の出現率Aj1の組合せを示している。点f10〜f18は、集計期間Tjごとに算出された占有率PjおよびオブジェクトSQL2の出現率Aj2の組合せを示している。点f19〜f27は、集計期間Tjごとに算出された占有率PjおよびオブジェクトSQL3の出現率Aj3の組合せを示している。 Specifically, points f1 to f9 indicate combinations of the occupation rate Pj calculated for each aggregation period Tj and the appearance rate A j 1 of the object SQL1. Point f10~f18 shows a combination of incidence A j 2 occupancy Pj and objects SQL2 calculated for each counting period Tj. Point f19~f27 shows a combination of incidence A j 3 occupancy Pj and objects SQL3 calculated for each counting period Tj.

より具体的には、例えば、点f1は、集計期間T1〜Tmのいずれかの集計期間Tzの占有率Pzと、集計期間TzのオブジェクトSQL1の出現率Az1の組合せを示している。すなわち、点f1の座標位置は、「(X,Y)=(Pz,Az1)」である。また、点f10は、集計期間Tzの占有率Pzと、集計期間TzのオブジェクトSQL2の出現率Az2の組合せを示している。すなわち、点f10の座標位置は、「(X,Y)=(Pz,Az2)」である。また、点f19は、集計期間Tzの占有率Pzと、集計期間TzのオブジェクトSQL3の出現率Az3の組合せを示している。すなわち、点f19の座標位置は、「(X,Y)=(Pz,Az3)」である。 More specifically, for example, the point f1 indicates a combination of the occupation rate Pz of the aggregation period Tz in any of the aggregation periods T1 to Tm and the appearance rate A z1 of the object SQL1 in the aggregation period Tz. That is, the coordinate position of the point f1 is “(X, Y) = (Pz, A z 1)”. A point f10 indicates a combination of the occupation rate Pz of the counting period Tz and the appearance rate A z2 of the object SQL2 in the counting period Tz. That is, the coordinate position of the point f10 is “(X, Y) = (Pz, A z 2)”. A point f19 indicates the occupancy Pz aggregation period Tz, a combination of incidence A z 3 of the object SQL3 aggregation period Tz. That is, the coordinate position of the point f19 is “(X, Y) = (Pz, A z 3)”.

判定部707は、集計期間T1〜Tmのうち占有率が最小となる集計期間Tjの占有率Pjが閾値β以下、かつ、該集計期間TjのオブジェクトSQLiの出現率Ajiが閾値α以下の場合、オブジェクトSQLiがバッチ処理のオブジェクトであると判定する。 The determination unit 707 determines that the occupancy Pj of the aggregation period Tj having the minimum occupancy among the aggregation periods T1 to Tm is equal to or less than the threshold value β, and the appearance rate A j i of the object SQLi in the aggregation period Tj is equal to or less than the threshold value α. In this case, it is determined that the object SQLi is a batch processing object.

具体的には、例えば、まず、判定部707が、集計期間T1〜Tmのうち占有率が最小となる集計期間Tjの占有率Pjを特定する。図16の例では、占有率が最小となる集計期間Tzの占有率Pzが特定される。つぎに、判定部707が、占有率が最小となる集計期間Tzの占有率Pzが閾値β以下となるか否かを判断する。   Specifically, for example, first, the determination unit 707 identifies the occupation rate Pj of the aggregation period Tj that minimizes the occupation ratio among the aggregation periods T1 to Tm. In the example of FIG. 16, the occupation rate Pz of the total period Tz that minimizes the occupation rate is specified. Next, the determination unit 707 determines whether or not the occupation rate Pz of the aggregation period Tz that minimizes the occupation rate is equal to or less than the threshold value β.

ここで、占有率が最小となる集計期間Tzの占有率Pzが閾値βより大きい場合、判定部707が、オブジェクトSQL1,SQL2,SQL3がバッチ処理のオブジェクトではないと判定する。図16の例では、集計期間Tzの占有率Pzが閾値β以下のため、判定部707はつぎの処理に移行する。   Here, when the occupation rate Pz of the total period Tz in which the occupation rate is minimum is larger than the threshold value β, the determination unit 707 determines that the objects SQL1, SQL2, and SQL3 are not batch processing objects. In the example of FIG. 16, since the occupation rate Pz of the total period Tz is equal to or less than the threshold value β, the determination unit 707 proceeds to the next process.

つぎに、判定部707が、オブジェクトSQLiごとに、集計期間TzのオブジェクトSQLiの出現率Aziが閾値α以下となるか否かを判断する。ここで、オブジェクトSQLiの出現率Aziが閾値α以下の場合、判定部707が、オブジェクトSQLiがバッチ処理のオブジェクトであると判定する。一方、オブジェクトSQLiの出現率Aziが閾値αより大きい場合、判定部707が、オブジェクトSQLiがバッチ処理のオブジェクトではないと判定する。 Next, the determination unit 707 determines, for each object SQLi, whether or not the appearance rate A z i of the object SQLi in the aggregation period Tz is equal to or less than the threshold value α. Here, when the appearance rate A z i of the object SQLi is equal to or less than the threshold value α, the determination unit 707 determines that the object SQLi is an object of batch processing. On the other hand, when the appearance rate A z i of the object SQLi is larger than the threshold value α, the determination unit 707 determines that the object SQLi is not an object for batch processing.

図16の例では、集計期間TzのオブジェクトSQL1の出現率Az1は閾値αより大きい。このため、判定部707が、オブジェクトSQL1がバッチ処理のオブジェクトではないと判定する(点f1に相当)。また、集計期間TzのオブジェクトSQL2の出現率Az2は閾値αより大きい。このため、判定部707が、オブジェクトSQL2がバッチ処理のオブジェクトではないと判定する(点f10に相当)。 In the example of FIG. 16, the appearance rate A z 1 of the object SQL1 in the total period Tz is larger than the threshold value α. For this reason, the determination unit 707 determines that the object SQL1 is not an object for batch processing (corresponding to the point f1). In addition, the appearance rate A z 2 of the object SQL2 in the total period Tz is larger than the threshold value α. For this reason, the determination unit 707 determines that the object SQL2 is not an object for batch processing (corresponding to the point f10).

一方、集計期間TzのオブジェクトSQL3の出現率Az3は閾値α以下である。このため、判定部707が、オブジェクトSQL3がバッチ処理のオブジェクトであると判定する。これにより、プロトコル「SQL」のオブジェクトSQL1,SQL2,SQL3のうち、オブジェクトSQL3がバッチ処理のオブジェクトであると判別することができる。 On the other hand, the appearance rate A z 3 of the object SQL3 in the total period Tz is equal to or less than the threshold value α. Therefore, the determination unit 707 determines that the object SQL3 is a batch processing object. Accordingly, it is possible to determine that the object SQL3 is an object of batch processing among the objects SQL1, SQL2, and SQL3 of the protocol “SQL”.

なお、図16において、オブジェクトSQL1は、オンライン処理のみに用いられるオブジェクトである。オブジェクトSQL2は、オンライン処理およびバッチ処理の両方に用いられるオブジェクトである。オブジェクトSQL3は、バッチ処理のみに用いられるオブジェクトである。すなわち、上記判定によれば、オンライン処理およびバッチ処理のオブジェクトが混在するネットワークシステム100において、バッチ処理のみに用いられるオブジェクトSQL3を判別することができる。   In FIG. 16, an object SQL1 is an object used only for online processing. The object SQL2 is an object used for both online processing and batch processing. The object SQL3 is an object used only for batch processing. That is, according to the above determination, the object SQL 3 used only for batch processing can be determined in the network system 100 in which objects of online processing and batch processing are mixed.

<判定例2>
図17は、バッチ処理のオブジェクトの判定例を示す説明図(その2)である。図17において、集計期間Tjの占有率Pjを表すX軸と、集計期間TjのオブジェクトSQLiの出現率Ajiを表すY軸とからなる座標系1700が示されている。座標系1700において、点f28〜f42は、集計期間Tjごとに算出された占有率PjおよびオブジェクトSQLiの出現率Ajiの組合せを示している。
<Judgment example 2>
FIG. 17 is an explanatory diagram (part 2) of an example of determining a batch processing object. FIG. 17 shows a coordinate system 1700 including an X axis representing the occupation rate Pj of the counting period Tj and a Y axis representing the appearance rate A j i of the object SQLi in the counting period Tj. In the coordinate system 1700, points f28 to f42 indicate combinations of the occupation rate Pj calculated for each aggregation period Tj and the appearance rate A j i of the object SQLi.

具体的には、点f28〜f32は、集計期間Tjごとに算出された占有率PjおよびオブジェクトSQL1の出現率Aj1の組合せを示している。点f33〜f37は、集計期間Tjごとに算出された占有率PjおよびオブジェクトSQL2の出現率Aj2の組合せを示している。点f38〜f42は、集計期間Tjごとに算出された占有率PjおよびオブジェクトSQL3の出現率Aj3の組合せを示している。 Specifically, points f28 to f32 indicate combinations of the occupation rate Pj calculated for each aggregation period Tj and the appearance rate A j 1 of the object SQL1. Point f33~f37 shows a combination of incidence A j 2 occupancy Pj and objects SQL2 calculated for each counting period Tj. Point f38~f42 shows a combination of incidence A j 3 occupancy Pj and objects SQL3 calculated for each counting period Tj.

判定部707は、集計期間Tjごとに算出されたオブジェクトSQLiの出現率Ajiおよび占有率Pjに基づいて、座標系1700におけるオブジェクトSQLiの回帰直線Diの傾きaiを算出する。具体的には、例えば、判定部707が、最小二乗法により、集計期間Tjごとに算出されたオブジェクトSQLiの出現率Ajiおよび占有率Pjに基づいて、回帰直線Diの傾きaiを求める。 The determination unit 707 calculates the slope ai of the regression line Di of the object SQLi in the coordinate system 1700 based on the appearance rate A j i and the occupation rate Pj of the object SQLi calculated for each aggregation period Tj. Specifically, for example, the determination unit 707 obtains the slope ai of the regression line Di based on the appearance rate A j i and the occupation rate Pj of the object SQLi calculated for each aggregation period Tj by the least square method.

例えば、回帰直線D1を「Y=a1×X+b1」とする。ただし、a1は回帰直線D1の傾き、b1は回帰直線D1の切片である。この場合、判定部707が、最小二乗法により、座標系1700の各点28〜f32と回帰直線D1との距離の2乗を足し合わせた値が最小となる傾きa1および切片b1を算出する。   For example, the regression line D1 is “Y = a1 × X + b1”. However, a1 is the inclination of the regression line D1, and b1 is the intercept of the regression line D1. In this case, the determination unit 707 calculates the slope a1 and the intercept b1 that minimize the sum of the squares of the distances between the points 28 to f32 of the coordinate system 1700 and the regression line D1, by the least square method.

そして、判定部707は、算出したオブジェクトSQLiの回帰直線Diの傾きaiが所定の閾値γ以上か否かを判断する。ここで、回帰直線Diの傾きaiが閾値γ以上の場合、判定部707は、オブジェクトSQLiがバッチ処理のオブジェクトであると判定する。   Then, the determination unit 707 determines whether or not the calculated slope ai of the regression line Di of the object SQLi is equal to or greater than a predetermined threshold γ. Here, when the slope ai of the regression line Di is equal to or greater than the threshold γ, the determination unit 707 determines that the object SQLi is an object for batch processing.

一方、回帰直線Diの傾きaiが閾値γ未満の場合、判定部707は、オブジェクトSQLiがバッチ処理のオブジェクトではないと判定する。閾値γは、予め設定されてROM402、RAM403、磁気ディスク405、光ディスク407などの記憶装置に記憶されている。   On the other hand, when the slope ai of the regression line Di is less than the threshold γ, the determination unit 707 determines that the object SQLi is not an object for batch processing. The threshold value γ is set in advance and stored in a storage device such as the ROM 402, the RAM 403, the magnetic disk 405, and the optical disk 407.

ここで、オブジェクトSQLiの出現率Ajiが低ければ低いほど、オブジェクトSQLiがバッチ処理のオブジェクトである可能性が高くなる。また、集計期間Tjの占有率Pjが低ければ低いほど、オブジェクトSQLiがバッチ処理のオブジェクトである可能性が高くなる。 Here, the lower the appearance rate A j i of the object SQLi, the higher the possibility that the object SQLi is an object of batch processing. Further, the lower the occupation rate Pj of the total period Tj, the higher the possibility that the object SQLi is an object for batch processing.

換言すれば、バッチ処理のオブジェクトSQLiは、占有率Pjが高くなると出現率Ajiが高くなる傾向が強い。このため、バッチ処理のオブジェクトSQLiの回帰直線Diは、オンライン処理のオブジェクトの回帰直線に比べて傾きaiが大きくなる。 In other words, the batch processing object SQLi has a strong tendency that the appearance rate A j i increases as the occupation rate Pj increases. For this reason, the regression line Di of the batch processing object SQLi has a larger slope ai than the regression line of the online processing object.

したがって、上記閾値γを大きい値に設定するほど、バッチ処理のオブジェクトを正確に判定することができる。一方、上記閾値γの値が大きすぎると、バッチ処理のオブジェクトであると判定される基準が厳しくなり、オブジェクトSQLiがバッチ処理のオブジェクトであっても判定されない場合がある。   Therefore, the larger the threshold γ is set, the more accurately the batch processing object can be determined. On the other hand, if the threshold value γ is too large, the criterion for determining that the object is a batch process becomes strict, and the object SQLi may not be determined even if it is a batch process object.

このため、閾値γは、シミュレーションを行うなどして、オブジェクトSQLiの回帰直線Diの傾きaiが閾値γ以上の場合、オブジェクトSQLiがバッチ処理のオブジェクトである可能性が高くなる適切な値(例えば、0.7)に設定される。   For this reason, the threshold value γ is an appropriate value (for example, when the slope ai of the regression line Di of the object SQLi is greater than or equal to the threshold value γ, for example, by performing a simulation). 0.7).

図17において、回帰直線Dは、傾きが上記閾値γの直線である。図17の例では、オブジェクトSQL1の回帰直線D1の傾きa1は閾値γ未満である。また、オブジェクトSQL2の回帰直線D2の傾きa2は閾値γ未満である。このため、判定部707は、オブジェクトSQL1,SQL2がバッチ処理のオブジェクトではないと判定する。   In FIG. 17, the regression line D is a straight line whose slope is the threshold γ. In the example of FIG. 17, the slope a1 of the regression line D1 of the object SQL1 is less than the threshold γ. Further, the slope a2 of the regression line D2 of the object SQL2 is less than the threshold value γ. For this reason, the determination unit 707 determines that the objects SQL1 and SQL2 are not batch processing objects.

一方、オブジェクトSQL3の回帰直線D3の傾きa3は閾値γ以上である。このため、判定部707は、オブジェクトSQL3がバッチ処理のオブジェクトであると判定する。これにより、プロトコル「SQL」のオブジェクトSQL1,SQL2,SQL3のうち、オブジェクトSQL3がバッチ処理のオブジェクトであると判別することができる。   On the other hand, the slope a3 of the regression line D3 of the object SQL3 is equal to or greater than the threshold value γ. For this reason, the determination unit 707 determines that the object SQL3 is an object of batch processing. Accordingly, it is possible to determine that the object SQL3 is an object of batch processing among the objects SQL1, SQL2, and SQL3 of the protocol “SQL”.

(メッセージの削除例)
つぎに、図18を用いて、ネットワークシステム100内で受け渡されたメッセージ群の中から、バッチ処理のオブジェクトであると判定されたオブジェクトSQLiのメッセージを削除する削除部709の具体的な処理内容について説明する。
(Message deletion example)
Next, referring to FIG. 18, the specific processing contents of the deletion unit 709 that deletes the message of the object SQLi determined to be an object of batch processing from the message group delivered in the network system 100. Will be described.

まず、取得部701は、ネットワークシステム100内で受け渡された処理対象となるメッセージ群を取得する。取得された処理対象となるメッセージ群は、例えば、図18に示す処理対象テーブル1800に記憶される。処理対象テーブル1800は、例えば、RAM403、磁気ディスク405、光ディスク407などの記憶装置により実現される。ここで、処理対象テーブル1800について説明する。   First, the acquisition unit 701 acquires a message group to be processed that has been transferred within the network system 100. The acquired message group to be processed is stored, for example, in a processing target table 1800 shown in FIG. The processing target table 1800 is realized by a storage device such as the RAM 403, the magnetic disk 405, and the optical disk 407, for example. Here, the processing target table 1800 will be described.

図18は、処理対象テーブルの記憶内容の一例を示す説明図である。図18において、処理対象テーブル1800は、メッセージID、タイムスタンプ、プロトコル、メッセージ種別および削除フラグのフィールドを有する。各フィールドに情報を設定することで、処理対象となるメッセージのメッセージデータ1800−1〜1800−12がレコードとして記憶されている。   FIG. 18 is an explanatory diagram of an example of the contents stored in the processing target table. In FIG. 18, the processing target table 1800 has fields for message ID, time stamp, protocol, message type, and deletion flag. By setting information in each field, message data 1800-1 to 1800-12 of a message to be processed is stored as a record.

メッセージIDは、ネットワークシステム100内で送受信されたメッセージの識別子である。タイムスタンプは、メッセージの送信時刻である。メッセージ種別は、リクエストメッセージまたはレスポンスメッセージを示す情報である。削除フラグは、削除対象となるメッセージを示すフラグである。ここでは、削除フラグが「1」のメッセージが削除対象となる。削除フラグは、初期状態は「0」である。   The message ID is an identifier of a message transmitted / received in the network system 100. The time stamp is a message transmission time. The message type is information indicating a request message or a response message. The deletion flag is a flag indicating a message to be deleted. Here, a message having a deletion flag “1” is a deletion target. The initial state of the deletion flag is “0”.

図18の(18−1)の処理対象テーブル1800において、取得された処理対象となるメッセージ群のメッセージデータ1800−1〜1800−12が記憶されている。なお、図示は省略するが、処理対象テーブル1800には、各メッセージデータ1800−1〜1800−12に対応するメッセージが関連付けられて記憶されている。   In the processing target table 1800 of (18-1) in FIG. 18, message data 1800-1 to 1800-12 of the acquired message group to be processed are stored. Although illustration is omitted, in the processing target table 1800, messages corresponding to the message data 1800-1 to 1800-12 are stored in association with each other.

以下、プロトコル「SQL」のオブジェクトSQL3がバッチ処理のオブジェクトであると判定された場合を例に挙げて説明する。   Hereinafter, a case where it is determined that the object SQL3 of the protocol “SQL” is an object of batch processing will be described as an example.

まず、削除部709が、処理対象テーブル1800の中から、プロトコル「SQL」の任意のメッセージデータを選択する。つぎに、削除部709が、選択したメッセージデータのメッセージ種別フィールドに「リクエスト」が設定されているか否かを判断する。ここで、「リクエスト」が設定されている場合、削除部709が、選択したメッセージデータに対応するメッセージからオブジェクトSQLiを抽出する。   First, the deletion unit 709 selects arbitrary message data of the protocol “SQL” from the processing target table 1800. Next, the deletion unit 709 determines whether “request” is set in the message type field of the selected message data. Here, when “request” is set, the deletion unit 709 extracts the object SQLi from the message corresponding to the selected message data.

そして、削除部709が、抽出したオブジェクトSQLiがオブジェクトSQL3か否かを判断する。ここで、オブジェクトSQLiがオブジェクトSQL3の場合、選択したメッセージデータの削除フラグに「1」を設定する。図18の(18−2)の例では、メッセージデータ1800−11の削除フラグに「1」が設定されている。   Then, the deletion unit 709 determines whether or not the extracted object SQLi is the object SQL3. Here, when the object SQLi is the object SQL3, “1” is set to the deletion flag of the selected message data. In the example of (18-2) in FIG. 18, “1” is set in the deletion flag of the message data 1800-11.

また、選択したメッセージデータのメッセージ種別フィールドに「レスポンス」が設定されている場合、削除部709が、処理対象テーブル1800の中から、選択したメッセージデータと同一メッセージIDのメッセージデータを検索する。ここで、検索された場合、削除部709が、検索したメッセージデータに対応するメッセージからオブジェクトSQLiを抽出する。   If “response” is set in the message type field of the selected message data, the deletion unit 709 searches the processing target table 1800 for message data having the same message ID as the selected message data. Here, when a search is performed, the deletion unit 709 extracts the object SQLi from the message corresponding to the searched message data.

そして、削除部709が、抽出したオブジェクトSQLiがオブジェクトSQL3か否かを判断する。ここで、オブジェクトSQLiがオブジェクトSQL3の場合、選択したメッセージデータの削除フラグに「1」を設定する。図18の(18−2)の例では、メッセージデータ1800−12の削除フラグに「1」が設定されている。   Then, the deletion unit 709 determines whether or not the extracted object SQLi is the object SQL3. Here, when the object SQLi is the object SQL3, “1” is set to the deletion flag of the selected message data. In the example of (18-2) in FIG. 18, “1” is set in the deletion flag of the message data 1800-12.

削除部709は、例えば、処理対象テーブル1800の中から選択されていない未選択のメッセージデータがなくなるまで、上述した一連の処理を繰り返す。最後に、削除部709が、処理対象テーブル1800の中から削除フラグに「1」が設定されているメッセージデータを削除する。   For example, the deletion unit 709 repeats the series of processes described above until there is no unselected message data that has not been selected from the processing target table 1800. Finally, the deletion unit 709 deletes message data in which “1” is set in the deletion flag from the processing target table 1800.

図18の(18−3)の例では、処理対象テーブル1800の中からメッセージデータ1800−11,1800−12が削除されている。これにより、処理対象となるメッセージ群の中から、バッチ処理のオブジェクトSQLiのメッセージを除去することができる。   In the example of (18-3) in FIG. 18, message data 1800-11 and 1800-12 are deleted from the processing target table 1800. Thereby, the message of the batch processing object SQLi can be removed from the message group to be processed.

なお、図18に示した例では、バッチ処理のオブジェクトSQLiのメッセージを削除する場合を例に挙げて説明したが、バッチ処理のオブジェクトSQLiのメッセージを除く残余のメッセージを削除することにしてもよい。これにより、処理対象となるメッセージ群の中からバッチ処理のオブジェクトSQLiのメッセージを抽出することができる。   In the example illustrated in FIG. 18, the case where the message of the batch processing object SQLi is deleted has been described as an example. However, the remaining messages other than the message of the batch processing object SQLi may be deleted. . Thereby, it is possible to extract the message of the batch processing object SQLi from the message group to be processed.

(システム分析支援装置101のシステム分析支援処理手順)
つぎに、実施の形態にかかるシステム分析支援装置101のシステム分析支援処理手順について説明する。
(System analysis support processing procedure of the system analysis support apparatus 101)
Next, a system analysis support processing procedure of the system analysis support apparatus 101 according to the embodiment will be described.

図19は、実施の形態にかかるシステム分析支援装置のシステム分析支援処理手順の一例を示すフローチャートである。図19のフローチャートにおいて、まず、取得部701により、ネットワークシステム100内で受け渡されたメッセージ群を取得したか否かを判断する(ステップS1901)。   FIG. 19 is a flowchart illustrating an example of a system analysis support processing procedure of the system analysis support apparatus according to the embodiment. In the flowchart of FIG. 19, first, the acquisition unit 701 determines whether a message group passed within the network system 100 has been acquired (step S1901).

ここで、取得部701により、メッセージ群を取得するのを待つ(ステップS1901:No)。そして、メッセージ群が取得された場合(ステップS1901:Yes)、検出部702により、取得されたメッセージ群の中から、プロトコル「IIOP」のリクエストメッセージとレスポンスメッセージのペアを検出する(ステップS1902)。   Here, the acquisition unit 701 waits to acquire a message group (step S1901: No). When the message group is acquired (step S1901: Yes), the detection unit 702 detects a request message / response message pair of the protocol “IIOP” from the acquired message group (step S1902).

つぎに、特定部703により、取得されたメッセージ群のうち、プロトコル「SQL」のメッセージのオブジェクトSQLiを特定する(ステップS1903)。このあと、選択部704により、集計期間Tjの「j」を「j=1」とする(ステップS1904)。   Next, the identifying unit 703 identifies the object SQLLi of the message of the protocol “SQL” from the acquired message group (step S1903). Thereafter, the selection unit 704 sets “j” in the total period Tj to “j = 1” (step S1904).

そして、第1の算出部705により、集計期間TjにおけるオブジェクトSQLiの出現率Ajiを算出する出現率算出処理を実行する(ステップS1905)。つぎに、第2の算出部706により、集計期間Tjのうち占有期間Lが占める割合を表す占有率Pjを算出する占有率算出処理を実行する(ステップS1906)。 Then, the first calculation unit 705 executes appearance rate calculation processing for calculating the appearance rate A j i of the object SQLi in the aggregation period Tj (step S1905). Next, the second calculation unit 706 executes an occupancy rate calculation process for calculating an occupancy rate Pj representing the proportion of the total period Tj occupied by the occupancy period L (step S1906).

このあと、選択部704により、集計期間Tjの「j」をインクリメントして(ステップS1907)、「j」が「m」より大きいか否かを判断する(ステップS1908)。ここで、「j」が「m」以下の場合(ステップS1908:No)、ステップS1905に戻る。   Thereafter, the selection unit 704 increments “j” of the total period Tj (step S1907), and determines whether “j” is greater than “m” (step S1908). If “j” is equal to or less than “m” (step S1908: NO), the process returns to step S1905.

一方、「j」が「m」より大きい場合(ステップS1908:Yes)、判定部707により、オブジェクトSQLiがバッチ処理のオブジェクトか否かを判定する判定処理を実行する(ステップS1909)。そして、出力部708により、バッチ処理のオブジェクトSQLiをリスト化して示すオブジェクトリスト1000を出力して(ステップS1910)、本フローチャートによる一連の処理を終了する。   On the other hand, when “j” is larger than “m” (step S1908: Yes), the determination unit 707 executes determination processing for determining whether or not the object SQLi is a batch processing object (step S1909). Then, the output unit 708 outputs the object list 1000 showing the batch processing objects SQLi in a list (step S1910), and the series of processing according to this flowchart ends.

これにより、プロトコル「SQL」のオブジェクトのうち、バッチ処理のオブジェクトSQLiを判別することができる。   As a result, among the objects of the protocol “SQL”, the batch processing object SQLi can be determined.

<出現率算出処理の具体的な処理手順>
つぎに、図19に示したステップS1905の出現率算出処理の具体的な処理手順について説明する。
<Specific processing procedure of appearance rate calculation processing>
Next, a specific processing procedure of the appearance rate calculation processing in step S1905 shown in FIG. 19 will be described.

図20は、ステップS1905の出現率算出処理の具体的な処理手順の一例を示すフローチャートである。図20のフローチャートにおいて、まず、選択部704により、図19に示したステップS1901において取得されたメッセージ群の中から、集計期間Tj内に送信された、オブジェクトSQLiのメッセージの集合を選択する(ステップS2001)。   FIG. 20 is a flowchart illustrating an example of a specific processing procedure of the appearance rate calculation processing in step S1905. In the flowchart of FIG. 20, first, the selection unit 704 selects a set of messages of the object SQLi transmitted within the counting period Tj from the message group acquired in step S1901 shown in FIG. S2001).

つぎに、第1の算出部705により、選択されたメッセージの集合のオブジェクトSQLiのオブジェクトIDを集計期間Tjの中間テーブル1300に登録する(ステップS2002)。このあと、第1の算出部705により、選択されたメッセージの集合の中から任意のメッセージを選択する(ステップS2003)。   Next, the first calculation unit 705 registers the object ID of the object SQLi of the selected message set in the intermediate table 1300 of the aggregation period Tj (step S2002). Thereafter, the first calculation unit 705 selects an arbitrary message from the selected set of messages (step S2003).

そして、第1の算出部705により、中間テーブル1300内のオブジェクトSQLiのメッセージ数をインクリメントする(ステップS2004)。なお、中間テーブル1300内のオブジェクトSQLiのメッセージ数の初期値は「0」である。   Then, the first calculation unit 705 increments the number of messages of the object SQLi in the intermediate table 1300 (step S2004). Note that the initial value of the number of messages of the object SQLi in the intermediate table 1300 is “0”.

つぎに、第1の算出部705により、選択されたメッセージに親が存在するか否かを判断する(ステップS2005)。ここで、親が存在しない場合(ステップS2005:No)、ステップS2007に移行する。   Next, the first calculation unit 705 determines whether or not a parent exists in the selected message (step S2005). Here, when the parent does not exist (step S2005: No), the process proceeds to step S2007.

一方、親が存在する場合(ステップS2005:Yes)、第1の算出部705により、中間テーブル1300内のオブジェクトSQLiの親有メッセージ数をインクリメントする(ステップS2006)。なお、中間テーブル1300内のオブジェクトSQLiの親有メッセージ数の初期値は「0」である。   On the other hand, when a parent exists (step S2005: Yes), the first calculation unit 705 increments the number of messages owned by the object SQLi in the intermediate table 1300 (step S2006). Note that the initial value of the number of messages owned by the object SQLi in the intermediate table 1300 is “0”.

つぎに、第1の算出部705により、ステップS2001において選択されたメッセージの集合の中から選択されていない未選択のメッセージがあるか否かを判断する(ステップS2007)。ここで、未選択のメッセージがある場合(ステップS2007:Yes)、ステップS2003に戻る。   Next, the first calculation unit 705 determines whether there is an unselected message that has not been selected from the set of messages selected in step S2001 (step S2007). If there is an unselected message (step S2007: Yes), the process returns to step S2003.

一方、未選択のメッセージがない場合(ステップS2007:No)、選択部704により、メッセージ群の中から選択されていない未選択のオブジェクトSQLiのメッセージの集合があるか否かを判断する(ステップS2008)。ここで、未選択のメッセージの集合がある場合(ステップS2008:Yes)、ステップS2001に戻る。   On the other hand, if there is no unselected message (step S2007: No), the selection unit 704 determines whether there is a set of messages of unselected objects SQLi not selected from the message group (step S2008). ). If there is a set of unselected messages (step S2008: Yes), the process returns to step S2001.

一方、未選択のメッセージの集合がない場合(ステップS2008:No)、第1の算出部705により、中間テーブル1300を参照して、オブジェクトSQLiごとの出現率Ajiを算出して(ステップS2009)、図19に示したステップS1906に移行する。なお、算出されたオブジェクトSQLiごとの出現率Ajiは、図9に示した出現率/占有率テーブル900に記憶される。 On the other hand, if there is no set of unselected messages (step S2008: No), the first calculation unit 705 refers to the intermediate table 1300 to calculate the appearance rate A j i for each object SQLi (step S2009). ), The process proceeds to step S1906 shown in FIG. The calculated appearance rate A j i for each object SQLi is stored in the appearance rate / occupancy rate table 900 shown in FIG.

これにより、集計期間TjにおけるオブジェクトSQLiごとの出現率Ajiを算出することができる。 Thereby, the appearance rate A j i for each object SQLi in the total period Tj can be calculated.

<占有率算出処理の具体的な処理手順>
つぎに、図19に示したステップS1906の占有率算出処理の具体的な処理手順について説明する。
<Specific processing procedure of occupation rate calculation processing>
Next, a specific processing procedure of the occupation ratio calculation processing in step S1906 shown in FIG. 19 will be described.

図21は、ステップS1906の占有率算出処理の具体的な処理手順の一例を示すフローチャートである。図21のフローチャートにおいて、まず、第2の算出部706により、図19に示したステップS1901において取得されたメッセージ群の中から、集計期間Tj内に送信された、プロトコル「IIOP」のメッセージの集合を抽出する(ステップS2101)。   FIG. 21 is a flowchart illustrating an example of a specific processing procedure of the occupation ratio calculation processing in step S1906. In the flowchart of FIG. 21, first, a set of messages of protocol “IIOP” transmitted by the second calculation unit 706 from the message group acquired in step S1901 shown in FIG. 19 within the total period Tj. Is extracted (step S2101).

つぎに、第2の算出部706により、抽出したメッセージの集合の中から、送信時刻が最古の未選択のメッセージを選択する(ステップS2102)。そして、第2の算出部706により、選択したメッセージのメッセージ種別が「リクエスト」であるか否かを判断する(ステップS2103)。   Next, the second calculation unit 706 selects an unselected message with the oldest transmission time from the set of extracted messages (step S2102). Then, the second calculation unit 706 determines whether the message type of the selected message is “request” (step S2103).

ここで、メッセージ種別が「リクエスト」の場合(ステップS2103:Yes)、第2の算出部706により、集計期間Tjの多重度をインクリメントして(ステップS2104)、ステップS2106に移行する。なお、集計期間Tjの多重度の初期値は「0」である。   If the message type is “request” (step S2103: Yes), the second calculation unit 706 increments the multiplicity of the total period Tj (step S2104), and the process proceeds to step S2106. Note that the initial value of the multiplicity of the total period Tj is “0”.

一方、メッセージ種別が「レスポンス」の場合(ステップS2103:No)、第2の算出部706により、集計期間Tjの多重度をデクリメントする(ステップS2105)。そして、第2の算出部706により、集計期間Tjの多重度、および、選択したメッセージの送信時刻を、集計期間Tjの多重度テーブル1500に登録する(ステップS2106)。   On the other hand, when the message type is “response” (step S2103: No), the second calculation unit 706 decrements the multiplicity of the total period Tj (step S2105). Then, the second calculation unit 706 registers the multiplicity of the aggregation period Tj and the transmission time of the selected message in the multiplicity table 1500 of the aggregation period Tj (step S2106).

このあと、第2の算出部706により、ステップS2101において抽出したメッセージの集合の中から選択されていない未選択のメッセージがあるか否かを判断する(ステップS2107)。ここで、未選択のメッセージがある場合(ステップS2107:Yes)、ステップS2102に戻る。   Thereafter, the second calculation unit 706 determines whether there is an unselected message that has not been selected from the message set extracted in step S2101 (step S2107). If there is an unselected message (step S2107: YES), the process returns to step S2102.

一方、未選択のメッセージがない場合(ステップS2107:No)、第2の算出部706により、多重度テーブル1500を参照して、集計期間Tjのうち多重度が1以上の期間の合計を求めることにより占有期間Lを算出する(ステップS2108)。   On the other hand, when there is no unselected message (step S2107: No), the second calculation unit 706 refers to the multiplicity table 1500 and obtains the total of the multiplicity periods of 1 or more in the aggregation period Tj. Thus, the occupation period L is calculated (step S2108).

そして、第2の算出部706により、上記式(2)に集計期間Tjおよび占有期間Lを代入することで、集計期間Tjの占有率Pjを算出して(ステップS2109)、図19に示したステップS1907に移行する。   Then, the second calculation unit 706 calculates the occupation rate Pj of the total period Tj by substituting the total period Tj and the occupation period L into the above equation (2) (step S2109), which is shown in FIG. The process proceeds to step S1907.

これにより、集計期間Tjの占有率Pjを算出することができる。なお、上述した説明では、集計期間Tjの多重度の初期値を「0」としたが、集計期間T(j−1)の終期における多重度を集計期間Tjの多重度の初期値としてもよい。   Thereby, the occupation rate Pj of the total period Tj can be calculated. In the above description, the initial value of the multiplicity of the total period Tj is “0”. However, the multiplicity at the end of the total period T (j−1) may be the initial value of the multiplicity of the total period Tj. .

<判定処理の具体的な処理手順(その1)>
つぎに、図19に示したステップS1909の判定処理の具体的な処理手順について説明する。ここでは、まず、上述した<判定例1>に対応する判定処理の具体的な処理手順について説明する。
<Specific Processing Procedure of Determination Processing (Part 1)>
Next, a specific processing procedure of the determination processing in step S1909 shown in FIG. 19 will be described. Here, first, a specific processing procedure of determination processing corresponding to the above-described <determination example 1> will be described.

図22は、ステップS1909の判定処理の具体的な処理手順の一例を示すフローチャート(その1)である。図22のフローチャートにおいて、まず、判定部707により、出現率/占有率テーブル900を参照して、集計期間T1〜Tmのうち占有率が最小となる集計期間Tjの占有率Pjを特定する(ステップS2201)。   FIG. 22 is a flowchart (part 1) illustrating an example of a specific processing procedure of the determination processing in step S1909. In the flowchart of FIG. 22, first, the determination unit 707 refers to the appearance rate / occupancy rate table 900 to identify the occupation rate Pj of the aggregation period Tj that minimizes the occupation ratio among the aggregation periods T1 to Tm (step S2201).

このあと、判定部707により、特定した集計期間Tjの占有率Pjが閾値β以下となるか否かを判断する(ステップS2202)。ここで、占有率Pjが閾値β以下の場合(ステップS2202:Yes)、判定部707により、出現率/占有率テーブル900を参照して、集計期間Tjの任意のオブジェクトSQLiを選択する(ステップS2203)。   Thereafter, the determination unit 707 determines whether or not the occupation rate Pj of the specified total period Tj is equal to or less than the threshold value β (step S2202). Here, when the occupation rate Pj is equal to or less than the threshold β (step S2202: Yes), the determination unit 707 refers to the appearance rate / occupancy rate table 900 and selects an arbitrary object SQLi in the aggregation period Tj (step S2203). ).

このあと、判定部707により、出現率/占有率テーブル900を参照して、選択したオブジェクトSQLiの出現率Aziが閾値α以下となるか否かを判断する(ステップS2204)。ここで、出現率Aziが閾値αより大きい場合(ステップS2204:No)、ステップS2207に移行する。 Thereafter, the determination unit 707 refers to the appearance rate / occupancy rate table 900 to determine whether the appearance rate A z i of the selected object SQLi is equal to or less than the threshold value α (step S2204). If the appearance rate A z i is greater than the threshold value α (step S2204: NO), the process proceeds to step S2207.

一方、出現率Aziが閾値α以下の場合(ステップS2204:Yes)、判定部707により、選択したオブジェクトSQLiがバッチ処理のオブジェクトであると判定する(ステップS2205)。そして、判定部707により、オブジェクトリスト1000に、バッチ処理のオブジェクトであると判定されたオブジェクトSQLiのオブジェクトIDを登録する(ステップS2206)。 On the other hand, when the appearance rate A z i is equal to or less than the threshold value α (step S2204: Yes), the determination unit 707 determines that the selected object SQLi is an object for batch processing (step S2205). Then, the determination unit 707 registers the object ID of the object SQLi determined to be an object of batch processing in the object list 1000 (step S2206).

このあと、判定部707により、出現率/占有率テーブル900を参照して、選択されていない未選択のオブジェクトSQLiがあるか否かを判断する(ステップS2207)。ここで、未選択のオブジェクトSQLiがある場合(ステップS2207:Yes)、ステップS2203に戻る。一方、未選択のオブジェクトSQLiがない場合(ステップS2207:No)、図19に示したステップS1910に移行する。   Thereafter, the determination unit 707 refers to the appearance rate / occupancy rate table 900 to determine whether there is an unselected object SQLi that has not been selected (step S2207). If there is an unselected object SQLi (step S2207: YES), the process returns to step S2203. On the other hand, when there is no unselected object SQLi (step S2207: No), the process proceeds to step S1910 shown in FIG.

また、ステップS2202において、占有率Pjが閾値βより大きい場合(ステップS2202:No)、判定部707により、すべてのオブジェクトSQLiがバッチ処理のオブジェクトではないと判定して(ステップS2208)、図19に示したステップS1910に移行する。   In step S2202, if the occupation ratio Pj is larger than the threshold β (step S2202: No), the determination unit 707 determines that all the objects SQLi are not batch processing objects (step S2208), and FIG. The process proceeds to the step S1910 shown.

これにより、閾値αおよび閾値βを、バッチ処理のオブジェクトである可能性が高くなる任意の値にそれぞれ設定して、バッチ処理のオブジェクトの判定を行うことができる。   Thereby, the threshold value α and the threshold value β can be set to arbitrary values that are highly likely to be batch processing objects, and batch processing objects can be determined.

<判定処理の具体的な処理手順(その2)>
つぎに、上述した<判定例2>に対応する判定処理の具体的な処理手順について説明する。
<Specific Processing Procedure of Determination Processing (Part 2)>
Next, a specific processing procedure of the determination process corresponding to <determination example 2> described above will be described.

図23は、ステップS1909の判定処理の具体的な処理手順の一例を示すフローチャート(その2)である。図23のフローチャートにおいて、まず、判定部707により、出現率/占有率テーブル900を参照して、任意のオブジェクトSQLiを選択する(ステップS2301)。   FIG. 23 is a flowchart (part 2) illustrating an example of a specific processing procedure of the determination processing in step S1909. In the flowchart of FIG. 23, first, the determination unit 707 refers to the appearance rate / occupancy rate table 900 to select an arbitrary object SQLi (step S2301).

このあと、判定部707により、出現率/占有率テーブル900を参照して、選択したオブジェクトSQLiの回帰直線Diの傾きaiを算出する(ステップS2302)。そして、判定部707により、算出した回帰直線Diの傾きaiが閾値γ以上か否かを判断する(ステップS2303)。   Thereafter, the determination unit 707 refers to the appearance rate / occupancy rate table 900 to calculate the slope ai of the regression line Di of the selected object SQLi (step S2302). Then, the determination unit 707 determines whether or not the calculated slope ai of the regression line Di is greater than or equal to the threshold γ (step S2303).

ここで、回帰直線Diの傾きaiが閾値γ以上の場合(ステップS2303:Yes)、判定部707により、オブジェクトSQLiがバッチ処理のオブジェクトであると判定する(ステップS2304)。そして、判定部707により、オブジェクトリスト1000に、バッチ処理のオブジェクトであると判定されたオブジェクトSQLiのオブジェクトIDを登録する(ステップS2305)。   If the slope ai of the regression line Di is greater than or equal to the threshold γ (step S2303: Yes), the determination unit 707 determines that the object SQLi is an object for batch processing (step S2304). Then, the determination unit 707 registers the object ID of the object SQLi determined to be an object of batch processing in the object list 1000 (step S2305).

このあと、判定部707により、出現率/占有率テーブル900を参照して、選択されていない未選択のオブジェクトSQLiがあるか否かを判断する(ステップS2306)。ここで、未選択のオブジェクトSQLiがある場合(ステップS2306:Yes)、ステップS2301に戻る。一方、未選択のオブジェクトSQLiがない場合(ステップS2306:No)、図19に示したステップS1910に移行する。   Thereafter, the determination unit 707 refers to the appearance rate / occupancy rate table 900 to determine whether there is an unselected object SQLi that has not been selected (step S2306). If there is an unselected object SQLi (step S2306: YES), the process returns to step S2301. On the other hand, when there is no unselected object SQLi (step S2306: No), the process proceeds to step S1910 shown in FIG.

また、ステップS2303において、回帰直線Diの傾きaiが閾値γ未満の場合(ステップS2303:No)、判定部707により、オブジェクトSQLiがバッチ処理のオブジェクトではないと判定して(ステップS2307)、ステップS2306に移行する。   In step S2303, when the slope ai of the regression line Di is less than the threshold γ (step S2303: No), the determination unit 707 determines that the object SQLi is not a batch processing object (step S2307), and step S2306. Migrate to

これにより、プロトコル「SQL」のオブジェクトのうち、集計期間Tjの占有率Pjの増加に伴って出現率Ajiが増加する傾向が大きいオブジェクトSQLiをバッチ処理のオブジェクトとして判定することができる。 Thereby, among the objects of the protocol “SQL”, the object SQLi in which the appearance rate A j i tends to increase with the increase in the occupation rate Pj of the aggregation period Tj can be determined as the object of batch processing.

<メッセージ削除処理手順>
つぎに、バッチ処理のオブジェクトであると判定されたオブジェクトSQLiのメッセージを削除する削除処理の具体的な処理手順について説明する。
<Message deletion process>
Next, a specific processing procedure of the deletion processing for deleting the message of the object SQLi determined to be an object of batch processing will be described.

図24は、メッセージ削除処理の具体的な処理手順の一例を示すフローチャートである。図24のフローチャートにおいて、まず、取得部701により、ネットワークシステム100内で受け渡された処理対象となるメッセージ群を取得したか否かを判断する(ステップS2401)。   FIG. 24 is a flowchart illustrating an example of a specific processing procedure of message deletion processing. In the flowchart of FIG. 24, first, the acquisition unit 701 determines whether or not a message group to be processed passed within the network system 100 has been acquired (step S2401).

ここで、処理対象となるメッセージ群を取得するのを待って(ステップS2401:No)、取得した場合(ステップS2401:Yes)、取得部701により、取得したメッセージ群を処理対象テーブル1800に登録する(ステップS2402)。   Here, waiting for acquiring a message group to be processed (step S2401: No), and when acquired (step S2401: Yes), the acquiring unit 701 registers the acquired message group in the processing target table 1800. (Step S2402).

つぎに、削除部709により、処理対象テーブル1800の中から、プロトコル「SQL」の任意のメッセージデータを選択する(ステップS2403)。そして、削除部709により、選択したメッセージデータのメッセージ種別フィールドに「リクエスト」が設定されているか否かを判断する(ステップS2404)。   Next, the deletion unit 709 selects arbitrary message data of the protocol “SQL” from the processing target table 1800 (step S2403). Then, the deletion unit 709 determines whether “request” is set in the message type field of the selected message data (step S2404).

ここで、メッセージ種別フィールドに「レスポンス」が設定されている場合(ステップS2404:No)、削除部709により、処理対象テーブル1800の中から、選択したメッセージデータと同一メッセージIDのメッセージデータを検索する(ステップS2405)。   If “response” is set in the message type field (step S2404: No), the deletion unit 709 searches the processing target table 1800 for message data having the same message ID as the selected message data. (Step S2405).

ここで、メッセージデータが検索された場合(ステップS2406:Yes)、削除部709により、検索したメッセージデータに対応するメッセージからオブジェクトSQLiを抽出する(ステップS2407)。一方、メッセージデータが検索されなかった場合(ステップS2406:No)、ステップS2410に移行する。   If the message data is searched (step S2406: YES), the deletion unit 709 extracts the object SQLi from the message corresponding to the searched message data (step S2407). On the other hand, when message data is not searched (step S2406: No), the process proceeds to step S2410.

また、ステップS2404において、メッセージ種別フィールドに「リクエスト」が設定されている場合(ステップS2404:Yes)、削除部709により、ステップS2403において選択したメッセージデータに対応するメッセージからオブジェクトSQLiを抽出する(ステップS2407)。   If “request” is set in the message type field in step S2404 (step S2404: Yes), the deletion unit 709 extracts the object SQLi from the message corresponding to the message data selected in step S2403 (step S2404). S2407).

このあと、削除部709により、抽出したオブジェクトSQLiのオブジェクトIDがオブジェクトリスト1000に含まれるか否かを判断する(ステップS2408)。ここで、オブジェクトリスト1000に含まれない場合(ステップS2408:No)、ステップS2410に移行する。   Thereafter, the deletion unit 709 determines whether or not the object list 1000 includes the object ID of the extracted object SQLi (step S2408). If it is not included in the object list 1000 (step S2408: NO), the process proceeds to step S2410.

一方、オブジェクトリスト1000に含まれる場合(ステップS2408:Yes)、削除部709により、ステップS2403において選択したメッセージデータの処理対象テーブル1800内の削除フラグを「0」から「1」に変更する(ステップS2409)。そして、削除部709により、処理対象テーブル1800の中から選択されていない未選択のプロトコル「SQL」のメッセージデータがあるか否かを判断する(ステップS2410)。   On the other hand, if it is included in the object list 1000 (step S2408: Yes), the deletion unit 709 changes the deletion flag in the processing target table 1800 for the message data selected in step S2403 from “0” to “1” (step S2403). S2409). Then, the deletion unit 709 determines whether there is message data of an unselected protocol “SQL” that has not been selected from the processing target table 1800 (step S2410).

ここで、未選択のメッセージデータがある場合(ステップS2410:Yes)、ステップS2403に戻る。一方、未選択のメッセージデータがない場合(ステップS2410:No)、削除部709により、処理対象となるメッセージ群の中から、処理対象テーブル1800内の削除フラグが「1」のメッセージデータに対応するメッセージを削除する(ステップS2411)。   If there is unselected message data (step S2410: YES), the process returns to step S2403. On the other hand, when there is no unselected message data (step S2410: No), the deletion unit 709 corresponds to message data whose deletion flag in the processing target table 1800 is “1” from the message group to be processed. The message is deleted (step S2411).

そして、出力部708により、処理対象となるメッセージ群の中から削除フラグが「1」のメッセージデータに対応するメッセージが削除された削除後のメッセージ群を出力して(ステップS2412)、本フローチャートによる一連の処理を終了する。   Then, the output unit 708 outputs the deleted message group in which the message corresponding to the message data with the deletion flag “1” is deleted from the message group to be processed (step S2412), and according to this flowchart. A series of processing ends.

これにより、ネットワークシステム100のシステム分析を行う際に、処理対象となるメッセージ群の中からバッチ処理のオブジェクトSQLiのメッセージを除去することができる。   Thereby, when the system analysis of the network system 100 is performed, the message of the batch processing object SQLi can be removed from the message group to be processed.

以上説明したように、本実施の形態にかかるシステム分析支援装置101によれば、集計期間TjにおけるオブジェクトSQLiの出現率Ajiおよび占有率Pjに基づいて、オブジェクトSQLiがバッチ処理のオブジェクトか否かを判定することができる。これにより、ネットワークシステム100内で受け渡されたメッセージ群の中から、バッチ処理のオブジェクトSQLiのメッセージを判別することができる。 As described above, according to the system analysis support apparatus 101 according to the present embodiment, whether or not the object SQLi is an object for batch processing based on the appearance rate A j i and the occupation rate Pj of the object SQLi in the counting period Tj. Can be determined. Thereby, the message of the batch processing object SQLi can be determined from the message group delivered in the network system 100.

また、システム分析支援装置101によれば、集計期間TjにおけるオブジェクトSQLiの出現率Ajiが閾値α以下かつ占有率Pjが閾値β以下の場合、オブジェクトSQLiがバッチ処理のオブジェクトであると判定することができる。これにより、閾値αおよび閾値βを、バッチ処理のオブジェクトである可能性が高くなる任意の値にそれぞれ設定して、バッチ処理のオブジェクトの判定を行うことができる。 Further, according to the system analysis support apparatus 101, when the appearance rate A j i of the object SQLi in the counting period Tj is equal to or less than the threshold value α and the occupation rate Pj is equal to or less than the threshold value β, it is determined that the object SQLi is an object of batch processing. be able to. Thereby, the threshold value α and the threshold value β can be set to arbitrary values that are highly likely to be batch processing objects, and batch processing objects can be determined.

また、システム分析支援装置101によれば、集計期間Tjごとに算出されたオブジェクトSQLiの出現率Ajiおよび占有率Pjに基づいて、オブジェクトSQLiがバッチ処理のオブジェクトか否かを判定することができる。これにより、オブジェクトSQLiがバッチ処理のオブジェクトか否かの判定を統計的に行って、判定精度を向上させることができる。 Further, according to the system analysis support apparatus 101, it is possible to determine whether or not the object SQLi is an object for batch processing based on the appearance rate A j i and the occupation rate Pj of the object SQLi calculated for each aggregation period Tj. it can. Thereby, it is possible to statistically determine whether or not the object SQLi is an object for batch processing, and improve the determination accuracy.

また、システム分析支援装置101によれば、集計期間T1〜Tmのうち占有率が最小となる集計期間Tjの占有率Pjが閾値β以下、かつ、オブジェクトSQLiの出現率Ajiが閾値α以下の場合、オブジェクトSQLiがバッチ処理のオブジェクトであると判定することができる。 Further, according to the system analysis support apparatus 101, the occupation rate Pj of the aggregation period Tj in which the occupation ratio is the minimum among the aggregation periods T1 to Tm is equal to or less than the threshold value β, and the appearance rate A j i of the object SQLi is equal to or less than the threshold value α. In this case, it can be determined that the object SQLi is an object of batch processing.

また、システム分析支援装置101によれば、集計期間TjごとのオブジェクトSQLiの出現率Ajiおよび占有率Pjに基づく回帰直線Diの傾きaiに基づいて、オブジェクトSQLiがバッチ処理のオブジェクトか否かを判定することができる。これにより、プロトコル「SQL」のオブジェクトのうち、集計期間Tjの占有率Pjの増加に伴って出現率Ajiが増加する傾向が大きいオブジェクトSQLiをバッチ処理のオブジェクトとして判定することができる。 Further, according to the system analysis support apparatus 101, based on the appearance rate A j i of the object SQLi and the slope ai of the regression line Di based on the occupation rate Pj for each counting period Tj, whether or not the object SQLi is an object of batch processing. Can be determined. Thereby, among the objects of the protocol “SQL”, the object SQLi in which the appearance rate A j i tends to increase with the increase in the occupation rate Pj of the aggregation period Tj can be determined as the object of batch processing.

また、システム分析支援装置101によれば、ネットワークシステム100内で受け渡されたメッセージ群の中から、バッチ処理のオブジェクトであると判定されたオブジェクトSQLiのメッセージを削除することができる。これにより、ネットワークシステム100のシステム分析を行う際に、処理対象となるメッセージ群の中からバッチ処理のオブジェクトSQLiのメッセージを除去することができる。この結果、ネットワークシステム100内の各コンピュータの処理時間を精度よく求めることができ、システム分析の分析精度を向上させることができる。   Further, according to the system analysis support apparatus 101, the message of the object SQLi determined to be an object of batch processing can be deleted from the message group delivered within the network system 100. Thereby, when the system analysis of the network system 100 is performed, the message of the batch processing object SQLi can be removed from the message group to be processed. As a result, the processing time of each computer in the network system 100 can be obtained with high accuracy, and the analysis accuracy of system analysis can be improved.

なお、本実施の形態で説明したシステム分析支援方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本システム分析支援プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本システム分析支援プログラムは、インターネット等のネットワークを介して配布してもよい。   The system analysis support method described in the present embodiment can be realized by executing a program prepared in advance on a computer such as a personal computer or a workstation. The system analysis support program is recorded on a computer-readable recording medium such as a hard disk, a flexible disk, a CD-ROM, an MO, and a DVD, and is executed by being read from the recording medium by the computer. The system analysis support program may be distributed via a network such as the Internet.

100 ネットワークシステム
101 システム分析支援装置
102 Webサーバ
103 APサーバ
104 DBサーバ
500 メッセージDB
701 取得部
702 検出部
703 特定部
704 選択部
705 第1の算出部
706 第2の算出部
707 判定部
708 出力部
709 削除部
800 ペア情報テーブル
900 出現率/占有率テーブル
1000 オブジェクトリスト
1300 中間テーブル
1500 多重度テーブル
1800 処理対象テーブル
DESCRIPTION OF SYMBOLS 100 Network system 101 System analysis support apparatus 102 Web server 103 AP server 104 DB server 500 Message DB
701 Acquisition unit 702 Detection unit 703 Identification unit 704 Selection unit 705 First calculation unit 706 Second calculation unit 707 Determination unit 708 Output unit 709 Deletion unit 800 Pair information table 900 Appearance rate / occupancy rate table 1000 Object list 1300 Intermediate table 1500 Multiplicity table 1800 Processing target table

Claims (8)

プロトコルの階層構造が定義されたシステム内で受け渡されたメッセージ群の中から、前記システム内のデータベースを操作するためのプロトコルの直上層のプロトコルのリクエストとレスポンスのペアを検出する検出工程と、
前記メッセージ群の中から、所定期間内に送信された、前記データベースに対する所定の操作に関するメッセージの集合を選択する選択工程と、
前記選択工程によって選択されたメッセージの集合のうち、前記検出工程によって検出された1以上のペアのリクエスト時刻とレスポンス時刻の間に送信されたメッセージの割合を表す第1の指標値を算出する第1の算出工程と、
前記所定期間のうち、前記1以上のペアのリクエスト時刻からレスポンス時刻までの期間が占める割合を表す第2の指標値を算出する第2の算出工程と、
前記第1および第2の算出工程によって算出された第1および第2の指標値に基づいて、前記所定の操作がバッチ処理の操作か否かを判定する判定工程と、
前記判定工程によって判定された判定結果を出力する出力工程と、
をコンピュータに実行させることを特徴とするシステム分析支援プログラム。
A detection step of detecting a request and response pair of a protocol immediately above the protocol for operating the database in the system from among a group of messages passed in the system in which the hierarchical structure of the protocol is defined;
A selection step of selecting a set of messages relating to a predetermined operation on the database transmitted within a predetermined period from the message group;
A first index value representing a ratio of messages transmitted between the request time and the response time of one or more pairs detected by the detection step in the set of messages selected by the selection step; 1 calculation step;
A second calculation step of calculating a second index value representing a ratio of a period from the request time to the response time of the one or more pairs in the predetermined period;
A determination step of determining whether or not the predetermined operation is a batch processing operation based on the first and second index values calculated by the first and second calculation steps;
An output step for outputting the determination result determined by the determination step;
A system analysis support program characterized by causing a computer to execute.
前記判定工程は、
前記第1の指標値が第1の閾値以下かつ前記第2の指標値が第2の閾値以下の場合、前記所定の操作がバッチ処理の操作であると判定することを特徴とする請求項1に記載のシステム分析支援プログラム。
The determination step includes
2. The predetermined operation is determined to be a batch processing operation when the first index value is equal to or smaller than a first threshold value and the second index value is equal to or smaller than a second threshold value. System analysis support program described in 1.
前記選択工程は、
複数の所定期間の各々の所定期間ごとに、前記メッセージ群の中から、前記各々の所定期間内に送信された、前記データベースに対する所定の操作に関するメッセージの集合を選択し、
前記第1の算出工程は、
前記各々の所定期間ごとに、前記各々の所定期間ごとに選択された前記メッセージの集合のうち、前記1以上のペアのリクエスト時刻とレスポンス時刻の間に送信されたメッセージの割合を表す第1の指標値を算出し、
前記第2の算出工程は、
前記各々の所定期間ごとに、前記各々の所定期間のうち、前記1以上のペアのリクエスト時刻からレスポンス時刻までの期間が占める割合を表す第2の指標値を算出し、
前記判定工程は、
前記各々の所定期間ごとに算出された第1および第2の指標値に基づいて、前記所定の操作がバッチ処理の操作か否かを判定することを特徴とする請求項1または2に記載のシステム分析支援プログラム。
The selection step includes
For each predetermined period of a plurality of predetermined periods, a set of messages relating to a predetermined operation on the database, transmitted within the predetermined period, is selected from the message group,
The first calculation step includes:
For each of the predetermined periods, a first value representing a ratio of messages transmitted between the request time and the response time of the one or more pairs of the set of messages selected for each of the predetermined periods. Calculate the index value,
The second calculation step includes:
For each of the predetermined periods, a second index value representing a ratio of the period from the request time to the response time of the one or more pairs in each predetermined period is calculated,
The determination step includes
3. The method according to claim 1, wherein whether or not the predetermined operation is a batch processing operation is determined based on the first and second index values calculated for each predetermined period. System analysis support program.
前記判定工程は、
前記複数の所定期間のうち前記第2の指標値が最小となる所定期間の前記第2の指標値が前記第2の閾値以下、かつ、前記第2の指標値が最小となる所定期間の前記第1の指標値が前記第1の閾値以下の場合、前記所定の操作がバッチ処理の操作であると判定することを特徴とする請求項3に記載のシステム分析支援プログラム。
The determination step includes
Among the plurality of predetermined periods, the second index value in a predetermined period in which the second index value is minimum is equal to or less than the second threshold value, and the predetermined period in which the second index value is minimum The system analysis support program according to claim 3, wherein when the first index value is equal to or less than the first threshold value, the predetermined operation is determined to be a batch processing operation.
前記コンピュータに、
前記各々の所定期間ごとに算出された第1および第2の指標値に基づいて、前記第1の指標値を表す軸と前記第2の指標値を表す軸とからなる座標系における回帰直線の傾きを算出する第3の算出工程を実行させ、
前記判定工程は、
前記第3の算出工程によって算出された前記回帰直線の傾きが第3の閾値以上の場合、前記所定の操作がバッチ処理の操作であると判定することを特徴とする請求項3に記載のシステム分析支援プログラム。
In the computer,
Based on the first and second index values calculated for each predetermined period, a regression line in a coordinate system including an axis representing the first index value and an axis representing the second index value A third calculation step for calculating the inclination is executed,
The determination step includes
The system according to claim 3, wherein when the slope of the regression line calculated by the third calculation step is equal to or greater than a third threshold, the predetermined operation is determined to be a batch processing operation. Analysis support program.
前記コンピュータに、
前記判定工程によって前記所定の操作がバッチ処理の操作であると判定された場合、前記メッセージ群の中から、前記所定の操作に関するメッセージを削除する削除工程と、
前記削除工程によって前記所定の操作に関するメッセージが削除された削除後の前記メッセージ群を出力するメッセージ出力工程と、
を実行させることを特徴とする請求項1〜5のいずれか一つに記載のシステム分析支援プログラム。
In the computer,
If the determination step determines that the predetermined operation is a batch processing operation, a deletion step of deleting a message related to the predetermined operation from the message group;
A message output step of outputting the message group after deletion in which the message related to the predetermined operation is deleted by the deletion step;
The system analysis support program according to claim 1, wherein the system analysis support program is executed.
プロトコルの階層構造が定義されたシステム内で受け渡されたメッセージ群の中から、前記システム内のデータベースを操作するためのプロトコルの直上層のプロトコルのリクエストとレスポンスのペアを検出する検出部と、
前記メッセージ群の中から、所定期間内に送信された、前記データベースに対する所定の操作に関するメッセージの集合を選択する選択部と、
前記選択部によって選択されたメッセージの集合のうち、前記検出部によって検出された1以上のペアのリクエスト時刻とレスポンス時刻の間に送信されたメッセージの割合を表す第1の指標値を算出する第1の算出部と、
前記所定期間のうち、前記1以上のペアのリクエスト時刻からレスポンス時刻までの期間が占める割合を表す第2の指標値を算出する第2の算出部と、
前記第1および第2の算出部によって算出された第1および第2の指標値に基づいて、前記所定の操作がバッチ処理の操作か否かを判定する判定部と、
前記判定部によって判定された判定結果を出力する出力部と、
を備えることを特徴とするシステム分析支援装置。
A detection unit for detecting a request and response pair of a protocol immediately above the protocol for operating the database in the system from among a group of messages passed in the system in which the hierarchical structure of the protocol is defined;
A selection unit that selects a set of messages related to a predetermined operation on the database, transmitted from the message group within a predetermined period;
A first index value representing a ratio of messages transmitted between the request time and the response time of one or more pairs detected by the detection unit in the set of messages selected by the selection unit; 1 calculation unit;
A second calculation unit that calculates a second index value representing a ratio of a period from the request time to the response time of the one or more pairs in the predetermined period;
A determination unit that determines whether or not the predetermined operation is a batch processing operation based on the first and second index values calculated by the first and second calculation units;
An output unit that outputs a determination result determined by the determination unit;
A system analysis support apparatus comprising:
コンピュータが、
プロトコルの階層構造が定義されたシステム内で受け渡されたメッセージ群の中から、前記システム内のデータベースを操作するためのプロトコルの直上層のプロトコルのリクエストとレスポンスのペアを検出し、
前記メッセージ群の中から、所定期間内に送信された、前記データベースに対する所定の操作に関するメッセージの集合を選択し、
選択したメッセージの集合のうち、検出した1以上のペアのリクエスト時刻とレスポンス時刻の間に送信されたメッセージの割合を表す第1の指標値を算出し、
前記所定期間のうち、前記1以上のペアのリクエスト時刻からレスポンス時刻までの期間が占める割合を表す第2の指標値を算出し、
算出した第1および第2の指標値に基づいて、前記所定の操作がバッチ処理の操作か否かを判定し、
判定した判定結果を出力する、
処理を実行することを特徴とするシステム分析支援方法。
Computer
From a group of messages passed in the system in which the protocol hierarchy is defined, a protocol request and response pair immediately above the protocol for operating the database in the system is detected,
From the group of messages, select a set of messages related to a predetermined operation on the database transmitted within a predetermined period,
Calculating a first index value representing a ratio of messages transmitted between the request time and the response time of one or more detected pairs of the selected set of messages;
A second index value representing a ratio of a period from the request time to the response time of the one or more pairs in the predetermined period is calculated;
Based on the calculated first and second index values, it is determined whether the predetermined operation is a batch processing operation,
Output the result of the judgment.
A system analysis support method characterized by executing processing.
JP2011010294A 2011-01-20 2011-01-20 System analysis support program, system analysis support device, and system analysis support method Active JP5561182B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011010294A JP5561182B2 (en) 2011-01-20 2011-01-20 System analysis support program, system analysis support device, and system analysis support method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011010294A JP5561182B2 (en) 2011-01-20 2011-01-20 System analysis support program, system analysis support device, and system analysis support method

Publications (2)

Publication Number Publication Date
JP2012150733A JP2012150733A (en) 2012-08-09
JP5561182B2 true JP5561182B2 (en) 2014-07-30

Family

ID=46792905

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011010294A Active JP5561182B2 (en) 2011-01-20 2011-01-20 System analysis support program, system analysis support device, and system analysis support method

Country Status (1)

Country Link
JP (1) JP5561182B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6273866B2 (en) * 2014-01-29 2018-02-07 富士通株式会社 Control program, control device, and control method
US9992232B2 (en) 2016-01-14 2018-06-05 Cisco Technology, Inc. Policy block creation with context-sensitive policy line classification

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4416626B2 (en) * 2004-11-02 2010-02-17 富士通株式会社 Processing time calculation program
US7996515B2 (en) * 2005-06-15 2011-08-09 Bmc Software, Inc. Network transaction discovery
US20100017486A1 (en) * 2008-07-16 2010-01-21 Fujitsu Limited System analyzing program, system analyzing apparatus, and system analyzing method

Also Published As

Publication number Publication date
JP2012150733A (en) 2012-08-09

Similar Documents

Publication Publication Date Title
US9672255B2 (en) Social media impact assessment
EP2289007B1 (en) Search results ranking using editing distance and document information
WO2020164276A1 (en) Webpage data crawling method, apparatus and system, and computer-readable storage medium
EP3566191A1 (en) Master view of tasks
WO2013183115A1 (en) Log management system and program
WO2014107441A2 (en) Social media impact assessment
US9164980B2 (en) Name identification rule generating apparatus and name identification rule generating method
US20100017486A1 (en) System analyzing program, system analyzing apparatus, and system analyzing method
TW201421395A (en) System and method for recursively traversing the internet and other sources to identify, gather, curate, adjudicate, and qualify business identity and related data
JP2010515996A (en) Method for providing search results and system for performing the method
CN108475320A (en) Query pattern and associated aggregate statistics are identified in search inquiry
JP2016100005A (en) Reconcile method, processor and storage medium
JP2007193685A (en) Program for displaying personal connection information, recording medium with the program recorded thereon, device for displaying personal connection information, and method for displaying personal connection information
JP2009069899A (en) Object document creation system
JP2012073812A (en) Data analysis support system and method
Lee et al. An adaptive website system to improve efficiency with web mining techniques
JP5561182B2 (en) System analysis support program, system analysis support device, and system analysis support method
Macgregor Improving the discoverability and web impact of open repositories: techniques and evaluation
JP2008176758A (en) System, method, and program for displaying group relationship
US8326977B2 (en) Recording medium storing system analyzing program, system analyzing apparatus, and system analyzing method
Yu et al. Prediction of web user behavior by discovering temporal relational rules from web log data
JP5315726B2 (en) Information providing method, information providing apparatus, and information providing program
US9824140B2 (en) Method of creating classification pattern, apparatus, and recording medium
Li et al. Discovering associations between news and contents in social network sites with the D-Miner service framework
JP5031416B2 (en) Search method and search device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20131007

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140418

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140526

R150 Certificate of patent or registration of utility model

Ref document number: 5561182

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150