JP6568502B2 - Configuration applicability determination device and distributed configuration evaluation method - Google Patents

Configuration applicability determination device and distributed configuration evaluation method Download PDF

Info

Publication number
JP6568502B2
JP6568502B2 JP2016156339A JP2016156339A JP6568502B2 JP 6568502 B2 JP6568502 B2 JP 6568502B2 JP 2016156339 A JP2016156339 A JP 2016156339A JP 2016156339 A JP2016156339 A JP 2016156339A JP 6568502 B2 JP6568502 B2 JP 6568502B2
Authority
JP
Japan
Prior art keywords
access
key
distribution
input signal
signal
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
JP2016156339A
Other languages
Japanese (ja)
Other versions
JP2018025911A (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2016156339A priority Critical patent/JP6568502B2/en
Publication of JP2018025911A publication Critical patent/JP2018025911A/en
Application granted granted Critical
Publication of JP6568502B2 publication Critical patent/JP6568502B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、構成適用可否判断装置および分散構成評価方法に関する。   The present invention relates to a configuration applicability determination device and a distributed configuration evaluation method.

クライアント・サーバ型信号処理システムおよびトランザクション処理システム(以下、トランザクション処理システムという)では、クライアントから処理サーバへと信号処理要求およびトランザクション処理要求(以下、トランザクションの要求という)が送信されると、処理サーバがその処理を行い、その結果を応答信号としてクライアントへと返信する。そして、複数の処理サーバが協調して動作する分散処理システムとすることで、クライアントの台数増加に対応する。そして、分散処理システムのロードバランサは、クライアントからそれぞれ発行される要求信号(リクエスト)に対して、単一の出入り口として受け付けると、それらの要求信号を複数の処理サーバにそれぞれ分配する。   In a client / server type signal processing system and a transaction processing system (hereinafter referred to as a transaction processing system), when a signal processing request and a transaction processing request (hereinafter referred to as a transaction request) are transmitted from a client to a processing server, the processing server Performs the process, and returns the result to the client as a response signal. And it can respond to the increase in the number of clients by setting it as the distributed processing system in which a some processing server cooperates. When the load balancer of the distributed processing system accepts request signals (requests) issued from clients as a single gateway, the load balancer distributes the request signals to a plurality of processing servers.

ロードバランサが要求された処理を振り分ける手法としては、コンシステント・ハッシングを挙げることができる。コンシステント・ハッシングは、データの保管要求と取得要求のみを受け付ける単純なインタフェースを持ち、受信した信号の要求するデータの識別子を見て、複数のサーバのうち何れのサーバが対象のデータを管理しているかを特定し、このサーバに対して保管要求及び取得要求を振り分けることを行う。
クライアント/サーバ型のアプリケーション(以下、APLという)を分散型システムで構成する場合、使用するロードバランサの方式に応じて、大きくは下記2通りの方法がある。
As a technique for distributing the requested processing by the load balancer, there is consistent hashing. Consistent hashing has a simple interface that accepts only data storage requests and data acquisition requests. By looking at the identifier of the data requested by the received signal, any of the servers manages the target data. And the storage request and the acquisition request are distributed to this server.
When a client / server type application (hereinafter referred to as APL) is configured in a distributed system, there are roughly the following two methods according to the load balancer method used.

図7は、ロードバランサの方式を説明する図であり、(a)は信号内容非依存なロードバランサの説明図、(b)は信号内容依存なロードバランサの説明図である。
図7(a)に示す信号内容非依存なロードバランサ10は、例えばレイヤー4(L4)以下の負荷分散が可能である。信号内容非依存なロードバランサ10は、例えばラウンドロビン、最小応答サーバ選択方式のロードバランサである。信号内容非依存なロードバランサ10は、IPアドレスによる負荷分散、10〜2000Mbpsの帯域から選択、標準で冗長化構成ができる特徴がある。また、安価で容易に導入が可能であり、サーバ保守、パッチ適用などのメンテナンス作業は不要、IPv6での通信が可能という特徴がある。
図7(a)に示すように、信号内容非依存なロードバランサ10は、クライアント1a〜1cの要求信号を各APLサーバ2a〜2cに振り分ける。各APLサーバ2a〜2cは、各DBサーバ3a〜3cとDBアクセスを行い、必要なデータを得る。図7(a)の破線で囲み部分は、APLサーバとDBサーバとが同一物理サーバに配置されていることを示している。図7(a)の場合、APLサーバ2aとDBサーバ3aとが同一物理サーバに配置されている。APLサーバ2a〜2cとDBサーバ3a〜3cは、仮想化により、同一物理サーバに配置できるが、必要なデータが同一物理サーバにあるとは限らない。必要なデータが同一物理サーバにない場合、応答性能が劣化する。
7A and 7B are diagrams for explaining a load balancer system. FIG. 7A is an explanatory diagram of a load balancer that is independent of signal content, and FIG. 7B is an explanatory diagram of a load balancer that is dependent on signal content.
The load balancer 10 independent of the signal content shown in FIG. 7A is capable of load distribution at, for example, layer 4 (L4) or lower. The signal content-independent load balancer 10 is, for example, a load balancer of a round robin, minimum response server selection method. The load balancer 10 that is independent of the signal content is characterized by load distribution by IP address, selection from a bandwidth of 10 to 2000 Mbps, and a redundant configuration as standard. Further, it is inexpensive and can be easily introduced, and maintenance work such as server maintenance and patch application is not required, and communication using IPv6 is possible.
As shown in FIG. 7A, the load balancer 10 independent of the signal contents distributes the request signals of the clients 1a to 1c to the APL servers 2a to 2c. Each APL server 2a-2c performs DB access with each DB server 3a-3c and obtains necessary data. A portion surrounded by a broken line in FIG. 7A indicates that the APL server and the DB server are arranged on the same physical server. In the case of FIG. 7A, the APL server 2a and the DB server 3a are arranged on the same physical server. The APL servers 2a to 2c and the DB servers 3a to 3c can be arranged on the same physical server by virtualization, but the necessary data is not always on the same physical server. If the necessary data is not in the same physical server, response performance is degraded.

ところで、信号処理において何らかのステート情報をDBサーバに格納する必要のあるステートフル(stateful)なAPLを用いた分散システムを構成する場合がある。このステートフルAPLの分散システムは、例えばSIP(Session Initiation Protocol)サーバ、eコマース用Webシステムがあり、DBサーバへのアクセスパターンが応答性能(スループット/レイテンシ)に影響を与える。ステートフルAPLの分散システムでは、下記信号内容依存構成のロードバランサが用いられる。   By the way, there is a case where a distributed system using a stateful APL that needs to store some state information in a DB server in signal processing may be configured. The distributed system of the stateful APL includes, for example, a SIP (Session Initiation Protocol) server and an e-commerce Web system, and an access pattern to the DB server affects response performance (throughput / latency). In a distributed system of stateful APL, a load balancer having the following signal content dependent configuration is used.

図7(b)に示す信号内容依存なロードバランサ20は、レイヤー7(L7)の負荷分散が可能である。この信号内容依存なロードバランサ20は、例えばURLやHTTPヘッダに基づくバランシングが可能である。この信号内容依存なロードバランサ20は、10Mbps〜2Gbpsの帯域から選択可能である。
図7(b)に示すように、信号内容依存なロードバランサ20は、APLサーバからのDBアクセスが同一物理サーバ内(図7(b)の破線囲み部分)に閉じるように信号を振り分けられれば、応答性能を向上させることが可能となる。すなわち、信号内容依存なロードバランサ20は、APLサーバ/DBサーバ間のDBアクセスを同一物理サーバ内に限定できれば、応答性能の向上(スループット向上、レイテンシ/ジッター低減)が可能となる。
The load balancer 20 depending on the signal content shown in FIG. 7B is capable of load distribution of the layer 7 (L7). The load balancer 20 depending on the signal content can be balanced based on, for example, a URL or an HTTP header. The load balancer 20 depending on the signal content can be selected from a band of 10 Mbps to 2 Gbps.
As shown in FIG. 7B, the load balancer 20 that depends on the signal content can distribute the signal so that the DB access from the APL server is closed within the same physical server (the portion surrounded by the broken line in FIG. 7B). The response performance can be improved. In other words, if the load balancer 20 depending on the signal content can limit the DB access between the APL server / DB server to the same physical server, the response performance can be improved (throughput improvement, latency / jitter reduction).

特許文献1には、処理サーバが、要求信号を受信してトランザクションの処理を実行し、その実行によってグループ化された複数の関連するトランザクションの構成変更を行うときに、第1対応データによって対応付けられている配置IDとトランザクションとの対応関係を変更する分散処理装置が記載されている。特許文献1に記載の分散処理装置は、変更された対応関係の配置IDから第2対応データによって対応付けられている処理サーバに接続されるデータ管理装置へと、変更前の処理サーバに接続されるデータ管理装置から、トランザクションのデータを移動することを特徴とする。   In Patent Literature 1, when a processing server receives a request signal, executes a transaction process, and performs configuration change of a plurality of related transactions grouped by the execution, the first correspondence data associates A distributed processing device is described that changes the correspondence between the arranged ID and the transaction. The distributed processing device described in Patent Literature 1 is connected to the processing server before the change from the changed arrangement ID of the correspondence relationship to the data management device connected to the processing server associated with the second correspondence data. The transaction data is moved from the data management device.

特開2012−160075号公報JP 2012-160075 A

上述したように、信号内容依存なロードバランサは、振り分けた時に、振り分け先のAPLサーバにつながっているDBサーバに、信号処理に必要なデータが揃っていることが必要となる。
また、信号内容依存なロードバランサは、APLサーバ−DBサーバ間のアクセスが同一物理サーバ内とするためには、APLについては下記条件を満たす必要がある。
(1)信号とその処理に必要なデータをグルーピング(例えば1:1対応)できること。
(2)上記(1)において、信号中に含まれる情報をキー(振り分けキー)として、信号をグルーピングできること。信号内容依存なロードバランサは、上記振り分けキーに基づいて信号を振り分けるからである。
(3)上記(1)において、サーバ負荷均等化のため、データ群のデータサイズおよびアクセス頻度が概ね均等であること。
As described above, when a load balancer that depends on signal contents is distributed, it is necessary that the DB server connected to the distribution destination APL server has data necessary for signal processing.
In addition, the load balancer that depends on the signal contents needs to satisfy the following conditions for APL in order for the access between the APL server and the DB server to be within the same physical server.
(1) A signal and data necessary for its processing can be grouped (for example, 1: 1 correspondence).
(2) In (1) above, signals can be grouped using information contained in the signal as a key (distribution key). This is because a signal balance dependent load balancer distributes signals based on the distribution key.
(3) In (1) above, the data size and access frequency of the data group are substantially equal for the purpose of equalizing the server load.

図8は、信号内容依存なロードバランサの適用可否判断を説明する図であり、(a)は信号内容依存なロードバランサが適用可の場合を示し、(b)は信号内容依存なロードバランサが適用不適の場合を示す。
図8(b)に示すように、信号群A,B,C,…がデータ群X,Y,Z,Wをアクセスする場合、多くの信号群A,B,C,…がデータ群Wをアクセスする。上記(3)を満たさないため、サーバ負荷均等化の観点から、信号内容依存なロードバランサ(信号内容依存構成)は、適用不適である。
一方、図8(a)に示すように、信号群A,B,C,…がデータ群X,Y,Zをアクセスする場合、信号群A,B,C,…はデータ群X,Y,Zに対し、データ群X,Y,Zのデータサイズおよびアクセス頻度が概ね均等である。この場合、信号内容依存なロードバランサ(信号内容依存構成)は、適用可である。具体的には、信号とアクセスデータのグルーピングが可能であり、このグループ単位で信号をサーバに振り分ければよい。
FIG. 8 is a diagram for explaining whether or not a signal content-dependent load balancer can be applied. (A) shows a case where a signal content-dependent load balancer is applicable, and (b) shows a signal content-dependent load balancer. Indicates the case of inappropriate application.
As shown in FIG. 8B, when the signal groups A, B, C,... Access the data groups X, Y, Z, W, many signal groups A, B, C,. to access. Since the above (3) is not satisfied, a load balancer that depends on signal content (signal content dependent configuration) is inappropriate for application from the viewpoint of server load equalization.
On the other hand, as shown in FIG. 8A, when the signal groups A, B, C,... Access the data groups X, Y, Z, the signal groups A, B, C,. The data size and access frequency of the data groups X, Y, and Z are substantially equal to Z. In this case, a signal content dependent load balancer (signal content dependent configuration) is applicable. Specifically, signal and access data can be grouped, and signals may be distributed to servers in units of groups.

しかしながら、信号内容依存構成の適用可否判断や信号の振り分けキーの選定が困難な場合がある。例えば、開発済みプロダクト等の分散システム化を行う場合など、仕様の無理解や動作条件解析の困難性等に起因して、信号内容依存構成の適用可否判断や信号の振り分けキーの選定が困難な場合がある。適用条件のない信号内容非依存バランサ構成を安易に採用すると、システムの性能が劣化する。   However, it may be difficult to determine whether the signal content-dependent configuration is applicable or to select a signal distribution key. For example, it is difficult to determine the applicability of a signal content-dependent configuration and to select a signal distribution key due to ununderstood specifications or difficulty in analyzing operating conditions, such as when developing a distributed system for developed products. There is a case. If a signal content-independent balancer configuration without application conditions is easily adopted, system performance deteriorates.

このような背景に鑑みて本発明がなされたのであり、本発明は、信号内容依存構成の適用可否判断と信号の振り分けキーの選定とを容易に行うことができる構成適用可否判断装置および分散構成評価方法を提供することを課題とする。   The present invention has been made in view of such a background, and the present invention provides a configuration applicability determination device and a distributed configuration capable of easily determining whether a signal content-dependent configuration is applicable and selecting a signal distribution key. It is an object to provide an evaluation method.

前記した課題を解決するため、請求項1に記載の発明は、クライアントからの入力信号を処理する処理サーバおよび当該処理サーバとDBアクセスを行うDBサーバが複数台存在し、それらの前記処理サーバに対して、前記入力信号の内容を基に、振り分ける処理サーバを決める構成適用可否判断装置であって、前記入力信号に共通的に含まれる、信号の振り分けキーとなり得る属性情報を抽出する信号属性抽出部と、前記DBアクセスのログに含まれるアクセス種別とDBアクセスキーを取得するDBアクセスログ取得部と、抽出した前記属性情報と、取得した前記アクセス種別と前記DBアクセスキーとを対応付けて、前記入力信号と前記DBアクセスの対応を示す入力信号/DBアクセス対応テーブルを作成する入力信号/DBアクセス対応付け部と、前記入力信号/DBアクセス対応テーブルの全レコードについて、前記アクセス種別を判定し、前記アクセス種別が「生成」である場合、前記DBアクセスキーと前記属性情報に基づく値を格納先サーバIDとみなして、その対応を示すDBアクセスキー格納先サーバテーブルを作成するDBアクセスキー格納先サーバ対応付け部と、前記入力信号/DBアクセス対応テーブルの全レコードについて、前記アクセス種別を判定し、前記アクセス種別が「読み出し」または「変更」である場合、当該DBアクセスキーに対応する格納先サーバIDと、前記DBアクセスを行う前記入力信号が振り分けられる振り分け先サーバIDとが一致するか否かを判定し、一致した場合、前記属性情報を振り分けキーとする信号内容依存構成は適用可と判定する構成適用可否判断部と、を備える構成適用可否判断装置とした。   In order to solve the above-described problem, the invention described in claim 1 includes a plurality of processing servers that process input signals from clients and a plurality of DB servers that perform DB access to the processing servers. On the other hand, a configuration applicability determination device that determines a processing server to be distributed based on the contents of the input signal, and that extracts attribute information that is commonly included in the input signal and that can serve as a signal distribution key A DB access log acquisition unit that acquires an access type and a DB access key included in the DB access log, the extracted attribute information, the acquired access type and the DB access key, Input signal / DB access for creating an input signal / DB access correspondence table showing correspondence between the input signal and the DB access The access type is determined for all records in the association unit and the input signal / DB access correspondence table, and when the access type is “generation”, a value based on the DB access key and the attribute information is stored. DB access key storage destination server associating unit that creates a DB access key storage destination server table indicating the correspondence, and determines the access type for all records of the input signal / DB access correspondence table. When the access type is “read” or “change”, whether or not the storage destination server ID corresponding to the DB access key matches the distribution destination server ID to which the input signal for performing the DB access is distributed. If the contents match, the signal content-dependent structure using the attribute information as a distribution key is used. Was configured applicability determination apparatus and a configuration application determination section determines that the applicability is.

また、請求項6に記載の発明は、クライアントからの入力信号を処理する処理サーバおよび当該処理サーバとDBアクセスを行うDBサーバが複数台存在し、それらの前記処理サーバに対して、前記入力信号の内容を基に、振り分ける処理サーバを決める構成適用可否判断装置の分散構成評価方法であって、前記構成適用可否判断装置は、前記入力信号に共通的に含まれる、信号の振り分けキーとなり得る属性情報を抽出する信号属性抽出ステップと、前記DBアクセスのログに含まれるアクセス種別とDBアクセスキーを取得するDBアクセスログ取得ステップと、抽出した前記属性情報と、取得した前記アクセス種別と前記DBアクセスキーとを対応付けて、前記入力信号と前記DBアクセスの対応を示す入力信号/DBアクセス対応テーブルを作成する入力信号/DBアクセス対応付けステップと、前記入力信号/DBアクセス対応テーブルの全レコードについて、前記アクセス種別を判定し、前記アクセス種別が「生成」である場合、前記DBアクセスキーと前記属性情報に基づく値を格納先サーバIDとみなして、その対応を示すDBアクセスキー格納先サーバテーブルを作成するDBアクセスキー格納先サーバ対応付けステップと、前記入力信号/DBアクセス対応テーブルの全レコードについて、前記アクセス種別を判定し、前記アクセス種別が「読み出し」または「変更」である場合、当該DBアクセスキーに対応する格納先サーバIDと、前記DBアクセスを行う前記入力信号が振り分けられる振り分け先サーバIDとが一致するか否かを判定し、一致した場合、前記属性情報を振り分けキーとする信号内容依存構成は適用可と判定する構成適用可否判断ステップと、を実行する分散構成評価方法とした。   The invention according to claim 6 includes a plurality of processing servers that process input signals from clients and a plurality of DB servers that perform DB access with the processing servers, and the input signals are sent to the processing servers. A configuration applicability determination device for determining a distribution processing server based on the contents of the method, wherein the configuration applicability determination device is an attribute that can be a signal distribution key that is commonly included in the input signal A signal attribute extraction step for extracting information, a DB access log acquisition step for acquiring an access type and a DB access key included in the DB access log, the extracted attribute information, the acquired access type and the DB access An input signal / DB access correspondence test indicating the correspondence between the input signal and the DB access in association with a key. The input signal / DB access association step for creating a table and the access type for all the records of the input signal / DB access correspondence table are determined. If the access type is “Generate”, the DB access key A value based on the attribute information is regarded as a storage destination server ID, a DB access key storage destination server association step for creating a DB access key storage destination server table indicating the correspondence, and all of the input signal / DB access correspondence table For the record, the access type is determined, and when the access type is “read” or “change”, the storage destination server ID corresponding to the DB access key and the input signal for performing the DB access are distributed When it is determined whether or not the destination server ID matches, The signal content dependent configuration to the attribute information distribution key was distributed configuration evaluation method for performing the configuration applicability determining step determines that the applicability, the.

このようにすることで、APL実装仕様を理解することなく、信号内容依存構成の適用可否を判断することができる。また、信号の振り分けキーの候補となる属性全てについて実行することで、「信号とその処理に必要なデータをグルーピング(1:1対応)できる」振り分けキーが存在するか判定することができる。また、サーバの負荷を均等化する最適な振り分けキー、つまりアクセス頻度やデータ量の偏りが最も小さくなる振り分けキーを決定(リコメンド)することができる。   By doing so, it is possible to determine whether or not the signal content dependent configuration can be applied without understanding the APL mounting specification. Further, by executing all the attributes that are candidates for the signal distribution key, it is possible to determine whether or not there is a distribution key that “groups the signals and data necessary for the processing (corresponds to 1: 1)”. Also, it is possible to determine (recommend) an optimal distribution key that equalizes the load on the server, that is, a distribution key that minimizes the deviation in access frequency and data amount.

また、請求項2に記載の発明は、前記構成適用可否判断部が、前記DBアクセスキーに対応する格納先サーバIDと、前記DBアクセスを行う前記入力信号が振り分けられる振り分け先サーバIDとが一致しない場合、前記属性情報を振り分けキーとする信号内容依存構成は適用不可と判定することを特徴とする。   In the invention according to claim 2, the configuration applicability determination unit matches a storage destination server ID corresponding to the DB access key with a distribution destination server ID to which the input signal for performing the DB access is distributed. Otherwise, it is determined that a signal content dependent configuration using the attribute information as a distribution key is not applicable.

このようにすることで、APL実装仕様を理解することなく、信号内容依存構成の適用不可を判断することができる。また、信号の振り分けキーの候補となる属性全てについて実行することで、「信号とその処理に必要なデータをグルーピング(1:1対応)できる」振り分けキーが存在するか判定することができる。   By doing so, it is possible to determine whether the signal content-dependent configuration is not applicable without understanding the APL mounting specification. Further, by executing all the attributes that are candidates for the signal distribution key, it is possible to determine whether or not there is a distribution key that “groups the signals and data necessary for the processing (corresponds to 1: 1)”.

また、請求項3に記載の発明は、信号内容依存構成の適用が可能な前記振り分けキーが2つ以上存在する場合は、前記処理サーバの負荷を均等化する最適振り分けキーを決定する最適振り分けキー決定部を備えることを特徴とする。   According to a third aspect of the present invention, when there are two or more distribution keys to which a signal content dependent configuration can be applied, an optimal distribution key for determining an optimal distribution key for equalizing the load on the processing server. A determination unit is provided.

このように、振り分けキーを処理サーバの負荷を均等化するように振り分けることで、最適振り分けキーで信号をグルーピングすることができ、処理サーバの負荷を均等化させることができる。   In this manner, by distributing the distribution key so as to equalize the load on the processing server, signals can be grouped with the optimal distribution key, and the load on the processing server can be equalized.

また、請求項4に記載の発明は、前記構成適用可否判断部が、前記入力信号/DBアクセス対応テーブルの全レコードについて、DBアクセスキーの格納先サーバIDとDBアクセスを行う信号の振り分け先サーバIDが一致する場合、該当振り分け先サーバIDのアクセス回数をカウントアップしてサーバ毎アクセス回数テーブルに格納し、前記最適振り分けキー決定部は、前記サーバ毎アクセス回数テーブルにおける前記アクセス回数の偏りをスコアとして保存する振り分けキースコアテーブルを有し、前記DBアクセスキー格納先サーバテーブルにあるすべての振り分けキー候補について、前記振り分けキースコアテーブルの前記スコアが最も低い振り分けキーを振り分けキーに決定することを特徴とする。   According to a fourth aspect of the present invention, the configuration applicability determination unit determines whether the DB access key storage destination server ID and the DB access destination server for all records in the input signal / DB access correspondence table. When the IDs match, the access count of the corresponding distribution destination server ID is counted up and stored in the access count table for each server, and the optimum allocation key determination unit scores the deviation of the access count in the access count table for each server A distribution key score table to be stored as, and for all distribution key candidates in the DB access key storage destination server table, the distribution key having the lowest score in the distribution key score table is determined as the distribution key. And

このように、DBアクセスキー格納先サーバテーブルにあるすべての振り分けキー候補について、スコアの最も低い振り分けキーを振り分けキーに決定することで、決定された振り分けキーで信号をグルーピングすることができ、データサイズおよびアクセス頻度を均等にし、処理サーバの負荷を均等化させることができる。   In this way, for all the distribution key candidates in the DB access key storage destination server table, by determining the distribution key with the lowest score as the distribution key, the signals can be grouped with the determined distribution key, and the data The size and access frequency can be equalized, and the load on the processing server can be equalized.

また、請求項5に記載の発明は、前記最適振り分けキー決定部が、前記振り分けキースコアテーブルにレコードが無い場合、信号内容依存構成は適用不可と判定することを特徴とする。   The invention according to claim 5 is characterized in that the optimum distribution key determination unit determines that the signal content dependent configuration is not applicable when there is no record in the distribution key score table.

このようにすることで、APL実装仕様を理解することなく、信号内容依存構成の適用不可を判断することができる。   By doing so, it is possible to determine whether the signal content-dependent configuration is not applicable without understanding the APL mounting specification.

本発明によれば、信号内容依存構成の適用可否判断と信号の振り分けキーの選定とを容易に行うことができる構成適用可否判断装置および分散構成評価方法を提供することができる。   According to the present invention, it is possible to provide a configuration applicability determination device and a distributed configuration evaluation method capable of easily determining whether a signal content-dependent configuration is applicable and selecting a signal distribution key.

本実施形態に係る構成適用可否判断装置が適用される分散システムを示す構成図である。1 is a configuration diagram illustrating a distributed system to which a configuration applicability determination device according to an embodiment is applied. 本発明の実施形態に係る構成適用可否判断装置の詳細構成を示すブロック図である。It is a block diagram which shows the detailed structure of the structure applicability determination apparatus which concerns on embodiment of this invention. 本実施形態に係る構成適用可否判断装置の入力信号/DBアクセス対応テーブル作成の概要を説明する図である。It is a figure explaining the outline | summary of the input signal / DB access corresponding | compatible table preparation of the structure applicability determination apparatus which concerns on this embodiment. 本実施形態に係る構成適用可否判断装置の信号内容依存構成の適用可否判定の概要を説明する図である。It is a figure explaining the outline | summary of the applicability determination of the signal content dependence structure of the structure applicability determination apparatus which concerns on this embodiment. 本実施形態に係る構成適用可否判断装置の信号内容依存構成適用可否判定および振り分けキー決定処理を示すフローチャートである。It is a flowchart which shows the signal content dependence structure applicability determination and distribution key determination processing of the structure applicability determination apparatus according to the present embodiment. 本実施形態に係る構成適用可否判断装置の信号内容依存構成適用可否判定および振り分けキー決定処理を示すフローチャートである。It is a flowchart which shows the signal content dependence structure applicability determination and distribution key determination processing of the structure applicability determination apparatus according to the present embodiment. ロードバランサの方式を説明する図であり、(a)は信号内容非依存なロードバランサの説明図、(b)は信号内容依存なロードバランサの説明図である。It is a figure explaining the system of a load balancer, (a) is explanatory drawing of the load balancer independent of signal content, (b) is explanatory drawing of the load balancer dependent on signal content. 信号内容依存なロードバランサの適用可否判断を説明する図であり、(a)は信号内容依存なロードバランサが適用可の場合の説明図、(b)は信号内容依存なロードバランサが適用不適の場合の説明図である。It is a figure explaining the applicability judgment of the load balancer depending on the signal content, (a) is an explanatory diagram when the load balancer depending on the signal content is applicable, (b) is an inappropriate application of the load balancer depending on the signal content It is explanatory drawing in the case.

以下、図面を参照して本発明を実施するための形態(以下、「本実施形態」という)における構成適用可否判断装置等について説明する。
図1は、本実施形態に係る構成適用可否判断装置が適用される分散システムを示す構成図である。
図1に示すように、構成適用可否判断装置100は、例えば信号内容依存なロードバランサに搭載される。処理システムは、クライアント1a〜1cと、ロードバランサ100(構成適用可否判断装置)と、分散システム30とがネットワークで接続されて構成される。分散システム30内は、APLサーバ2a〜2c(処理サーバ)と、DBサーバ3a〜3cと、から構成されている。クライアント1a〜1cを総称する場合は、クライアント1と呼ぶ。APLサーバ2a〜2cを特に区別しない場合にはAPLサーバ2と表記し、DBサーバ3a〜3cを特に区別しない場合にはDBサーバ3と表記する。
A configuration applicability determination device and the like in a mode for carrying out the present invention (hereinafter referred to as “the present embodiment”) will be described below with reference to the drawings.
FIG. 1 is a configuration diagram illustrating a distributed system to which the configuration applicability determination device according to the present embodiment is applied.
As shown in FIG. 1, the configuration applicability determination device 100 is mounted on, for example, a signal content-dependent load balancer. The processing system is configured by connecting clients 1a to 1c, a load balancer 100 (configuration applicability determination device), and a distributed system 30 via a network. The distributed system 30 includes APL servers 2a to 2c (processing servers) and DB servers 3a to 3c. The clients 1a to 1c are collectively referred to as the client 1. When the APL servers 2a to 2c are not particularly distinguished, they are expressed as APL servers 2, and when the DB servers 3a to 3c are not particularly distinguished, they are expressed as DB servers 3.

構成適用可否判断装置100は、クライアント1からの入力信号(要求信号)を処理するAPLサーバ2(処理サーバ)および当該処理サーバとDBアクセスを行うDBサーバ3が複数台存在するシステムにおいて、それらのAPLサーバ2に対して、入力信号の内容を基に、振り分けるAPLサーバ2を決める。   The configuration applicability determination device 100 is configured in a system including a plurality of APL servers 2 (processing servers) that process input signals (request signals) from the client 1 and DB servers 3 that perform DB access with the processing servers. Based on the content of the input signal, the APL server 2 to be distributed is determined for the APL server 2.

構成適用可否判断装置100は、分散システム30内の複数台のAPLサーバ2に処理を振り分けるロードバランサに適用した例を示したが、構成適用可否判断装置100は、分散システム30で動作するプログラムの一例としての分散処理ミドルウェアであってもよい。
なお、図1の分散システムを構成する各装置は、CPU(Central Processing Unit)とメモリとハードディスク(記憶手段)とネットワークインタフェースとを有するコンピュータとして構成され、このコンピュータは、CPUが、メモリ上に読み込んだプログラムを実行することにより、各処理部を動作させる。
また、図1の分散システムを構成する各装置の台数は、図1に例示した台数に限定されず、任意の台数としてもよい。
Although the configuration applicability determination device 100 has been applied to a load balancer that distributes processing to a plurality of APL servers 2 in the distributed system 30, the configuration applicability determination device 100 is a program that operates on the distributed system 30. As an example, distributed middleware may be used.
1 is configured as a computer having a CPU (Central Processing Unit), a memory, a hard disk (storage means), and a network interface. The computer reads the CPU onto the memory. Each processing unit is operated by executing the program.
Further, the number of devices constituting the distributed system in FIG. 1 is not limited to the number illustrated in FIG. 1 and may be an arbitrary number.

クライアント1は、ユーザの端末や対向システムであり、分散システム30のAPLサーバ2に対して、処理を要求する。構成適用可否判断装置(ロードバランサ)100は、クライアント1からの要求を受け、分散システム30内の複数台のAPLサーバ2のうちの1台を選択し、その選択したAPLサーバ2に処理を依頼する。
ここで、クライアント1からは、構成適用可否判断装置(ロードバランサ)100という出入り口を介して、分散システム30があたかも単一の装置で動作するシステムとして見えるため、分散システム30内の装置構成を柔軟に変更する(装置の追加や削除など)ことができる。
APLサーバ2は、構成適用可否判断装置(ロードバランサ)100からの要求を受け、複数台のDBサーバ3のうちの1台を選択し、その選択したDBサーバ3に処理を依頼する。DBサーバ3は、APLサーバ2からの要求を受け、APLサーバ2の要求を処理する。
The client 1 is a user terminal or an opposite system, and requests the APL server 2 of the distributed system 30 for processing. The configuration applicability determination device (load balancer) 100 receives a request from the client 1, selects one of the plurality of APL servers 2 in the distributed system 30, and requests the selected APL server 2 to perform processing. To do.
Here, since the distributed system 30 can be seen as a system that operates as a single device from the client 1 through the gateway of the configuration applicability determination device (load balancer) 100, the device configuration in the distributed system 30 can be flexibly configured. Can be changed (addition or deletion of devices).
The APL server 2 receives a request from the configuration applicability determination device (load balancer) 100, selects one of the plurality of DB servers 3, and requests the selected DB server 3 to perform processing. The DB server 3 receives a request from the APL server 2 and processes the request from the APL server 2.

図2は、構成適用可否判断装置100の詳細構成を示すブロック図である。
図2に示すように、構成適用可否判断装置100は、入力信号属性抽出部110と、DBアクセスログ取得部120と、入力信号/DBアクセス対応付け部130と、振り分けキー処理実行部140と、DBアクセスキー格納先サーバ対応付け部150と、構成適用可否判断部160と、最適振り分けキー決定部170と、を備える。
FIG. 2 is a block diagram illustrating a detailed configuration of the configuration applicability determination device 100.
As shown in FIG. 2, the configuration applicability determination device 100 includes an input signal attribute extraction unit 110, a DB access log acquisition unit 120, an input signal / DB access association unit 130, a distribution key process execution unit 140, A DB access key storage destination server associating unit 150, a configuration applicability determination unit 160, and an optimum distribution key determination unit 170 are provided.

<入力信号属性抽出部110>
入力信号属性抽出部110は、入力信号ログ(パケットキャプチャ)101(図3(a)参照)から入力信号に共通的に含まれる、信号の振り分けキーとなり得る属性情報を抽出する。入力信号ログ101の詳細については、図3(a)で後記する。
<Input signal attribute extraction unit 110>
The input signal attribute extraction unit 110 extracts attribute information that can be a signal distribution key, which is commonly included in the input signal, from the input signal log (packet capture) 101 (see FIG. 3A). Details of the input signal log 101 will be described later with reference to FIG.

<DBアクセスログ取得部120>
DBアクセスログ取得部120は、入力信号ログ101を基に、各入力信号を一つずつ順にAPLに入力することで、入力信号単位のDB(KVS(Key-Value Store)型DBを想定)のDBアクセスログ102(図3(b)参照)を取得する。KVS型DBのアクセスは、CRUDの4パターン、すなわちCreate(生成)、Read(読み出し)、Update(変更)、Delete(削除)である。DBアクセスログ取得部120は、DBアクセスログ102に含まれるアクセス種別とDBアクセスキー(図3(b)参照)を取得する。DBアクセスログ102の詳細については、図3(b)で後記する。
<DB access log acquisition unit 120>
Based on the input signal log 101, the DB access log acquisition unit 120 inputs each input signal to the APL one by one in order, so that an input signal unit DB (KVS (Key-Value Store) type DB is assumed). The DB access log 102 (see FIG. 3B) is acquired. Access to the KVS DB is four CRUD patterns, that is, Create (create), Read (read), Update (change), and Delete (delete). The DB access log acquisition unit 120 acquires an access type and a DB access key (see FIG. 3B) included in the DB access log 102. Details of the DB access log 102 will be described later with reference to FIG.

<入力信号/DBアクセス対応付け部130>
入力信号/DBアクセス対応付け部130は、入力信号属性抽出部110で抽出した各入力信号の属性情報と、DBアクセスログ取得部120で取得したDBアクセスログ102とに基づいて、入力信号とDBアクセスとの対応関係を保持する入力信号/DBアクセス対応テーブル200(表1参照)を作成する。
詳細には、入力信号/DBアクセス対応付け部130は、複数の属性情報を含む入力信号ログ101と、Create(生成)、Read(読み出し)、Update(変更)、Delete(削除)のいずれかのアクセス種別およびDBアクセスキーを含むDBアクセスログ102とに基づいて、属性情報とアクセス種別とDBアクセスキーとを対応付けて、入力信号とDBアクセスの対応を示す入力信号/DBアクセス対応テーブル200(表1参照)を作成する。入力信号/DBアクセス対応テーブル200の作成の詳細については、図3(c)で後記する。
<Input signal / DB access association unit 130>
Based on the attribute information of each input signal extracted by the input signal attribute extraction unit 110 and the DB access log 102 acquired by the DB access log acquisition unit 120, the input signal / DB access association unit 130 An input signal / DB access correspondence table 200 (see Table 1) that holds the correspondence with access is created.
Specifically, the input signal / DB access associating unit 130 includes an input signal log 101 including a plurality of attribute information and any one of Create, Read, Update, and Delete. Based on the DB access log 102 including the access type and DB access key, the attribute information, the access type, and the DB access key are associated with each other, and the input signal / DB access correspondence table 200 indicating the correspondence between the input signal and the DB access ( (See Table 1). Details of creation of the input signal / DB access correspondence table 200 will be described later with reference to FIG.

Figure 0006568502
Figure 0006568502

表1は、入力信号/DBアクセス対応テーブル200を示す表である。入力信号/DBアクセス対応テーブル200は、入力信号/DBアクセス対応付け部130に格納される。
入力信号/DBアクセス対応テーブル200は、入力信号から抽出した情報である「入力信号」と、「入力信号」に対応するDBアクセスである「DBアクセス」とを対応付ける表である。表1において「入力信号」は、入力信号Noと、入力信号No毎の信号内容(属性とその内容)からなる。入力信号Noは、例えば入力信号No.1〜No.3であり、それぞれ属性1〜3とその内容aaa,bbb,ccc,…を有する。例えば、入力信号No.1は、信号内容として属性1(例えば、セッションID)、属性2(例えば、ユーザ名)、属性3(例えば、宛先IPアドレス)である。一方、表1において「DBアクセス」は、アクセス種別と、対象キーと、からなる。対象キーは、例えばKey_X, Key_Yである。
Table 1 is a table showing the input signal / DB access correspondence table 200. The input signal / DB access correspondence table 200 is stored in the input signal / DB access association unit 130.
The input signal / DB access correspondence table 200 is a table associating “input signals”, which is information extracted from input signals, with “DB accesses”, which are DB accesses corresponding to “input signals”. In Table 1, “input signal” includes an input signal No and signal contents (attributes and contents) for each input signal No. The input signal No is, for example, input signals No. 1 to No. 3 and has attributes 1 to 3 and their contents aaa, bbb, ccc,. For example, the input signal No. 1 has attribute 1 (for example, session ID), attribute 2 (for example, user name), and attribute 3 (for example, destination IP address) as signal contents. On the other hand, “DB access” in Table 1 includes an access type and a target key. The target key is, for example, Key_X, Key_Y.

表1において、入力信号No.1の属性1の信号内容aaaおよび属性2の信号内容bbbが、「DBアクセス」のアクセス種別Createかつ対象キーKey_Xに対応付けられている。また、入力信号No.1の属性2の信号内容bbbおよび属性3の信号内容cccが、「DBアクセス」のアクセス種別Createかつ対象キーKey_Yに対応付けられている。したがって、入力信号No.1の属性2の信号内容bbbは、「DBアクセス」のアクセス種別Createかつ対象キーKey_XとKey_Yの両方に対応付けられている。
また、表1において、入力信号No.2の属性1の信号内容dddおよび属性2の信号内容eeeが、「DBアクセス」のアクセス種別Readかつ対象キーKey_Xに対応付けられている。入力信号No.2の属性2の信号内容eeeおよび属性3の信号内容fffが、「DBアクセス」のアクセス種別Update かつ対象キーKey_Xに対応付けられている。したがって、入力信号No.2の属性2の信号内容eeeが、「DBアクセス」のアクセス種別Readかつ対象キーKey_Xに対応付けられる一方、「DBアクセス」のアクセス種別Update かつ対象キーKey_Xにも対応付けられている。
同様に、表1において、入力信号No.3の属性1〜3の信号内容ggg,hhh,iiiについて、属性1の信号内容gggおよび属性2の信号内容hhhが、「DBアクセス」のアクセス種別Createかつ対象キーKey_Zに対応付けられ、また、属性2の信号内容hhhおよび属性3の信号内容iiiが、「DBアクセス」のアクセス種別Update かつ対象キーKey_Yに対応付けられている。
In Table 1, the signal content aaa of attribute 1 and the signal content bbb of attribute 2 of the input signal No. 1 are associated with the access type Create and the target key Key_X of “DB access”. In addition, the signal content bbb of attribute 2 and the signal content ccc of attribute 3 of the input signal No. 1 are associated with the access type Create of “DB access” and the target key Key_Y. Therefore, the signal content bbb of attribute 2 of the input signal No. 1 is associated with both the access type Create of “DB access” and the target keys Key_X and Key_Y.
Also, in Table 1, the signal content ddd of attribute 1 and the signal content eee of attribute 2 of the input signal No. 2 are associated with the access type Read of “DB access” and the target key Key_X. The signal content eee of attribute 2 and the signal content fff of attribute 3 of the input signal No. 2 are associated with the access type Update of “DB access” and the target key Key_X. Accordingly, the signal content eee of the attribute 2 of the input signal No. 2 is associated with the access type Read of “DB access” and the target key Key_X, and is also associated with the access type Update of “DB access” and the target key Key_X. It has been.
Similarly, in Table 1, with respect to the signal contents ggg, hhh, and iii of the attributes 1 to 3 of the input signal No. 3, the attribute 1 signal contents ggg and the attribute 2 signal contents hhh are “DB access” access type Create. In addition, the signal content hhh of the attribute 2 and the signal content iii of the attribute 3 are associated with the access type Update of “DB access” and the target key Key_Y.

なお、表1は、入力信号/DBアクセス対応テーブル200をイメージ図で示したものであり、実際には、表形式で表現しきれない対応関係もテーブルデータとして関連付けられている。例えば入力信号No.1の属性1の信号内容aaaと属性3の信号内容cccとが「DBアクセス」のアクセス種別Createかつ対象キーKey_XまたはKey_Yに対応付けられることも有り得る。   Table 1 shows the input signal / DB access correspondence table 200 as an image diagram. In reality, correspondence relationships that cannot be expressed in tabular form are also associated as table data. For example, the signal content aaa of the attribute 1 and the signal content ccc of the attribute 3 of the input signal No. 1 may be associated with the access type Create of “DB access” and the target key Key_X or Key_Y.

<振り分けキー処理実行部140>
振り分けキー処理実行部140は、作成された入力信号/DBアクセス対応テーブル200(表1参照)を基に、入力信号/DBアクセス対応テーブル200にあるすべての振り分けキー候補について、振り分けキー処理(後記図5および図6参照)を実行させる。
<Distribution key process execution unit 140>
Based on the created input signal / DB access correspondence table 200 (see Table 1), the distribution key process execution unit 140 assigns a distribution key process (described later) to all the distribution key candidates in the input signal / DB access correspondence table 200. (See FIGS. 5 and 6).

<DBアクセスキー格納先サーバ対応付け部150>
DBアクセスキー格納先サーバ対応付け部150は、DBアクセスログ102のアクセス種別がCreate(生成)である場合、DBアクセスキーと、入力信号の属性情報のハッシュ値を格納先サーバIDとみなして、その対応を示すDBアクセスキー格納先サーバテーブル210(表2参照)を作成する。
<DB access key storage destination server association unit 150>
When the access type of the DB access log 102 is Create (generation), the DB access key storage destination server association unit 150 regards the DB access key and the hash value of the attribute information of the input signal as the storage destination server ID, A DB access key storage destination server table 210 (see Table 2) indicating the correspondence is created.

Figure 0006568502
Figure 0006568502

表2は、DBアクセスキー格納先サーバテーブル210の一例を示す表である。
DBアクセスキー格納先サーバテーブル210は、「DBアクセスキー」と「格納先サーバID」とを対応付ける表である。「DBアクセスキー」は、前記表1の「DBアクセス」の対象キーである。「格納先サーバID」は、振り分け先の物理サーバIDである。例えば、前記表1において、入力信号No.1のアクセス種別Createかつ対象キーKey_Xが、DBアクセスキー格納先サーバテーブル210(表2参照)の「DBアクセスキー」に格納されている。DBアクセスキー格納先サーバテーブル210は、「DBアクセスキー」と「格納先サーバID」とを対応付ける表であり、ここでは、表2の「DBアクセスキー」のKey_Xは「格納先サーバID」(Hash(“aaa”)=a1b2c3)に対応付けられている。これにより、表2の「DBアクセスキー」のKey_Xを基に、振り分け先の物理サーバIDのa1b2c3を読み出すことができる。
Table 2 is a table showing an example of the DB access key storage destination server table 210.
The DB access key storage destination server table 210 is a table associating “DB access keys” with “storage destination server IDs”. “DB access key” is a target key of “DB access” in Table 1. The “storage destination server ID” is the physical server ID of the distribution destination. For example, in Table 1, the access type Create and the target key Key_X of the input signal No. 1 are stored in the “DB access key” of the DB access key storage destination server table 210 (see Table 2). The DB access key storage destination server table 210 is a table associating “DB access key” with “storage destination server ID”. Here, Key_X of “DB access key” in Table 2 is “storage destination server ID” ( Hash (“aaa”) = a1b2c3). Thereby, based on Key_X of “DB access key” in Table 2, it is possible to read a1b2c3 of the physical server ID of the distribution destination.

また、前記表1において、入力信号毎の信号内容とアクセス種別とその対象キーが、表2の「DBアクセスキー」に格納されることから、表2において、表2の「DBアクセスキー」と「格納先サーバID」とを対とする組み合わせ同士を照合することで、振り分けキーとする信号内容依存構成の適用の可否を判定することができる。例えば、前記表1において、入力信号毎の信号内容を属性1で振り分ける場合、入力信号No.2のアクセス種別Readかつ対象キーKey_Xに対応付けられた振り分け先サーバID:Hash(“ddd”)=b2c4d6(表2では不図示)が、表2の対象キーKey_Xに対応付けられた振り分け先サーバID:a1b2c3とは不一致である。両者不一致のため、属性1を振り分けキーとする信号内容依存構成は適用不可と判定することができる(詳細は後記する)。   In Table 1, since the signal content, access type, and target key for each input signal are stored in “DB access key” in Table 2, “DB access key” in Table 2 By collating combinations that are paired with the “storage destination server ID”, it is possible to determine whether or not the signal content-dependent configuration as the distribution key can be applied. For example, in Table 1 above, when the signal content for each input signal is distributed by the attribute 1, the distribution destination server ID associated with the access type Read of the input signal No. 2 and the target key Key_X: Hash (“ddd”) = b2c4d6 (not shown in Table 2) does not match the distribution destination server ID: a1b2c3 associated with the target key Key_X in Table 2. Since the two do not match, it is possible to determine that the signal content-dependent configuration using attribute 1 as the distribution key is not applicable (details will be described later).

<構成適用可否判断部160>
構成適用可否判断部160は、DBアクセスログ102のアクセス種別を判定し、アクセス種別がRead(読み出し)/Update(変更)/Delete(削除)である場合、当該DBアクセスキーに対応する格納先サーバIDと、DBアクセスを行う入力信号が振り分けられる振り分け先サーバIDとが一致するか否かを判定し、一致した場合、属性情報を振り分けキーとする信号内容依存構成は適用可と判定する。具体的には、構成適用可否判断部160は、DBアクセスログ102のアクセス種別がRead/Update/Delete である場合、DBアクセスキー格納先サーバテーブル210(表2参照)に格納されたDBアクセスキーに対応する格納先サーバIDと、入力信号の属性情報のハッシュ値が一致したとき、その属性情報を振り分けキーに決定する。
また、構成適用可否判断部160は、DBアクセスキーに対応する格納先サーバIDと、DBアクセスを行う入力信号が振り分けられる振り分け先サーバIDとが一致しない場合、属性情報を振り分けキーとする信号内容依存構成は適用不可と判定する。
このように、構成適用可否判断部160は、振り分けキーの候補について、振り分けキーで振り分けを行った場合に、DBアクセスキーが作成されるサーバと当該DBアクセスキーをRead/Update/Deleteする信号が振り分けられるサーバが同一となるか否かを、入力信号/DBアクセス対応付け部130で作成したテーブルの全レコードに対して検証することで、信号内容依存構成の適用が可能か否かを判定する。
<Configuration Applicability Determination Unit 160>
The configuration applicability determination unit 160 determines the access type of the DB access log 102, and when the access type is Read (read) / Update (change) / Delete (deletion), the storage destination server corresponding to the DB access key It is determined whether or not the ID matches a distribution destination server ID to which an input signal for performing DB access is distributed. If they match, it is determined that a signal content dependent configuration using attribute information as a distribution key is applicable. Specifically, when the access type of the DB access log 102 is Read / Update / Delete, the configuration applicability determination unit 160 stores the DB access key stored in the DB access key storage destination server table 210 (see Table 2). When the hash value of the attribute information of the input signal matches the storage destination server ID corresponding to, the attribute information is determined as a distribution key.
Further, the configuration applicability determination unit 160, when the storage destination server ID corresponding to the DB access key does not match the distribution destination server ID to which the input signal for performing DB access is distributed does not match the signal content using the attribute information as the distribution key It is determined that the dependency configuration is not applicable.
As described above, the configuration applicability determination unit 160, when sorting with a sorting key candidate for a sorting key candidate, receives a signal to read / update / delete the DB access key and the DB access key. It is determined whether or not the signal content-dependent configuration can be applied by verifying whether or not the servers to be distributed are the same for all the records in the table created by the input signal / DB access association unit 130. .

また、構成適用可否判断部160は、入力信号/DBアクセス対応テーブル200(表1参照)の全レコードについて、DBアクセスキーの格納先サーバIDとDBアクセスを行う信号の振り分け先サーバIDが一致する場合、該当振り分け先サーバIDのアクセス回数をカウントアップしてサーバ毎アクセス回数テーブル220(表3参照)に格納する。これにより、サーバ毎アクセス回数テーブル220(表3参照)の当該振り分け先サーバIDのレコードの値がカウントアップされる。   In addition, the configuration applicability determination unit 160 matches the storage server ID of the DB access key with the distribution server ID of the signal that performs DB access for all records of the input signal / DB access correspondence table 200 (see Table 1). In this case, the number of accesses of the corresponding distribution destination server ID is counted up and stored in the access count table 220 for each server (see Table 3). Thereby, the value of the record of the distribution destination server ID in the access count for each server 220 (see Table 3) is counted up.

Figure 0006568502
Figure 0006568502

表3は、サーバ毎アクセス回数テーブル220の一例を示す表である。
サーバ毎アクセス回数テーブル220は、「格納先サーバID」と「アクセス回数」とを対応付ける表である。「格納先サーバID」は、DBアクセスキーの格納先サーバIDと当該DBアクセスを行う信号の振り分け先サーバIDが一致した場合の、振り分け先の物理サーバIDである。「アクセス回数」は、当該格納先サーバID(振り分け先サーバID)へのアクセス回数である。「アクセス回数」は、入力信号/DBアクセス対応テーブル200(表1参照)の全レコードについて、一致判定を実行した場合のアクセス回数が格納される。表3において、格納先サーバIDのアクセス回数を保存しておくことで、後記するようにアクセス回数の偏り(標準偏差)を算出することができる。
Table 3 is an example of an access count table 220 for each server.
The access count table 220 for each server is a table that associates “storage destination server ID” with “access count”. The “storage destination server ID” is the physical server ID of the distribution destination when the storage destination server ID of the DB access key matches the distribution destination server ID of the signal for performing the DB access. “Access count” is the access count to the storage destination server ID (distribution destination server ID). “Access count” stores the access count when the match determination is executed for all the records of the input signal / DB access correspondence table 200 (see Table 1). In Table 3, by storing the access count of the storage destination server ID, it is possible to calculate a bias (standard deviation) of the access count as described later.

<最適振り分けキー決定部170>
最適振り分けキー決定部170は、信号内容依存構成の適用が可能な振り分けキーが2つ以上存在した場合に、サーバの負荷を均等化する最適振り分けキーを決定する。
具体的には、最適振り分けキー決定部170は、サーバ毎アクセス回数テーブル220におけるアクセス回数の偏り(標準偏差)をスコアとして保存する振り分けキースコアテーブル230(表4参照)を有し、DBアクセスキー格納先サーバテーブル210(表2参照)にあるすべての振り分けキー候補について、振り分けキースコアテーブル230(表4参照)のスコアが最も低い振り分けキーを振り分けキーに決定する。
<Optimal distribution key determination unit 170>
The optimal distribution key determination unit 170 determines an optimal distribution key for equalizing the server load when there are two or more distribution keys to which the signal content dependent configuration can be applied.
Specifically, the optimum distribution key determination unit 170 has a distribution key score table 230 (see Table 4) that stores a deviation (standard deviation) in the number of accesses in the access count table 220 for each server as a score, and a DB access key. For all distribution key candidates in the storage destination server table 210 (see Table 2), the distribution key having the lowest score in the distribution key score table 230 (see Table 4) is determined as the distribution key.

Figure 0006568502
Figure 0006568502

表4は、振り分けキースコアテーブル230の一例を示す表である。
振り分けキースコアテーブル230は、「振り分けキー」と「スコア(標準偏差)」とを対応付ける表である。「振り分けキー」は、入力信号の信号内容を振り分けるキーであり、例えば入力信号の信号内容の属性(表1参照)である。「スコア(標準偏差)」は、サーバ毎アクセス回数テーブル220(表3参照)の各レコードのアクセス回数の偏り(標準偏差)である。
最適振り分けキー決定部170は、信号内容依存構成の適用可となる振り分けキーが複数あった場合、表4のスコア(標準偏差)の最も小さい振り分けキーを、振り分けキーとして決定する。表4の例では、スコア(標準偏差)の最も小さい「属性2」の振り分けキーを、振り分けキーとして決定する。
Table 4 is a table showing an example of the distribution key score table 230.
The distribution key score table 230 is a table that associates “distribution keys” with “scores (standard deviations)”. The “distribution key” is a key for distributing the signal content of the input signal, for example, an attribute of the signal content of the input signal (see Table 1). “Score (standard deviation)” is a deviation (standard deviation) of the number of accesses of each record in the access count table 220 for each server (see Table 3).
When there are a plurality of distribution keys to which the signal content dependent configuration can be applied, the optimal distribution key determination unit 170 determines the distribution key having the smallest score (standard deviation) in Table 4 as the distribution key. In the example of Table 4, the distribution key of “attribute 2” having the smallest score (standard deviation) is determined as the distribution key.

以下、上述のように構成された構成適用可否判断装置100の分散構成評価方法について説明する。
[概要説明]
<Step1:入力信号/DBアクセス対応テーブル作成>
図3は、構成適用可否判断装置100の入力信号/DBアクセス対応テーブル作成の概要を説明する図である。
図3(a)に示すように、入力信号属性抽出部110(図2参照)は、入力信号ログ(パケットキャプチャ)101(図2参照)から入力信号に共通的に含まれる、信号の振り分けキーとなり得る属性情報を抽出する。図3(a)の例では、入力信号No.1, No.2,…(図3(c)参照)のうち、入力信号No.1を例示する。入力信号No.1は、信号内容として属性1(例えば、セッションID)、属性2(例えば、ユーザ名)、属性3(例えば、宛先IPアドレス)等を有する。
Hereinafter, a distributed configuration evaluation method of the configuration applicability determination device 100 configured as described above will be described.
[Overview]
<Step 1: Create input signal / DB access correspondence table>
FIG. 3 is a diagram for explaining the outline of the input signal / DB access correspondence table creation of the configuration applicability determination device 100.
As shown in FIG. 3A, the input signal attribute extraction unit 110 (see FIG. 2) is a signal distribution key commonly included in the input signal from the input signal log (packet capture) 101 (see FIG. 2). Extract possible attribute information. In the example of FIG. 3A, the input signal No. 1 is illustrated among the input signals No. 1, No. 2,... (See FIG. 3C). The input signal No. 1 has attribute 1 (for example, session ID), attribute 2 (for example, user name), attribute 3 (for example, destination IP address) and the like as signal contents.

図3(b)に示すように、DBアクセスログ取得部120(図2参照)は、入力信号ログ(パケットキャプチャ)101を基に、各入力信号を一つずつ順にアプリケーションに入力することで、入力信号単位のDB(KVS(Key-Value Store)型DBを想定)のアクセスログ(DBアクセスログ102)を取得する。KVS型DBのアクセスログは、下記4パターン(いわゆるCRUD)のCreate、Read、Update、Deleteである。図3(b)の例では、入力信号No.1については、アクセス種別Createで対象キーKey_Xとアクセス種別Createで対象キーKey_Yとがある。入力信号No.2については、アクセス種別Readで対象キーKey_Xとアクセス種別Updateで対象キーKey_Xとがある。入力信号No.3については、アクセス種別Updateで対象キーKey_Yがある。   As shown in FIG. 3B, the DB access log acquisition unit 120 (see FIG. 2) inputs each input signal to the application one by one in order based on the input signal log (packet capture) 101. An access log (DB access log 102) of a DB (KVS (Key-Value Store) type DB is assumed) in units of input signals is acquired. The access log of the KVS DB is Create, Read, Update, and Delete in the following four patterns (so-called CRUD). In the example of FIG. 3B, the input signal No. 1 has a target key Key_X with an access type Create and a target key Key_Y with an access type Create. Regarding the input signal No. 2, there is a target key Key_X in the access type Read and a target key Key_X in the access type Update. For input signal No. 3, there is a target key Key_Y in the access type Update.

図3(c)に示すように、入力信号/DBアクセス対応付け部130(図2参照)は、入力信号ログ(パケットキャプチャ)101とDBアクセスログ102を基に、入力信号/DBアクセス対応テーブル200(表1参照)を作成する。   As shown in FIG. 3C, the input signal / DB access association unit 130 (see FIG. 2) is based on the input signal log (packet capture) 101 and the DB access log 102, and the input signal / DB access correspondence table. 200 (see Table 1).

<Step2:信号内容依存構成の適用可否判定>
図4は、構成適用可否判断装置100の信号内容依存構成の適用可否判定の概要を説明する図であり、振り分けキー候補(例えば、属性1)毎の処理内容を例に採る。
振り分けキー処理実行部140は、信号の振り分けキーの候補となる属性全てについて、信号とその処理に必要なデータをグルーピング(1:1対応)できる振り分けキーが存在するか判定する。
図3(a)に示すように、振り分けキー処理実行部140(図2参照)は、入力信号/DBアクセス対応付け部130が作成した入力信号/DBアクセス対応テーブル200の全レコードについて、レコードのDBアクセス種別がCreate/Read/Update/Deleteのいずれかであるか判定する。なお、本実施形態では、図4の白抜き矢印に示すように、レコードは若番から走査する。
振り分けキー処理実行部140は、レコードのDBアクセス種別がCreateの場合はDBアクセスキー格納先サーバ対応付け部150に、またレコードのDBアクセス種別がRead/Update/Deleteの場合は構成適用可否判断部160にそれぞれ下記を実行させる。
<Step 2: Determine applicability of signal content dependent configuration>
FIG. 4 is a diagram for explaining the outline of the applicability determination of the signal content-dependent configuration of the configuration applicability determination device 100, taking the processing content for each distribution key candidate (for example, attribute 1) as an example.
The distribution key process execution unit 140 determines whether or not there is a distribution key capable of grouping (corresponding to 1: 1) the signal and data necessary for the process for all attributes that are candidates for the signal distribution key.
As shown in FIG. 3A, the distribution key process execution unit 140 (see FIG. 2) records all the records in the input signal / DB access correspondence table 200 created by the input signal / DB access association unit 130. It is determined whether the DB access type is Create / Read / Update / Delete. In the present embodiment, as shown by the white arrow in FIG.
The distribution key process execution unit 140 uses the DB access key storage destination server associating unit 150 when the DB access type of the record is Create, and the configuration applicability determination unit when the DB access type of the record is Read / Update / Delete. 160 causes each to execute:

・DBアクセス種別がCreateの場合
DBアクセスキー格納先サーバ対応付け部150(図2参照)は、DBアクセスログ102のアクセス種別が「生成」である場合、DBアクセスキーと、入力信号の属性情報のハッシュ値を格納先サーバIDとみなして、その対応を示すDBアクセスキー格納先サーバテーブル210(表2参照)を作成する。具体的には、DBアクセスキー格納先サーバ対応付け部150は、振り分けキーのハッシュ値を、仮想的な振り分け先サーバを示すID(以下、サーバID)とみなし、DBアクセスキーの格納先サーバID(=当該DBアクセスキーをCreateする信号の振り分け先サーバID)をDBアクセスキー格納先サーバテーブル210(表2参照)に格納する。ここでは、図4に示す入力信号/DBアクセス対応テーブル200について、入力信号No.1に対応するDBアクセスの種別がCreateの対象キーKey_XとKey_Y、および入力信号No.3に対応するDBアクセスの種別がCreateの対象キーKey_Zを、図4に示すDBアクセスキー格納先サーバテーブル210に格納する(図4の符号a,b,c参照)。例えば、図4の符号dに示すように、Key_XをCreateする信号(=信号No.1)の振り分け先サーバID(Hash(“aaa”)=a1b2c3)をKey_Xの格納先サーバIDとする。
When the DB access type is “Create” The DB access key storage destination server associating unit 150 (see FIG. 2), when the access type of the DB access log 102 is “generation”, the DB access key and the attribute information of the input signal The DB access key storage destination server table 210 (see Table 2) indicating the correspondence is created. Specifically, the DB access key storage destination server association unit 150 regards the hash value of the distribution key as an ID indicating a virtual distribution destination server (hereinafter referred to as a server ID), and stores the DB access key storage destination server ID. (= Destination server ID of a signal for creating the DB access key) is stored in the DB access key storage destination server table 210 (see Table 2). Here, in the input signal / DB access correspondence table 200 shown in FIG. 4, the DB access type corresponding to the input signal No. 1 and the DB access type corresponding to the input signal No. 3 are the target keys Key_X and Key_Y of Create. The target key Key_Z whose type is Create is stored in the DB access key storage destination server table 210 shown in FIG. 4 (see symbols a, b, and c in FIG. 4). For example, as shown by a symbol d in FIG. 4, a distribution destination server ID (Hash (“aaa”) = a1b2c3) of a signal (= signal No. 1) for creating Key_X is set as a storage destination server ID of Key_X.

・DBアクセス種別がRead/Update/Deleteの場合
構成適用可否判断部160(図2参照)は、DBアクセスキーの格納先サーバIDとDBアクセスを行う信号の振り分け先サーバIDが一致するかを判定し、一致しない場合、属性を振り分けキーとする信号内容依存構成は適用不可と判定する。例えば、属性1で振り分ける場合、入力信号No.2の振り分け先サーバID:Hash(“ddd”)=b2c4d6であり、KeyXの格納先サーバID:Hash(“aaa”)=a1b2c3である。構成適用可否判断部160は、入力信号No.2の振り分け先サーバID:Hash(“ddd”)=b2c4dと、KeyXの格納先サーバID:Hash(“aaa”)=a1b2c3とは、不一致のため、属性1を振り分けキーとする信号内容依存構成は適用不可と判定する。
構成適用可否判断部160は、図4の符号e,f,gに示すように、DBアクセスキーの格納先サーバIDとDBアクセスを行う信号の振り分け先サーバIDが一致した場合、サーバ毎アクセス回数テーブル220の当該サーバIDのアクセス回数をカウントアップする。
When the DB access type is Read / Update / Delete The configuration applicability determination unit 160 (see FIG. 2) determines whether the DB access key storage destination server ID matches the DB access destination server ID. If they do not match, it is determined that the signal content dependent configuration using the attribute as the distribution key is not applicable. For example, in the case of distribution by attribute 1, the distribution destination server ID of input signal No. 2 is Hash (“ddd”) = b2c4d6, and the storage destination server ID of KeyX is Hash (“aaa”) = a1b2c3. The configuration applicability determination unit 160 does not match the allocation destination server ID of the input signal No. 2: Hash (“ddd”) = b2c4d and the storage destination server ID of KeyX: Hash (“aaa”) = a1b2c3. , It is determined that the signal content-dependent configuration using the attribute 1 as a distribution key is not applicable.
As shown by symbols e, f, and g in FIG. 4, the configuration applicability determination unit 160 determines the number of accesses per server when the DB access key storage destination server ID matches the signal distribution destination server ID for performing DB access. The number of accesses of the server ID in the table 220 is counted up.

<Step3:全レコード終了時>
最適振り分けキー決定部170は、サーバ毎アクセス回数テーブル220の各レコードのアクセス回数の偏り(標準偏差)を算出し、この標準偏差を振り分けキーのスコアとして振り分けキースコアテーブル230に格納する。すなわち、最適振り分けキー決定部170は、信号内容依存構成適用可の場合、アクセス回数の偏りを振り分けキーのスコアとして振り分けキースコアテーブル230に格納する(図4の符号h参照)。
最適振り分けキー決定部170は、信号内容依存構成の適用可となる振り分けキーが複数あった場合、スコアの最も小さい振り分けキーを、振り分けキーとして決定する。例えば、図4の符号iに示すように、振り分けキーが属性2,属性4,…の複数あった場合、スコア(標準偏差)が最も小さいスコア2.0の振り分けキーを、最適振り分けキー103(図2参照)として選択する。
<Step 3: At the end of all records>
The optimum distribution key determination unit 170 calculates the deviation (standard deviation) of the number of accesses of each record in the access count table 220 for each server, and stores this standard deviation in the distribution key score table 230 as a distribution key score. That is, when the signal content dependent configuration is applicable, the optimum distribution key determination unit 170 stores the deviation in the number of accesses in the distribution key score table 230 as a distribution key score (see symbol h in FIG. 4).
When there are a plurality of distribution keys to which the signal content-dependent configuration can be applied, the optimal distribution key determination unit 170 determines the distribution key with the lowest score as the distribution key. For example, as shown by symbol i in FIG. 4, when there are a plurality of distribution keys of attribute 2, attribute 4,..., An allocation key with a score of 2.0 having the smallest score (standard deviation) is assigned to the optimal allocation key 103 ( (See FIG. 2).

このように、構成適用可否判断装置100は、入力信号ログ(パケットキャプチャ)101とDBアクセスログ102から、信号内容依存構成の適用可否と、振り分けキーを決定する。   As described above, the configuration applicability determination device 100 determines the applicability of the signal content dependent configuration and the distribution key from the input signal log (packet capture) 101 and the DB access log 102.

[制御シーケンス]
図5および図6は、構成適用可否判断装置100の信号内容依存構成適用可否判定および振り分けキー決定処理を示すフローチャートである。
ステップS11において、入力信号属性抽出部110(図2参照)は、入力信号ログ101(図2参照)から入力信号に共通的に含まれる信号の振り分けキーとなり得る属性情報を抽出する。
ステップS12において、DBアクセスログ取得部120(図2参照)は、入力信号ログ101を基に、各入力信号を一つずつ順にアプリケーションに入力することで、入力信号単位のDBアクセスログ102を取得する。
ステップS13において、入力信号/DBアクセス対応付け部130(図2参照)は、入力信号属性抽出部110で抽出した各信号の属性情報と、DBアクセスログ取得部120で取得したDBアクセスログ102(図2参照)から、入力信号/DBアクセスとの対応関係を保持する入力信号/DBアクセス対応テーブル200(表1参照)を作成する。
すなわち、上記ステップS11〜S13では、入力信号ログ101から入力信号に共通的に含まれ、信号の振り分けキーとなり得る属性情報のリスト(入力信号/DBアクセス対応テーブル200)を作成する。
[Control sequence]
FIG. 5 and FIG. 6 are flowcharts showing signal content-dependent configuration applicability determination and distribution key determination processing of the configuration applicability determination device 100.
In step S <b> 11, the input signal attribute extraction unit 110 (see FIG. 2) extracts attribute information that can serve as a distribution key for signals commonly included in the input signal from the input signal log 101 (see FIG. 2).
In step S12, the DB access log acquisition unit 120 (see FIG. 2) acquires the DB access log 102 in units of input signals by sequentially inputting each input signal to the application based on the input signal log 101. To do.
In step S13, the input signal / DB access associating unit 130 (see FIG. 2) extracts the attribute information of each signal extracted by the input signal attribute extracting unit 110 and the DB access log 102 ( 2), an input signal / DB access correspondence table 200 (see Table 1) that holds the correspondence with the input signal / DB access is created.
That is, in steps S11 to S13, a list of attribute information (input signal / DB access correspondence table 200) that is commonly included in the input signal from the input signal log 101 and can serve as a signal distribution key is created.

ステップS14のループ端(ループ始端)において、振り分けキー処理実行部140(図2参照)は、このループ終端の間ですべての振り分けキー候補についてステップS15〜S21の振り分けキー処理を実行させる。
ステップS15のループ端(ループ始端)において、振り分けキー処理実行部140は、このループ終端の間で、候補の中から、振り分けキーとする属性を一つ選択し、入力信号/DBアクセス対応テーブル200の全レコードについてステップS16〜S20の振り分けキー処理を実行させる。
ステップS16において、振り分けキー処理実行部140は、レコードのDBアクセス種別がCreateかRead/Update/Deleteのいずれかであるかを判別する。
At the loop end (loop start end) of step S14, the distribution key process execution unit 140 (see FIG. 2) executes the distribution key process of steps S15 to S21 for all distribution key candidates between the loop ends.
At the loop end (loop start end) in step S15, the distribution key process execution unit 140 selects one attribute to be a distribution key from the candidates between the loop ends, and the input signal / DB access correspondence table 200. The distribution key process of steps S16 to S20 is executed for all the records.
In step S16, the distribution key process execution unit 140 determines whether the DB access type of the record is Create or Read / Update / Delete.

レコードのDBアクセス種別がCreateである場合、ステップS17においてDBアクセスキー格納先サーバ対応付け部150は、振り分けキーのハッシュ値を、仮想的な振り分け先サーバを示すID(サーバID)とみなし、DBアクセスキーの格納先サーバID(DBアクセスキーをCreateする信号の振り分け先サーバID)をDBアクセスキー格納先サーバテーブル210に格納する。   When the DB access type of the record is Create, in step S17, the DB access key storage destination server association unit 150 regards the hash value of the distribution key as an ID (server ID) indicating a virtual distribution destination server, and DB The access key storage destination server ID (the signal distribution destination server ID for creating the DB access key) is stored in the DB access key storage destination server table 210.

一方、レコードのDBアクセス種別がRead/Update/Deleteである場合、ステップS18において、構成適用可否判断部160は、DBアクセスキーの格納先サーバIDとDBアクセスを行う信号の振り分け先サーバIDが一致するかを判定し、一致しない場合、属性を振り分けキーとする信号内容依存構成は適用不可と判定する。
ステップS19において、振り分けキー処理実行部140は、DBアクセスキーの格納先サーバIDとDBアクセスを行う信号の振り分け先サーバIDが一致するか否かを判別する。
On the other hand, if the DB access type of the record is Read / Update / Delete, in step S18, the configuration applicability determination unit 160 matches the storage server ID of the DB access key with the distribution server ID of the signal for performing DB access. If they do not match, it is determined that the signal content dependent configuration using the attribute as a distribution key is not applicable.
In step S19, the distribution key process execution unit 140 determines whether or not the storage server ID of the DB access key matches the distribution server ID of the signal for performing DB access.

DBアクセスキーの格納先サーバIDとDBアクセスを行う信号の振り分け先サーバIDが一致しない場合(ステップS19:No)、当該振り分けキーでの信号内容依存構成適用不可と判断して上記ステップS14に戻る。   If the storage server ID of the DB access key does not match the distribution server ID of the signal that performs DB access (step S19: No), it is determined that the signal content dependent configuration cannot be applied with the distribution key, and the process returns to step S14. .

DBアクセスキーの格納先サーバIDとDBアクセスを行う信号の振り分け先サーバIDが一致する場合(ステップS19:Yes)、ステップS20で構成適用可否判断部160(図2参照)は、サーバ毎アクセス回数テーブル220(図4参照)の該当振り分け先サーバIDのレコードの値をカウントアップする。
全レコードについて、上記ステップS16〜S20の処理を実行し、全レコードについて処理を実行するとステップS21に移行する。
If the DB access key storage destination server ID matches the DB access destination server ID (step S19: Yes), the configuration applicability determination unit 160 (see FIG. 2) determines the number of accesses per server in step S20. The record value of the corresponding distribution destination server ID in the table 220 (see FIG. 4) is counted up.
When the processes of steps S16 to S20 are executed for all records and the processes are executed for all records, the process proceeds to step S21.

ステップS21において、最適振り分けキー決定部170は、振り分けキースコアテーブル230(図4参照)に当該振り分けキーのレコードを追加し、サーバ毎アクセス回数テーブル220におけるアクセス回数の標準偏差をスコアとして保存する。
すべての振り分けキー候補について、上記ステップS15〜S21の処理を実行し、すべての振り分けキー候補について処理を実行するとステップS22に移行する。
In step S21, the optimum distribution key determination unit 170 adds a record of the distribution key to the distribution key score table 230 (see FIG. 4), and stores the standard deviation of the number of accesses in the access count table 220 for each server as a score.
When the processing of steps S15 to S21 is executed for all distribution key candidates and the processing is executed for all distribution key candidates, the process proceeds to step S22.

ステップS22において、最適振り分けキー決定部170は、振り分けキースコアテーブル230においてスコアが最も低い振り分けキーを振り分けキーに決定する。最適振り分けキー決定部170は、振り分けキースコアテーブル230にレコードが無い場合、信号内容依存構成適用不可と判定して本フローの処理を終了する。   In step S22, the optimum distribution key determination unit 170 determines the distribution key having the lowest score in the distribution key score table 230 as the distribution key. If there is no record in the distribution key score table 230, the optimal distribution key determination unit 170 determines that the signal content-dependent configuration cannot be applied and ends the process of this flow.

以上説明したように、本実施形態の構成適用可否判断装置100は、複数の属性情報を含む入力信号ログ101と、KVS型DBのアクセスのCRUDのいずれかのアクセス種別およびDBアクセスキーを含むDBアクセスログ102とに基づいて、属性情報とアクセス種別とDBアクセスキーとを対応付けて、入力信号とDBアクセスの対応を示す入力信号/DBアクセス対応テーブル200(表1参照)を作成する入力信号/DBアクセス対応付け部130と、アクセス種別がCreateである場合、DBアクセスキーと、入力信号の属性情報のハッシュ値を格納先サーバIDとみなして、その対応を示すDBアクセスキー格納先サーバテーブル210(表2参照)を作成するDBアクセスキー格納先サーバ対応付け部150と、アクセス種別がRead/Update/Deleteである場合、当該DBアクセスキーに対応する格納先サーバIDと、DBアクセスを行う入力信号が振り分けられる振り分け先サーバIDとが一致するか否かを判定し、一致した場合、属性情報を振り分けキーとする信号内容依存構成は適用可と判定する構成適用可否判断部160と、を備える。   As described above, the configuration applicability determination apparatus 100 according to the present embodiment includes the input signal log 101 including a plurality of attribute information, and the DB including the access type and DB access key of one of the CRVSs of KVS DB access. Based on the access log 102, the input signal / DB access correspondence table 200 (see Table 1) indicating the correspondence between the input signal and the DB access is created by associating the attribute information, the access type, and the DB access key. / DB access associating unit 130, and when the access type is Create, the DB access key and the DB access key storage destination server table showing the correspondence between the DB access key and the hash value of the attribute information of the input signal as the storage destination server ID DB access key storage destination server association unit 150 for creating 210 (see Table 2), and the access type is Read In the case of Update / Delete, it is determined whether or not the storage destination server ID corresponding to the DB access key matches the distribution destination server ID to which the input signal for performing DB access is distributed. And a configuration applicability determination unit 160 that determines that the signal content-dependent configuration using the distribution key is applicable.

これにより、APL実装仕様を理解することなく、信号内容依存構成の適用可否を判断することができる。また、信号の振り分けキーの候補となる属性全てについて実行することで、「信号とその処理に必要なデータをグルーピング(1:1対応)できる」振り分けキーが存在するか判定することができる。また、サーバの負荷を均等化する最適な振り分けキー、つまりアクセス頻度やデータ量の偏りが最も小さくなる振り分けキーを決定(リコメンド)することができる。   As a result, it is possible to determine whether or not the signal content dependent configuration can be applied without understanding the APL mounting specification. Further, by executing all the attributes that are candidates for the signal distribution key, it is possible to determine whether or not there is a distribution key that “groups the signals and data necessary for the processing (corresponds to 1: 1)”. Also, it is possible to determine (recommend) an optimal distribution key that equalizes the load on the server, that is, a distribution key that minimizes the deviation in access frequency and data amount.

また、本実施形態では、信号内容依存構成の適用が可能な振り分けキーが2つ以上存在した場合に、サーバの負荷を均等化する最適振り分けキーを決定する最適振り分けキー決定部170を備えているので、スコアの最も低い振り分けキーを振り分けキーに決定することで、決定された振り分けキーで信号をグルーピングすることができ、処理サーバの負荷を均等化させることができる。   In addition, the present embodiment includes an optimal distribution key determination unit 170 that determines an optimal distribution key for equalizing the server load when there are two or more distribution keys to which the signal content dependent configuration can be applied. Therefore, by determining the distribution key with the lowest score as the distribution key, the signals can be grouped with the determined distribution key, and the load on the processing server can be equalized.

また、本実施形態では、構成適用可否判断部160は、入力信号/DBアクセス対応テーブルの全レコードについて、DBアクセスキーの格納先サーバIDとDBアクセスを行う信号の振り分け先サーバIDが一致する場合、該当振り分け先サーバIDのアクセス回数をカウントアップしてサーバ毎アクセス回数テーブルに格納し、最適振り分けキー決定部170は、サーバ毎アクセス回数テーブル220(表3参照)におけるアクセス回数の偏りをスコアとして保存する振り分けキースコアテーブル230(表4参照)を有し、DBアクセスキー格納先サーバテーブル210(表2参照)にあるすべての振り分けキー候補について、振り分けキースコアテーブルのスコアが最も低い振り分けキーを振り分けキーに決定する。   Further, in this embodiment, the configuration applicability determination unit 160 determines that the DB access key storage destination server ID and the signal to which DB access is performed match for all records in the input signal / DB access correspondence table. Then, the access count of the corresponding distribution destination server ID is counted up and stored in the access count table for each server, and the optimum allocation key determination unit 170 uses the bias of the access count in the access count table 220 for each server (see Table 3) as a score. The distribution key score table 230 (see Table 4) to be stored, and the distribution key with the lowest score in the distribution key score table for all distribution key candidates in the DB access key storage destination server table 210 (see Table 2). Determine the distribution key.

このようにすることで、DBアクセスキー格納先サーバテーブルにあるすべての振り分けキー候補について、スコアの最も低い振り分けキーを振り分けキーに決定することで、決定された振り分けキーで信号をグルーピングすることができ、データサイズおよびアクセス頻度を均等にすることができ、処理サーバの負荷を均等化させることができる。   By doing in this way, it is possible to group signals with the determined distribution key by determining the distribution key with the lowest score for all distribution key candidates in the DB access key storage destination server table. The data size and the access frequency can be equalized, and the load on the processing server can be equalized.

また、最適振り分けキー決定部170が、振り分けキースコアテーブル230にレコードが無い場合、信号内容依存構成は適用不可と判定することで、APL実装仕様を理解することなく、信号内容依存構成の適用不可を判断することができる。   In addition, when there is no record in the distribution key score table 230, the optimal distribution key determination unit 170 determines that the signal content dependent configuration is not applicable, so that the signal content dependent configuration cannot be applied without understanding the APL implementation specification. Can be judged.

[変形例]
(1)信号内容依存構成の適用条件の「信号とその処理に必要なデータをグルーピング(1:1対応)できること」については、APLの要件に応じて、ゆるめられる場合がある。例えば、ある入力信号に対して、その信号処理に必要な一部のデータ(DBアクセスキー)について、当該入力信号が振り分けられたサーバ以外のサーバに格納されていることによる信号処理時間のオーバーヘッドを一定程度許容できる場合が挙げられる。
[Modification]
(1) Regarding the application condition of the signal content-dependent configuration “signals and data necessary for the processing can be grouped (corresponding to 1: 1)” may be loosened according to the requirements of APL. For example, with respect to a certain input signal, a part of data (DB access key) necessary for the signal processing has an overhead of signal processing time due to being stored in a server other than the server to which the input signal is distributed. There are cases where it is acceptable to some extent.

(2)信号の振り分けキーの候補については、信号に共通的に含まれる属性単体を振り分けキーの候補とするだけでなく、2つ以上の属性の組合せ(例えば、「ユーザ名」と「ドメイン名」など)を振り分けキーの候補としてもよい。   (2) For a signal distribution key candidate, not only a single attribute commonly included in the signal is used as a distribution key candidate, but also a combination of two or more attributes (for example, “user name” and “domain name”). Or the like) may be candidates for the sorting key.

(3)前記<Step2:信号内容依存構成の適用可否判定>において、振り分けキーのハッシュ値を、仮想的な振り分け先サーバを示すIDとして使用しているのは、IDのバイト長を統一することで、コンピュータ上での処理を単純化しているためである。振り分けキーのハッシュ値に代えて、属性の値そのものを使ってもよい。   (3) In <Step 2: Judgment of Applicability of Signal Content Dependent Configuration>, the hash value of the distribution key is used as an ID indicating a virtual distribution destination server because the byte length of the ID is unified. This is because the processing on the computer is simplified. The attribute value itself may be used instead of the hash value of the distribution key.

(4)図5および図6の制御シーケンスにおいて、DBアクセスキーの格納先サーバIDとDBアクセスを行う信号の振り分け先サーバIDが不一致の場合に、信号内容依存構成適用不可と判定(図5のステップS18参照)する代わりに、不一致となる回数、つまり振り分け先サーバ以外へのデータにアクセスする回数をカウントし、その合計回数が最も小さくなる振り分けキーを選択することにしてもよい。   (4) In the control sequences of FIGS. 5 and 6, when the storage server ID of the DB access key does not match the distribution server ID of the signal for performing DB access, it is determined that the signal content dependent configuration cannot be applied (FIG. 5). Instead of (see step S18), the number of times of mismatch, that is, the number of times of accessing data other than the distribution destination server may be counted, and the distribution key having the smallest total number of times may be selected.

(5)図5および図6の制御シーケンスにおいて、仮想サーバID毎のアクセス頻度の偏りを基に、最適な振り分けキーを決定している(図6のステップS22参照)。アクセス頻度だけでなく、仮想サーバID毎に格納されるデータ量の偏りも考慮して、判定を行ってもよい。   (5) In the control sequences of FIGS. 5 and 6, the optimum distribution key is determined based on the access frequency bias for each virtual server ID (see step S22 in FIG. 6). The determination may be performed in consideration of not only the access frequency but also a bias in the amount of data stored for each virtual server ID.

また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上述文書中や図面中に示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
In addition, among the processes described in the above embodiment, all or part of the processes described as being automatically performed can be performed manually, or the processes described as being performed manually can be performed. All or a part can be automatically performed by a known method. In addition, the processing procedures, control procedures, specific names, and information including various data and parameters shown in the above-described document and drawings can be arbitrarily changed unless otherwise specified.
Further, each component of each illustrated apparatus is functionally conceptual, and does not necessarily need to be physically configured as illustrated. In other words, the specific form of distribution / integration of each device is not limited to that shown in the figure, and all or a part thereof may be functionally or physically distributed or arbitrarily distributed in arbitrary units according to various loads or usage conditions. Can be integrated and configured.

また、上記の各構成、機能、処理部、処理手段等は、それらの一部または全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行するためのソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、IC(Integrated Circuit)カード、SD(Secure Digital)カード、光ディスク等の記録媒体に保持することができる。また、本明細書において、時系列的な処理を記述する処理ステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)をも含むものである。   Each of the above-described configurations, functions, processing units, processing means, and the like may be realized by hardware by designing a part or all of them with, for example, an integrated circuit. Further, each of the above-described configurations, functions, and the like may be realized by software for interpreting and executing a program that realizes each function by the processor. Information such as programs, tables, and files for realizing each function is stored in a memory, a hard disk, a recording device such as an SSD (Solid State Drive), an IC (Integrated Circuit) card, an SD (Secure Digital) card, an optical disk, etc. It can be held on a recording medium. Further, in this specification, the processing steps describing time-series processing are not limited to processing performed in time series according to the described order, but are not necessarily performed in time series, either in parallel or individually. The processing (for example, parallel processing or object processing) is also included.

1,1a〜1c クライアント
2,2a〜2c APLサーバ(処理サーバ)
3,3a〜3c DBサーバ
30 分散システム
100 ロードバランサ(構成適用可否判断装置)
101 入力信号ログ
102 DBアクセスログ
103 最適振り分けキー
110 入力信号属性抽出部
120 DBアクセスログ取得部
130 入力信号/DBアクセス対応付け部
140 振り分けキー処理実行部
150 DBアクセスキー格納先サーバ対応付け部
160 構成適用可否判断部
170 最適振り分けキー決定部
200 入力信号/DBアクセス対応テーブル
210 DBアクセスキー格納先サーバテーブル
220 サーバ毎アクセス回数テーブル
230 振り分けキースコアテーブル
1, 1a-1c client 2, 2a-2c APL server (processing server)
3, 3a-3c DB server 30 Distributed system 100 Load balancer (configuration applicability determination device)
DESCRIPTION OF SYMBOLS 101 Input signal log 102 DB access log 103 Optimal distribution key 110 Input signal attribute extraction part 120 DB access log acquisition part 130 Input signal / DB access matching part 140 Distribution key process execution part 150 DB access key storage destination server correlation part 160 Configuration Applicability Determination Unit 170 Optimal Distribution Key Determination Unit 200 Input Signal / DB Access Correspondence Table 210 DB Access Key Storage Destination Server Table 220 Access Count Table for Each Server 230 Distribution Key Score Table

Claims (6)

クライアントからの入力信号を処理する処理サーバおよび当該処理サーバとDBアクセスを行うDBサーバが複数台存在し、それらの前記処理サーバに対して、前記入力信号の内容を基に、振り分ける処理サーバを決める構成適用可否判断装置であって、
前記入力信号に共通的に含まれる、信号の振り分けキーとなり得る属性情報を抽出する信号属性抽出部と、
前記DBアクセスのログに含まれるアクセス種別とDBアクセスキーを取得するDBアクセスログ取得部と、
抽出した前記属性情報と、取得した前記アクセス種別と前記DBアクセスキーとを対応付けて、前記入力信号と前記DBアクセスの対応を示す入力信号/DBアクセス対応テーブルを作成する入力信号/DBアクセス対応付け部と、
前記入力信号/DBアクセス対応テーブルの全レコードについて、前記アクセス種別を判定し、前記アクセス種別が「生成」である場合、前記DBアクセスキーと前記属性情報に基づく値を格納先サーバIDとみなして、その対応を示すDBアクセスキー格納先サーバテーブルを作成するDBアクセスキー格納先サーバ対応付け部と、
前記入力信号/DBアクセス対応テーブルの全レコードについて、前記アクセス種別を判定し、前記アクセス種別が「読み出し」または「変更」である場合、当該DBアクセスキーに対応する格納先サーバIDと、前記DBアクセスを行う前記入力信号が振り分けられる振り分け先サーバIDとが一致するか否かを判定し、一致した場合、前記属性情報を振り分けキーとする信号内容依存構成は適用可と判定する構成適用可否判断部と、
を備えることを特徴とする構成適用可否判断装置。
There are a plurality of processing servers that process input signals from clients and DB servers that perform DB access with the processing servers, and the processing servers to be distributed to these processing servers are determined based on the contents of the input signals. A configuration applicability determination device,
A signal attribute extraction unit that extracts attribute information that is commonly included in the input signal and can serve as a signal distribution key;
A DB access log acquisition unit for acquiring an access type and a DB access key included in the DB access log;
Corresponding the extracted attribute information, the acquired access type and the DB access key to create an input signal / DB access correspondence table indicating the correspondence between the input signal and the DB access. Attached part,
For all records in the input signal / DB access correspondence table, the access type is determined, and when the access type is “created”, a value based on the DB access key and the attribute information is regarded as a storage destination server ID. A DB access key storage destination server associating unit for creating a DB access key storage destination server table indicating the correspondence;
For all records in the input signal / DB access correspondence table, the access type is determined, and when the access type is “read” or “change”, a storage destination server ID corresponding to the DB access key and the DB It is determined whether or not a distribution destination server ID to which the input signal to be accessed is matched is matched, and in the case of matching, it is determined that a signal content dependent configuration using the attribute information as a sorting key is applicable. And
A configuration applicability determination device comprising:
前記構成適用可否判断部は、
前記DBアクセスキーに対応する格納先サーバIDと、前記DBアクセスを行う前記入力信号が振り分けられる振り分け先サーバIDとが一致しない場合、前記属性情報を振り分けキーとする信号内容依存構成は適用不可と判定する
ことを特徴とする請求項1に記載の構成適用可否判断装置。
The configuration applicability determination unit
When the storage destination server ID corresponding to the DB access key does not match the distribution destination server ID to which the input signal for performing the DB access is distributed, the signal content dependent configuration using the attribute information as the distribution key is not applicable. The configuration applicability determination device according to claim 1, wherein determination is performed.
信号内容依存構成の適用が可能な前記振り分けキーが2つ以上存在する場合は、前記処理サーバの負荷を均等化する最適振り分けキーを決定する最適振り分けキー決定部を備える
ことを特徴とする請求項1に記載の構成適用可否判断装置。
An optimal distribution key determination unit that determines an optimal distribution key that equalizes the load of the processing server when there are two or more distribution keys to which a signal content dependent configuration can be applied. The configuration applicability determination device according to claim 1.
前記構成適用可否判断部は、
前記入力信号/DBアクセス対応テーブルの全レコードについて、
DBアクセスキーの格納先サーバIDとDBアクセスを行う信号の振り分け先サーバIDが一致する場合、該当振り分け先サーバIDのアクセス回数をカウントアップしてサーバ毎アクセス回数テーブルに格納し、
前記最適振り分けキー決定部は、
前記サーバ毎アクセス回数テーブルにおける前記アクセス回数の偏りをスコアとして保存する振り分けキースコアテーブルを有し、
前記DBアクセスキー格納先サーバテーブルにあるすべての振り分けキー候補について、
前記振り分けキースコアテーブルの前記スコアが最も低い振り分けキーを振り分けキーに決定する
ことを特徴とする請求項3に記載の構成適用可否判断装置。
The configuration applicability determination unit
For all records in the input signal / DB access correspondence table,
When the storage server ID of the DB access key matches the distribution server ID of the signal for performing DB access, the access count of the corresponding distribution server ID is counted up and stored in the access count table for each server,
The optimal distribution key determination unit
A distribution key score table for storing a bias of the number of accesses in the access count table for each server as a score;
For all distribution key candidates in the DB access key storage destination server table,
4. The configuration applicability determination device according to claim 3, wherein a distribution key having the lowest score in the distribution key score table is determined as a distribution key.
前記最適振り分けキー決定部は、
前記振り分けキースコアテーブルにレコードが無い場合、信号内容依存構成は適用不可と判定する
ことを特徴とする請求項4に記載の構成適用可否判断装置。
The optimal distribution key determination unit
5. The configuration applicability determination device according to claim 4, wherein if there is no record in the distribution key score table, it is determined that the signal content dependent configuration is not applicable.
クライアントからの入力信号を処理する処理サーバおよび当該処理サーバとDBアクセスを行うDBサーバが複数台存在し、それらの前記処理サーバに対して、前記入力信号の内容を基に、振り分ける処理サーバを決める構成適用可否判断装置の分散構成評価方法であって、
前記構成適用可否判断装置は、
前記入力信号に共通的に含まれる、信号の振り分けキーとなり得る属性情報を抽出する信号属性抽出ステップと、
前記DBアクセスのログに含まれるアクセス種別とDBアクセスキーを取得するDBアクセスログ取得ステップと、
抽出した前記属性情報と、取得した前記アクセス種別と前記DBアクセスキーとを対応付けて、前記入力信号と前記DBアクセスの対応を示す入力信号/DBアクセス対応テーブルを作成する入力信号/DBアクセス対応付けステップと、
前記入力信号/DBアクセス対応テーブルの全レコードについて、前記アクセス種別を判定し、前記アクセス種別が「生成」である場合、前記DBアクセスキーと前記属性情報に基づく値を格納先サーバIDとみなして、その対応を示すDBアクセスキー格納先サーバテーブルを作成するDBアクセスキー格納先サーバ対応付けステップと、
前記入力信号/DBアクセス対応テーブルの全レコードについて、前記アクセス種別を判定し、前記アクセス種別が「読み出し」または「変更」である場合、当該DBアクセスキーに対応する格納先サーバIDと、前記DBアクセスを行う前記入力信号が振り分けられる振り分け先サーバIDとが一致するか否かを判定し、一致した場合、前記属性情報を振り分けキーとする信号内容依存構成は適用可と判定する構成適用可否判断ステップと、
を実行する分散構成評価方法。
There are a plurality of processing servers that process input signals from clients and DB servers that perform DB access with the processing servers, and the processing servers to be distributed to these processing servers are determined based on the contents of the input signals. A distributed configuration evaluation method for a configuration applicability determination device,
The configuration applicability determination device includes:
A signal attribute extraction step for extracting attribute information that is commonly included in the input signal and can serve as a signal distribution key;
A DB access log acquisition step of acquiring an access type and a DB access key included in the DB access log;
Corresponding the extracted attribute information, the acquired access type and the DB access key to create an input signal / DB access correspondence table indicating the correspondence between the input signal and the DB access. Attaching step,
For all records in the input signal / DB access correspondence table, the access type is determined, and when the access type is “created”, a value based on the DB access key and the attribute information is regarded as a storage destination server ID. A DB access key storage destination server association step for creating a DB access key storage destination server table indicating the correspondence;
For all records in the input signal / DB access correspondence table, the access type is determined, and when the access type is “read” or “change”, a storage destination server ID corresponding to the DB access key and the DB It is determined whether or not a distribution destination server ID to which the input signal to be accessed is matched is matched, and in the case of matching, it is determined that a signal content dependent configuration using the attribute information as a sorting key is applicable. Steps,
Distributed configuration evaluation method to execute.
JP2016156339A 2016-08-09 2016-08-09 Configuration applicability determination device and distributed configuration evaluation method Active JP6568502B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016156339A JP6568502B2 (en) 2016-08-09 2016-08-09 Configuration applicability determination device and distributed configuration evaluation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016156339A JP6568502B2 (en) 2016-08-09 2016-08-09 Configuration applicability determination device and distributed configuration evaluation method

Publications (2)

Publication Number Publication Date
JP2018025911A JP2018025911A (en) 2018-02-15
JP6568502B2 true JP6568502B2 (en) 2019-08-28

Family

ID=61194054

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016156339A Active JP6568502B2 (en) 2016-08-09 2016-08-09 Configuration applicability determination device and distributed configuration evaluation method

Country Status (1)

Country Link
JP (1) JP6568502B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113901262A (en) * 2021-09-24 2022-01-07 北京达佳互联信息技术有限公司 Method and device for acquiring data to be processed, server and storage medium

Also Published As

Publication number Publication date
JP2018025911A (en) 2018-02-15

Similar Documents

Publication Publication Date Title
US10659496B2 (en) Insertion and configuration of interface microservices based on security policy changes
KR101383905B1 (en) method and apparatus for processing server load balancing with the result of hash function
EP2678984B1 (en) Multi-tenant services gateway
CN103329113B (en) Configuration is accelerated and custom object and relevant method for proxy server and the Dynamic Website of hierarchical cache
US8539080B1 (en) Application intelligent request management based on server health and client information
US20170302752A1 (en) Systems and methods for identifying and characterizing client devices
JP2018506936A (en) Method and system for an end-to-end solution for distributing content in a network
US20120102226A1 (en) Application specific web request routing
US20160359706A1 (en) Effective service node traffic routing
US11546307B2 (en) Method to implement multi-tenant/shared Redis cluster using envoy
JP2019016042A (en) Data acquisition program, device, and method
US9729652B2 (en) Dynamically affinitizing users to a version of a website
US20220012110A1 (en) Networking-related system call interception and modification
US10516628B2 (en) Transfer device, transfer system, and transfer method
JP6568502B2 (en) Configuration applicability determination device and distributed configuration evaluation method
JP2017123040A (en) Server device, distribution file system, distribution file system control method, and program
US20240152374A1 (en) Global policy configuration for network management service operating in public cloud
EP4407489A1 (en) Global policy configuration for network management service operating in public cloud
US20240152376A1 (en) Translation of api requests for connection between network management system and managed datacenters
EP4407486A1 (en) Translation of api requests for connection between network management system and managed datacenters
EP4407488A1 (en) Network management services managing heterogeneous groups of datacenters
EP4407484A1 (en) Deployment of network management services in public cloud
EP4407485A1 (en) Mapping messages to connection servers between network management system and managed datacenters
US20240152377A1 (en) Multi-tenant network management service
US20240154878A1 (en) Visualization of flows for group of datacenters

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180905

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190717

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190802

R150 Certificate of patent or registration of utility model

Ref document number: 6568502

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150