JP6259408B2 - Distributed processing system - Google Patents

Distributed processing system Download PDF

Info

Publication number
JP6259408B2
JP6259408B2 JP2015036156A JP2015036156A JP6259408B2 JP 6259408 B2 JP6259408 B2 JP 6259408B2 JP 2015036156 A JP2015036156 A JP 2015036156A JP 2015036156 A JP2015036156 A JP 2015036156A JP 6259408 B2 JP6259408 B2 JP 6259408B2
Authority
JP
Japan
Prior art keywords
data
node
load
normal
processing system
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
JP2015036156A
Other languages
Japanese (ja)
Other versions
JP2016157367A (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 JP2015036156A priority Critical patent/JP6259408B2/en
Publication of JP2016157367A publication Critical patent/JP2016157367A/en
Application granted granted Critical
Publication of JP6259408B2 publication Critical patent/JP6259408B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Description

本発明は、ネットワーク上に分散配置されるノードをクラスタ化してデータを格納する分散処理システムに関する。   The present invention relates to a distributed processing system that stores data by clustering nodes arranged in a distributed manner on a network.

近年、クラウドコンピューティングの隆盛に伴い、多量のデータの処理や保持を効率的に行うことが求められている。そこで、複数のサーバを協調動作させることにより効率的な処理を実現する分散処理技術が発展している。   In recent years, with the rise of cloud computing, it has been required to efficiently process and retain a large amount of data. Thus, distributed processing technology has been developed that realizes efficient processing by operating a plurality of servers in a coordinated manner.

分散処理を行う際には、クラスタ構成からなる分散処理システムを構成する各サーバ(以下、「ノード」と称する。)が担当するデータを決定する必要がある。このとき、分散処理システム全体での処理能力を高めるためには、各ノードが担当するデータ数は平均化されていることが望ましい。   When performing distributed processing, it is necessary to determine data to be handled by each server (hereinafter referred to as “node”) constituting a distributed processing system having a cluster configuration. At this time, in order to increase the processing capability of the entire distributed processing system, it is desirable that the number of data handled by each node is averaged.

代表的なデータの管理手法として、各データのkeyをハッシュ関数にかけた値(以下、「hash(key)」と称する。)をノード数Nで割った余り、即ち「hash(key) mod N」を番号として持つノードがデータを管理する手法がある。この場合、各ノードに事前に「0」から「N−1」までの番号を割り当てていることが前提となる。このような管理手法を用いた場合、ノードを追加・離脱すると、Nの値が変化して、多くのデータについて、そのデータの保存を担当するノードが変更になるため、担当するデータを再配置することが必要になる。   As a representative data management method, a remainder obtained by dividing a value obtained by multiplying the key of each data by a hash function (hereinafter referred to as “hash (key)”) by the number of nodes N, that is, “hash (key) mod N”. There is a method in which a node having a number as a number manages data. In this case, it is assumed that numbers “0” to “N−1” are assigned to each node in advance. When such a management method is used, when a node is added or removed, the value of N changes and the node responsible for storing that data changes for many data. It becomes necessary to do.

そこで、ノードの追加・離脱に伴い担当するノードが変更になるデータ数を約1/Nに抑える方法として、コンシステント・ハッシュ(Consistent Hashing)法を用いたデータ管理手法がある。このコンシステント・ハッシュ法を用いたデータ管理手法では、ノードとデータの双方にID(IDentifier)を割り当てる。そして、データのIDから閉じたID空間を時計回りに辿った場合に最初に当たったノードをそのデータの担当とする。ノードに対するIDの与え方の例としては、IPアドレスをハッシュ関数にかけた値(hash(IPアドレス))が挙げられる。   Therefore, there is a data management method using a consistent hashing method as a method of suppressing the number of data that the node in charge changes with the addition / detachment of a node to about 1 / N. In this data management method using the consistent hash method, IDs (IDentifiers) are assigned to both nodes and data. Then, when the closed ID space is traced clockwise from the ID of the data, the node that hits first is assumed to be in charge of the data. An example of how to give an ID to a node is a value (hash (IP address)) obtained by multiplying an IP address by a hash function.

クラスタ構成の分散処理システムでは、各ノードの処理性能が等しい場合には、各ノードが担当するデータ量を等しくする、即ち、コンシステント・ハッシュ法のID空間における、ノード間の距離(以下、「ノードの担当領域」と称する。)を等しくすることが望ましい。この点を実現するため、各ノードに仮想的に複数のIDを持たせる手法が用いられている(非特許文献1参照)。各ノードが複数の仮想IDを持つことで、仮想ID毎の担当領域は異なっていても、大数の法則に従いノードの担当領域は平均化される。   In a distributed processing system with a cluster configuration, when the processing performance of each node is equal, the amount of data handled by each node is made equal, that is, the distance between nodes in the ID space of the consistent hash method (hereinafter, “ It is desirable to equalize the “areas in charge of nodes”. In order to realize this point, a method of virtually giving a plurality of IDs to each node is used (see Non-Patent Document 1). By having each node have a plurality of virtual IDs, even if the assigned areas for each virtual ID are different, the assigned areas of the nodes are averaged according to the law of large numbers.

入江 道生、他4名、「コンシステント・ハッシュ法におけるデータの複製を意識した負荷分散手法」、社団法人電子情報通信学会、2010年10月、信学技報、IN2010-77、P.69-74Michio Irie and 4 others, "Load distribution method that is conscious of data replication in consistent hash method", The Institute of Electronics, Information and Communication Engineers, October 2010, IEICE Technical Report, IN2010-77, P.69- 74

上記したコンシステント・ハッシュ法や仮想ID等の従来技術により、ノード間で担当するデータを均一化し負荷を分散させることが可能である。しかしながら、特定ノードにおいて、アクセス頻度や処理時間の長さ等でノードに高い負荷を与えるデータ(以下、「高負荷データ」と称する。)が発生した場合、その高負荷データを担当したノードにおいて負荷が急激に高まり、当該ノードで処理される他のデータの信号処理に影響を与える問題がある(図1参照)。このような問題に対して、高負荷データ自体を削除若しくは通信を規制する等して負荷を低減し、対応することも考えられるが、高負荷データ自体は正常なデータであり、処理を継続したいことも考えられるため、データの削除や通信規制以外の対応手法が求められる。   With the conventional techniques such as the consistent hash method and the virtual ID described above, it is possible to make the data handled between the nodes uniform and distribute the load. However, when data that gives a high load to the node due to access frequency, length of processing time, etc. (hereinafter referred to as “high load data”) occurs in a specific node, the load at the node in charge of the high load data Is abruptly increased, which affects the signal processing of other data processed by the node (see FIG. 1). To deal with such problems, it may be possible to reduce the load by deleting the high-load data itself or restricting communication, etc., but the high-load data itself is normal data and you want to continue processing. For this reason, measures other than data deletion and communication restrictions are required.

従来、このようなコンシステント・ハッシュ法の分散処理システムにおける負荷増大に対する対策としては、新たなノードを増設し、システムをスケールアウトさせて、高負荷となったノードの担当するデータ数を縮小させて負荷を低減する手法がとられる。   Conventionally, as a countermeasure against the load increase in such a distributed processing system of the consistent hash method, a new node is added, the system is scaled out, and the number of data assigned to the high load node is reduced. To reduce the load.

しかしながら、高負荷データのアクセス頻度やリソース消費量のレベルによっては、当該データの信号処理のみで担当ノードのリソースの大部分を消費してしまい、スケールアウトを実行しても、当該データを担当するノードにおいて期待するレベルにまで負荷を低減することができず、他のデータの信号処理に影響を及ぼす問題が解決されない問題がある。また、高負荷データの移動先サーバでの負荷増大と、それに対応するための増設とが、繰り返し発生することにより、非効率なスケールアウトが頻発する問題もある。   However, depending on the access frequency of high-load data and the level of resource consumption, most of the resources of the node in charge are consumed only by signal processing of the data, and the data is handled even if scale-out is executed. There is a problem that the load cannot be reduced to an expected level at the node, and the problem affecting the signal processing of other data is not solved. In addition, there is a problem that inefficient scale-out frequently occurs due to the repeated increase in the load on the destination server for high-load data and the increase in response to the increase.

このような背景を鑑みて本発明がなされたのであり、本発明は、高負荷データの発生時に、高負荷データの処理を継続しつつ、他のデータの信号処理への影響の発生や、非効率なスケールアウトの頻発を抑止することができる、分散処理システムを提供することを課題とする。   In view of such a background, the present invention has been made, and the present invention continues the processing of high-load data when high-load data is generated, and causes the influence of other data on signal processing, It is an object of the present invention to provide a distributed processing system that can suppress frequent frequent scale-out.

前記した課題を解決するため、請求項1に記載の発明は、クライアントからのメッセージを受信して信号処理しサービスを提供する分散処理システムであって、前記分散処理システムは、前記メッセージを受信して信号処理する第1のノードを複数有する通常データ分散処理システムと、前記第1のノードと比較して処理性能の高い第2のノードを複数有する高負荷データ分散処理システムとから構成され、前記通常データ分散処理システムの前記第1のノードそれぞれ、および、前記高負荷データ分散処理システムの第2のノードそれぞれが、前記第1のノードそれぞれの識別子と、信号処理を実行するデータに付された振り分けIDとを対応付けた情報である第1の振り分けID情報、および、前記第1のノードそれぞれの識別子と、前記第1のノードのアドレスとを対応付けた情報である第1のノード識別子管理情報、並びに、前記第2のノードそれぞれの識別子と、信号処理を実行するデータに付された前記振り分けIDとを対応付けた情報である第2の振り分けID情報、および、前記第2のノードそれぞれの識別子と、前記第2のノードのアドレスとを対応付けた情報である第2のノード識別子管理情報、を記憶する記憶部、を備えており、前記通常データ分散処理システムの前記第1のノードそれぞれが、前記メッセージを受信し、当該メッセージに付与された、前記振り分けID、並びに、前記通常データ分散処理システムおよび前記高負荷データ分散処理システムのいずれかの識別子を示す担当分散システム識別子、を取得し、前記第1の振り分けID情報または前記第2の振り分けID情報を参照して信号処理するノードを決定し、決定したノードに当該メッセージを振り分ける振り分け部と、振り分けられた前記メッセージを受信し、前記第1のノード自身が担当するデータに関するメッセージの信号処理を実行するとともに、前記データの信号処理の処理負荷を計測し、第1のデータ処理負荷計測情報として自身の前記記憶部に記憶する第1の信号処理部と、所定の第1の期間ごとに、前記第1のデータ処理負荷計測情報を参照し、予め設定された高負荷データを抽出するロジックに基づき前記信号処理の処理負荷が高いデータを前記高負荷データとして抽出し、前記抽出した高負荷データの前記振り分けIDを取得し、前記第2の振り分けID情報および前記第2のノード識別子管理情報を参照して信号処理する第2のノードを決定して送信する高負荷データ抽出部と、を備え、前記高負荷データ分散処理システムの前記第2のノードそれぞれが、前記振り分け部と、振り分けられた前記メッセージを受信し、前記第2のノード自身が担当するデータに関するメッセージの信号処理を実行するとともに、前記データの信号処理の処理負荷を計測し、第2のデータ処理負荷計測情報として自身の前記記憶部に記憶する第2の信号処理部と、所定の第2の期間ごとに、前記第2のデータ処理負荷計測情報を参照し、予め設定された正常負荷データを抽出するロジックに基づき前記信号処理の処理負荷が低減したデータを前記正常負荷データとして抽出し、前記抽出した正常負荷データの前記振り分けIDを取得し、前記第1の振り分けID情報および前記第1のノード識別子管理情報を参照して信号処理する第1のノードを決定して送信する正常負荷データ抽出部と、を備えることを特徴とする分散処理システムとした。   In order to solve the above-described problem, the invention according to claim 1 is a distributed processing system that receives a message from a client, performs signal processing and provides a service, and the distributed processing system receives the message. A normal data distributed processing system having a plurality of first nodes for signal processing and a high-load data distributed processing system having a plurality of second nodes having a higher processing performance than the first node, Each of the first nodes of the normal data distributed processing system and each of the second nodes of the high-load data distributed processing system are attached to the identifiers of the first nodes and the data for performing signal processing. First distribution ID information, which is information associated with a distribution ID, the identifier of each of the first nodes, and the previous Corresponding the first node identifier management information, which is information in which the address of the first node is associated, and the identifier of each of the second nodes, and the distribution ID attached to the data for performing signal processing Second distribution ID information that is attached information, and second node identifier management information that is information in which the identifier of each of the second nodes is associated with the address of the second node are stored. Each of the first nodes of the normal data distributed processing system receives the message, the distribution ID assigned to the message, the normal data distributed processing system, and the A responsible distributed system identifier indicating any identifier of the high load data distributed processing system is acquired, and the first distribution ID information or The node that performs signal processing by referring to the second distribution ID information, the distribution unit that distributes the message to the determined node, and the data that is received by the first node and that receives the distributed message A first signal processing unit that measures the signal processing load of the data and stores the first data processing load measurement information in the storage unit thereof as a first data processing load measurement information. For each one period, referring to the first data processing load measurement information, based on the logic for extracting preset high load data, the data with a high processing load of the signal processing is extracted as the high load data, Obtain the distribution ID of the extracted high load data and refer to the second distribution ID information and the second node identifier management information A high-load data extraction unit that determines and transmits a second node to perform signal processing, and each of the second nodes of the high-load data distributed processing system includes the distribution unit and the distributed node The message is received, the signal processing of the message related to the data handled by the second node itself is executed, the processing load of the signal processing of the data is measured, and the storage of its own as second data processing load measurement information The second signal processing unit stored in the unit and the signal processing based on logic for extracting preset normal load data with reference to the second data processing load measurement information for each predetermined second period The data with reduced processing load is extracted as the normal load data, the distribution ID of the extracted normal load data is obtained, and the first distribution ID A first node successfully load the data extraction unit which transmits the determined reference to the signal processing broadcast and the first node identifier management information, and a distributed processing system characterized in that it comprises a.

このようにすることで、分散処理システムにおいて、通常データ分散処理システムの第1のノードが、アクセス頻度が多い、処理時間の長い等によりノードに高い負荷を与えるデータ(高負荷データ)を抽出し、処理能力の高い高負荷データを専用に処理する高負荷データ分散処理システムにそのデータ(高負荷データ)を移管することができる。
よって、移管先の高負荷データ分散処理システムにおいて、高負荷データの処理を継続しつつ、通常データ分散処理システムに高負荷データが存在していた際に問題となる、その他のデータへの信号処理への影響の発生や、非効率なスケールアウトの頻発を抑止することができる。
In this way, in the distributed processing system, the first node of the normal data distributed processing system extracts data (high load data) that imposes a high load on the node due to frequent access, long processing time, etc. The data (high load data) can be transferred to a high load data distributed processing system that exclusively processes high load data with high processing capacity.
Therefore, in the high-load data distributed processing system at the transfer destination, signal processing for other data that becomes a problem when high-load data exists in the normal data distributed processing system while continuing high-load data processing It is possible to suppress the occurrence of effects on the environment and the frequent occurrence of inefficient scale-out.

請求項2に記載の発明は、前記第1のノードの前記高負荷データ抽出部が、前記予め設定された高負荷データを抽出するロジックとして、前記所定の第1の期間内において、前記第1のデータ処理負荷計測情報として計測された、前記データの信号処理に伴うロック取得期間、または、前記データのデータサイズと、前記所定の第1の期間内における全ての前記データから算出した、平均ロック取得期間、または、平均データサイズとをそれぞれ比較して、その乖離幅が所定の閾値を超えている場合に、前記データを高負荷データとして抽出することが設定されていること、を特徴とする請求項1に記載の分散処理システムとした。   According to a second aspect of the present invention, in the predetermined first period, the first high-load data extraction unit of the first node extracts the first high-load data as the logic. The average lock calculated from the lock acquisition period accompanying the signal processing of the data, or the data size of the data, and all the data in the predetermined first period, measured as the data processing load measurement information of It is set to extract the data as high load data when the acquisition period or the average data size is respectively compared and the deviation width exceeds a predetermined threshold value The distributed processing system according to claim 1 is provided.

このようにすることで、通常データ分散処理システムの第1のノードは、高負荷データを抽出する際に、ロック取得期間またはデータサイズの計測情報に基づき、全データの平均値と比較して、高負荷データを抽出することができる。   By doing in this way, when the first node of the normal data distributed processing system extracts high load data, based on the measurement information of the lock acquisition period or the data size, compared with the average value of all data, High load data can be extracted.

請求項3に記載の発明は、前記第1のノードの前記高負荷データ抽出部が、前記平均ロック取得期間、または、平均データサイズを含む前記第1のノードのノード負荷計測情報を、前記第2のノードそれぞれに送信し、前記第2のノードの前記正常負荷データ抽出部が、前記予め設定された正常負荷データを抽出するロジックとして、前記所定の第2の期間内において、前記第2のデータ処理負荷計測情報として計測された、前記データの信号処理に伴うロック取得期間、または、前記データのデータサイズと、前記データの前記振り分けIDを用いて前記第1の振り分けID情報を参照し、当該データの返還先としての前記第1のノードを特定し、前記特定された第1のノードから送信された前記ノード負荷計測情報に含まれる、前記平均ロック取得期間、または、前記平均データサイズとをそれぞれ比較し、前記第2のデータ処理負荷計測情報として計測されたデータの値が、各々の平均以下であった場合に、当該データを正常負荷データとして抽出することが設定されていること、を特徴とする請求項2に記載の分散処理システムとした。   According to a third aspect of the present invention, the high-load data extraction unit of the first node obtains the node load measurement information of the first node including the average lock acquisition period or the average data size. Each of the two nodes, and the normal load data extraction unit of the second node extracts the second normal load data as the logic for extracting the preset normal load data within the predetermined second period. The lock acquisition period, which is measured as data processing load measurement information, associated with signal processing of the data, or the data size of the data and the distribution ID of the data is referred to the first distribution ID information, The first node as a return destination of the data is specified, and the average included in the node load measurement information transmitted from the specified first node When the data value measured as the second data processing load measurement information is equal to or less than the respective average, the normal data load is obtained. The distributed processing system according to claim 2, wherein extraction is set as data.

このようにすることで、高負荷データ分散処理システムの第2のノードは、正常負荷データの返還先となる第1のノードのノード負荷計測情報(平均ロック取得期間、平均データサイズ)に基づき負荷が低減したことを判定し、正常負荷データを抽出することができる。   By doing so, the second node of the high load data distributed processing system loads based on the node load measurement information (average lock acquisition period, average data size) of the first node to which the normal load data is returned. Therefore, it is possible to extract normal load data.

請求項4に記載の発明は、前記第1のノードの前記振り分け部が、前記高負荷データとして抽出され前記第2のノードに送信されたデータの信号処理を要求するメッセージを受信した際に、前記メッセージに付与された前記担当分散システム識別子を、前記高負荷データ分散処理システムを示す値に変更すること、を特徴とする請求項1ないし請求項3のいずれか1項に記載の分散処理システムとした。   In the invention according to claim 4, when the distribution unit of the first node receives a message requesting signal processing of data extracted as the high load data and transmitted to the second node, 4. The distributed processing system according to claim 1, wherein the assigned distributed system identifier assigned to the message is changed to a value indicating the high-load data distributed processing system. It was.

このようにすることで、高負荷データの移管後に、移管元の通常データ分散処理システムの第1のノードにおいて、当該データに対する最初のアクセスがあった場合に、そのメッセージに付与された担当分散処理システム識別子を移管先に書き換える。よって、その後のメッセージについては、高負荷データ分散処理システムに振り分けられるようにすることができる。   In this way, after the high-load data is transferred, if the first access to the data is made at the first node of the normal data distributed processing system that is the transfer source, the distributed processing assigned to the message is performed. Rewrite the system identifier to the transfer destination. Therefore, subsequent messages can be distributed to the high-load data distributed processing system.

請求項5に記載の発明は、前記第2のノードの前記振り分け部が、前記正常負荷データとして抽出され前記第1のノードに送信されたデータの信号処理を要求するメッセージを受信した際に、前記メッセージに付与された前記担当分散システム識別子を、前記通常データ分散処理システムを示す値に変更すること、を特徴とする請求項1ないし請求項4のいずれか1項に記載の分散処理システムとした。   In the invention according to claim 5, when the distribution unit of the second node receives a message requesting signal processing of data extracted as the normal load data and transmitted to the first node, The distributed processing system according to any one of claims 1 to 4, wherein the assigned distributed system identifier assigned to the message is changed to a value indicating the normal data distributed processing system. did.

このようにすることで、正常負荷データの返還後に、返還元の高負荷データ分散処理システムの第2のノードにおいて、当該データに対する最初のアクセスがあった場合に、そのメッセージに付与された担当分散処理システム識別子を返還先に書き換える。よって、その後のメッセージについては、通常データ分散処理システムに振り分けられるようにすることができる。   In this way, after the normal load data is returned, if the second node of the high load data distribution processing system for return reduction has the first access to the data, the assigned distribution assigned to the message is distributed. Rewrite the processing system identifier to the return destination. Therefore, subsequent messages can be distributed to the normal data distribution processing system.

請求項6に記載の発明は、前記第2のノードの前記正常負荷データ抽出部が、前記正常負荷データとして抽出されたデータを、前記通常データ分散処理システムの前記第1のノードに送信する際に、当該データに、高負荷データとして抽出されたことを示す高負荷データ判定回数を、1カウントアップして送信しており、前記正常負荷データを抽出したときに、前記高負荷データ判定回数が所定の閾値を超えていた場合、当該データを削除すること、を特徴とする請求項1ないし請求項5のいずれか1項に記載の分散処理システムとした。   According to a sixth aspect of the present invention, when the normal load data extraction unit of the second node transmits the data extracted as the normal load data to the first node of the normal data distributed processing system. In addition, the number of times of high load data determination indicating that the data is extracted as high load data is transmitted to the data by counting up, and when the normal load data is extracted, the number of times of high load data determination is The distributed processing system according to any one of claims 1 to 5, wherein if the predetermined threshold value is exceeded, the data is deleted.

このようにすることで、高負荷データ分散処理システムの第2のノードは、高負荷データとして移管されている期間が長く、高負荷データ判定回数が所定の閾値を超えたデータについて削除する処理を実行することができる。よって、第2のノードの処理負荷を低減させることができる。   By doing so, the second node of the high load data distributed processing system performs a process of deleting data that has been transferred as high load data for a long time and the high load data determination count has exceeded a predetermined threshold. Can be executed. Therefore, the processing load on the second node can be reduced.

本発明によれば、高負荷データの発生時に、高負荷データの処理を継続しつつ、他のデータの信号処理への影響の発生や、非効率なスケールアウトの頻発を抑止する、分散処理システムを提供することができる。   According to the present invention, when high load data is generated, a distributed processing system that suppresses occurrence of influence on signal processing of other data and frequent occurrence of inefficient scale-out while continuing high load data processing. Can be provided.

従来技術の課題を説明するための図である。It is a figure for demonstrating the subject of a prior art. 本実施形態に係る分散処理システムの全体構成を示す図である。It is a figure which shows the whole structure of the distributed processing system which concerns on this embodiment. 本実施形態に係る分散処理システムを構成する、通常データ分散処理システムと高負荷データ分散処理システムとを示し、分散処理システム全体の処理の流れを説明するための図である。It is a figure for demonstrating the process flow of the whole distributed processing system which shows the normal data distributed processing system and high load data distributed processing system which comprise the distributed processing system which concerns on this embodiment. 本実施形態に係る通常データ分散処理システムを構成するノードの機能ブロック図である。It is a functional block diagram of the node which comprises the normal data distributed processing system which concerns on this embodiment. 本実施形態に係るノード識別子管理テーブル(通常)および振り分けIDテーブル(通常)のデータ構成例を示す図である。It is a figure which shows the data structural example of the node identifier management table (normal) and distribution ID table (normal) which concern on this embodiment. 本実施形態の係るデータ(メタデータ)の構成を説明するための図である。It is a figure for demonstrating the structure of the data (metadata) which concern on this embodiment. 本実施形態に係るデータ処理負荷計測情報(通常)のデータ構成例を示す図である。It is a figure which shows the data structural example of the data processing load measurement information (normal) which concerns on this embodiment. 本実施形態に係るノード負荷計測情報(通常)のデータ構成例を示す図である。It is a figure which shows the data structural example of the node load measurement information (normal) which concerns on this embodiment. 本実施形態の係るデータ(メタデータ)の構成を説明するための図である。It is a figure for demonstrating the structure of the data (metadata) which concern on this embodiment. 本実施形態に係る高負荷データ分散処理システムを構成するノードの機能ブロック図である。It is a functional block diagram of the node which comprises the high load data distribution processing system which concerns on this embodiment. 本実施形態に係る通常データ分散処理システムの各ノードが実行する処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the process which each node of the normal data distributed processing system which concerns on this embodiment performs. 本実施形態に係るノードの高負荷データ抽出部による、高負荷データの抽出処理を説明するための図である。It is a figure for demonstrating the extraction process of the high load data by the high load data extraction part of the node which concerns on this embodiment. 本実施形態に係るノードの高負荷データ抽出部による、移管する高負荷データを担当する高負荷データ分散処理システムのノードを特定する処理を説明するための図である。It is a figure for demonstrating the process which specifies the node of the high load data distribution processing system which takes charge of the high load data to transfer by the high load data extraction part of the node which concerns on this embodiment. 本実施形態に係る高負荷データの移管後の当該データに対する最初のアクセスのリダイレクト処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the redirect process of the first access with respect to the said data after transfer of the high load data which concerns on this embodiment. 本実施形態に係るデータ処理負荷計測情報(高負荷)のデータ構成例を示す図である。It is a figure which shows the data structural example of the data processing load measurement information (high load) which concerns on this embodiment. 本実施形態に係る高負荷データ分散処理システムの各ノードが実行する処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the process which each node of the high load data distribution processing system which concerns on this embodiment performs. 本実施形態に係るノードの正常負荷データ抽出部による、正常負荷データの抽出処理を説明するための図である。It is a figure for demonstrating the extraction process of normal load data by the normal load data extraction part of the node which concerns on this embodiment. 本実施形態の係るデータ(メタデータ)の構成を説明するための図である。It is a figure for demonstrating the structure of the data (metadata) which concern on this embodiment. 本実施形態に係る正常負荷データの返還後の当該データに対する最初のアクセスのリダイレクト処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the redirect process of the first access with respect to the said data after return of normal load data which concerns on this embodiment.

次に、本発明を実施するための形態(以下、「本実施形態」と称する。)における分散処理システム1000について説明する。
図2は、本実施形態に係る分散処理システム1000の全体構成を示す図である。
Next, a distributed processing system 1000 in a mode for carrying out the present invention (hereinafter referred to as “the present embodiment”) will be described.
FIG. 2 is a diagram showing an overall configuration of the distributed processing system 1000 according to the present embodiment.

この分散処理システム1000は、複数のノード1から構成される。各ノード1は、コンピュータなどの物理装置や仮想マシンなどの論理装置である。ロードバランサ3は、クライアント2からのメッセージを受信し、単純なラウンドロビン等により振り分けて各ノード1に送信する。そして、ノード1の振り分け部12は、クライアント2からのメッセージを、例えば、コンシステント・ハッシュ法等に基づき、メッセージを担当するノード1に振り分ける。メッセージを担当するノード1では、信号処理部13において、信号処理を行い、クライアント2にサービスを提供する。   This distributed processing system 1000 includes a plurality of nodes 1. Each node 1 is a physical device such as a computer or a logical device such as a virtual machine. The load balancer 3 receives a message from the client 2, distributes it by simple round robin or the like, and transmits it to each node 1. Then, the distribution unit 12 of the node 1 distributes the message from the client 2 to the node 1 in charge of the message based on, for example, a consistent hash method. In the node 1 in charge of the message, the signal processing unit 13 performs signal processing and provides a service to the client 2.

なお、ロードバランサ3が存在せず、クライアント2から任意のノード1(振り分け部12)にメッセージを送信することも可能である。また、振り分け部12と信号処理部13とは、同じノード1上に同時に存在してもよいし、別々のノード1上に存在してもよい。
本実施形態の以下の説明では、分散処理システム1000のデータ管理手法として、ノード1の増減時の影響が少ない、コンシステント・ハッシュ法によるデータ管理手法を例として説明する。ただし、コンシステント・ハッシュ法に限定されるものではない。
Note that the load balancer 3 does not exist, and a message can be transmitted from the client 2 to an arbitrary node 1 (distribution unit 12). Further, the distribution unit 12 and the signal processing unit 13 may exist on the same node 1 at the same time, or may exist on different nodes 1.
In the following description of the present embodiment, as a data management method of the distributed processing system 1000, a data management method based on the consistent hash method that is less affected when the number of nodes 1 is increased or decreased will be described as an example. However, it is not limited to the consistent hash method.

<処理概要>
また、本実施形態に係る分散処理システム1000の複数のノード1は、少なくとも2つのクラスタ(通常データ分散処理システム100Aと高負荷データ分散処理システム100B)で構成される。そして、通常データ分散処理システム100Aの各ノード1A(第1のノード)において高負荷データを抽出し、処理能力の高い高負荷データを専門に処理する高負荷データ分散処理システム100Bのノード1B(第2のノード)に抽出した高負荷データを移管する。また、移管先の高負荷データ分散処理システム100Bの各ノード1Bにおいて、高負荷データの負荷が正常値に低減したのを確認して、そのデータを元の通常データ分散処理システム100Aのノード1Aに返還することを特徴とする。
図3は、本実施形態に係る分散処理システム1000を構成する、通常データ分散処理システム100Aと高負荷データ分散処理システム100Bとを示し、分散処理システム1000の全体の処理の流れを説明するための図である。
<Process overview>
Further, the plurality of nodes 1 of the distributed processing system 1000 according to the present embodiment is configured by at least two clusters (normal data distributed processing system 100A and high-load data distributed processing system 100B). Then, each node 1A (first node) of the normal data distributed processing system 100A extracts high load data, and node 1B (first) of the high load data distributed processing system 100B that specially processes high load data with high processing capability. The extracted high load data is transferred to node 2). Further, in each node 1B of the high-load data distribution processing system 100B as the transfer destination, it is confirmed that the load of the high-load data has been reduced to a normal value, and the data is transferred to the node 1A of the original normal data distribution processing system 100A. It is characterized by returning.
FIG. 3 shows a normal data distributed processing system 100A and a high-load data distributed processing system 100B constituting the distributed processing system 1000 according to the present embodiment, for explaining the overall processing flow of the distributed processing system 1000. FIG.

まず、ステップS1において、通常データ分散処理システム100Aの各ノード1Aは、信号処理時においてアクセスされたデータの処理負荷を計測し記憶する。そして、各ノード1Aは、所定の時間間隔毎に、自身のノード負荷(以下、「リソース負荷」と称する場合がある。)を計測するともに、自身のノードAが処理したデータ全体の平均のデータ処理負荷を計算し記憶する。   First, in step S1, each node 1A of the normal data distributed processing system 100A measures and stores a processing load of data accessed during signal processing. Each node 1A measures its own node load (hereinafter sometimes referred to as “resource load”) at predetermined time intervals, and average data of the entire data processed by its own node A. Calculate and store the processing load.

次に、通常データ分散処理システム100Aの各ノード1Aは、ステップS1で収集したリソース負荷やデータ処理負荷に基づき、高負荷データを抽出する(ステップS2)。そして、通常データ分散処理システム100Aの各ノード1Aは、抽出した高負荷データを、高負荷データ分散処理システム100Bに移管する(ステップS3)。   Next, each node 1A of the normal data distributed processing system 100A extracts high load data based on the resource load and data processing load collected in step S1 (step S2). Then, each node 1A of the normal data distribution processing system 100A transfers the extracted high load data to the high load data distribution processing system 100B (step S3).

高負荷データ分散処理システム100Bの各ノード1Bは、高負荷データの処理を継続しつつ、信号処理時においてアクセスされたデータ(高負荷データ)の処理負荷(データ処理負荷)を計測し記憶する(ステップS4)。   Each node 1B of the high-load data distributed processing system 100B measures and stores the processing load (data processing load) of data accessed during signal processing (high-load data) while continuing to process high-load data ( Step S4).

高負荷データ分散処理システム100Bの各ノード1Bは、収集したデータ処理負荷に基づき、負荷が正常値に低減されたデータを正常負荷データとして抽出する(ステップS5)。そして、高負荷データ分散処理システム100Bの各ノード1Bは、抽出した正常負荷データを、通常データ分散処理システム100Aに返還する(ステップS6)。   Each node 1B of the high-load data distributed processing system 100B extracts data whose load has been reduced to a normal value based on the collected data processing load as normal load data (step S5). Then, each node 1B of the high load data distributed processing system 100B returns the extracted normal load data to the normal data distributed processing system 100A (step S6).

このようにすることで、分散処理システム1000において、通常データ分散処理システム100Aの各ノード1Aが、アクセス頻度が多い、処理時間の長い等によりノードに高い負荷を与えるデータ(高負荷データ)を抽出し、処理能力の高い高負荷データを専用に処理する分散処理システム(高負荷データ分散処理システム100B)にそのデータ(高負荷データ)を移管することができる。これにより、移管先の高負荷データ分散処理システム100Bにおいて、高負荷データの処理を継続しつつ、通常データ分散処理システム100Aに高負荷データが存在していた際に問題となる、その他のデータへの信号処理への影響の発生や、非効率なスケールアウトの頻発を抑止することができる。   In this way, in the distributed processing system 1000, each node 1A of the normal data distributed processing system 100A extracts data (high load data) that imposes a high load on the node due to a high access frequency or a long processing time. Then, the data (high load data) can be transferred to a distributed processing system (high load data distributed processing system 100B) that exclusively processes high load data with high processing capability. As a result, in the high-load data distributed processing system 100B as the transfer destination, while continuing the high-load data processing, to the other data that becomes a problem when the high-load data exists in the normal data distributed processing system 100A It is possible to suppress the occurrence of the influence on the signal processing and the frequent occurrence of inefficient scale-out.

また、移管先の高負荷データ分散処理システム100Bにおいて、高負荷データの負荷が正常値に低減したことを確認して、データを元の通常データ分散処理システム100Aに返還することにより、高負荷データを専用に処理するノード1Bの処理負荷を必要以上に高めることなくシステムの運用を継続することができる。   Further, in the high-load data distributed processing system 100B at the transfer destination, it is confirmed that the load of the high-load data has been reduced to a normal value, and the data is returned to the original normal data distributed processing system 100A. The system operation can be continued without unnecessarily increasing the processing load of the node 1B that exclusively processes the.

なお、通常データ分散処理システム100Aと高負荷データ分散処理システム100Bとのシステム間においては、同じID空間(コンシステント・ハッシュのID空間)を用いてデータの移管(返還)を行う。これにより、互いの分散処理システムにおいてノード1(1A,1B)の増減設が発生し、各々の分散処理システムにおいてデータ移管(返還)時の担当ノードが変化しているようなケースでも、新しい担当ノードを特定し、データの移管(返還)を実行することが容易に可能となる。なお、詳細は後記する。   Note that, between the normal data distributed processing system 100A and the high load data distributed processing system 100B, data is transferred (returned) using the same ID space (consistent hash ID space). As a result, even if the nodes 1 (1A, 1B) increase or decrease in each other's distributed processing systems, and the node in charge at the time of data transfer (return) changes in each distributed processing system, a new charge It becomes possible to easily identify a node and execute data transfer (return). Details will be described later.

<各分散処理システムの装置の構成>
次に、本実施形態に係る分散処理システム1000を構成する、通常データ分散処理システム100Aおよび高負荷データ分散処理システム100Bを構成するノード1(1A,1B)について、具体的に説明する。ここでは、通常データ分散処理システム100Aを構成するノード1Aと高負荷データ分散処理システム100Bを構成するノード1Bとを分けて説明する。
<Configuration of each distributed processing system>
Next, the node 1 (1A, 1B) constituting the normal data distributed processing system 100A and the high-load data distributed processing system 100B constituting the distributed processing system 1000 according to the present embodiment will be specifically described. Here, the node 1A constituting the normal data distributed processing system 100A and the node 1B constituting the high-load data distributed processing system 100B will be described separately.

≪通常データ分散処理システム100Aのノード1A≫
図4は、本実施形態に係る通常データ分散処理システム100Aを構成するノード1A(第1のノード)の機能ブロック図である。
<< Node 1A of Normal Data Distributed Processing System 100A >>
FIG. 4 is a functional block diagram of the node 1A (first node) constituting the normal data distributed processing system 100A according to the present embodiment.

ノード1Aは、図2に示したように、ロードバランサ3と通信可能に接続されるともに、クラスタを構成する自身以外の他のノード1(他のノード1Aおよび高負荷データ分散処理システム100Bの各ノード1Bを含む)との通信可能に接続される。また、このノード1Aは、ロードバランサ3を介してクライアント2からメッセージを受け取ると、そのメッセージを、担当するノード1A(自身を含む)に振り分け、そのメッセージの信号処理を実行する。さらに、ノード1Aは、高負荷データを抽出し、高負荷データ分散処理システム100Bのノード1Bに移管する処理を実行する。
このノード1Aは、図4に示すように、制御部10Aと、入出力部20と、記憶部30Aとを含んで構成される。
As shown in FIG. 2, the node 1A is communicably connected to the load balancer 3, and other nodes 1 other than itself constituting the cluster (each of the other nodes 1A and the high load data distributed processing system 100B). Node 1B). Further, when the node 1A receives a message from the client 2 via the load balancer 3, the node 1A distributes the message to the node 1A (including itself) in charge, and executes signal processing of the message. Further, the node 1A executes a process of extracting high load data and transferring it to the node 1B of the high load data distributed processing system 100B.
As shown in FIG. 4, the node 1A includes a control unit 10A, an input / output unit 20, and a storage unit 30A.

入出力部20は、ロードバランサ3や、自身以外の他のノード1(1A,1B)との間の情報の入出力を行う。また、この入出力部20は、通信回線を介して情報の送受信を行う通信インタフェースと、不図示のキーボード等の入力手段やモニタ等の出力手段等との間で入出力を行う入出力インタフェースとから構成される。   The input / output unit 20 inputs / outputs information to / from the load balancer 3 and other nodes 1 (1A, 1B) other than itself. The input / output unit 20 includes a communication interface that transmits and receives information via a communication line, and an input / output interface that performs input / output between an input unit such as a keyboard (not shown) and an output unit such as a monitor. Consists of

記憶部30Aは、ハードディスクやフラッシュメモリ等の記憶手段からなる。この記憶部30Aには、通常データ分散処理システム100Aを構成するノード1Aへのメッセージ(データ)の振り分け処理に用いる、ノード識別子管理テーブル(通常)200A(第1のノード識別子管理情報)および振り分けIDテーブル(通常)250A(第1の振り分けID情報)と、高負荷データ分散処理システム100Bを構成するノード1Bへのメッセージ(データ)の振り分け処理に用いる、ノード識別子管理テーブル(高負荷)200B(第2のノード識別子管理情報)および振り分けIDテーブル(高負荷)250B(第2の振り分けID情報)とを備える。さらに、記憶部30Aには、メッセージの処理対象となるデータ300、ノード1A自身のデータの処理負荷を計測した情報であるデータ処理負荷計測情報(通常)400A(第1のデータ処理負荷計測情報)、および、ノード1A自身のノード負荷(リソース負荷)を計測した情報であるノード負荷計測情報(通常)500Aが記憶される。なお、この記憶部30Aに記憶される各情報についての詳細は後記する。   The storage unit 30A includes storage means such as a hard disk and a flash memory. In the storage unit 30A, a node identifier management table (normal) 200A (first node identifier management information) and a distribution ID used for a message (data) distribution process to the node 1A constituting the normal data distributed processing system 100A Node identifier management table (high load) 200B (first load) used for distribution processing of table (normal) 250A (first distribution ID information) and message (data) to node 1B constituting high load data distribution processing system 100B 2 node identifier management information) and a distribution ID table (high load) 250B (second distribution ID information). Further, in the storage unit 30A, data processing load measurement information (normal) 400A (first data processing load measurement information) that is information obtained by measuring the processing load of the data 300 to be processed by the message and the data of the node 1A itself is stored. And node load measurement information (normal) 500A, which is information obtained by measuring the node load (resource load) of the node 1A itself, is stored. Details of each piece of information stored in the storage unit 30A will be described later.

制御部10Aは、ノード1A全体の制御を司り、ノード識別子管理部11、振り分け部12、信号処理部13(第1の信号処理部)、ノード負荷計測部14および高負荷データ抽出部15を含んで構成される。なお、この制御部10Aは、例えば、記憶部30Aに格納されたプログラムをCPU(Central Processing Unit)(図示省略)がRAM(Random Access Memory)(図示省略)に展開し実行することで実現される。   The control unit 10A controls the entire node 1A, and includes a node identifier management unit 11, a distribution unit 12, a signal processing unit 13 (first signal processing unit), a node load measurement unit 14, and a high load data extraction unit 15. Consists of. The control unit 10A is realized, for example, when a CPU (Central Processing Unit) (not shown) develops and executes a program stored in the storage unit 30A in a RAM (Random Access Memory) (not shown). .

ノード識別子管理部11は、分散処理システム(ここでは、通常データ分散処理システム100A)上のノード情報の管理および各ノード1(1A,1B)が担当するID空間を管理する。
具体的には、ノード識別子管理部11は、自身が属する分散処理システム(ここでは、通常データ分散処理システム100A)へのノードの追加や離脱が発生した場合に、その分散処理システムを構成するノード1(1A)の識別情報を更新し、ノード識別子管理テーブル200(ここでは、ノード識別子管理テーブル(通常)200A)として管理する。
The node identifier management unit 11 manages node information on the distributed processing system (here, the normal data distributed processing system 100A) and manages the ID space that each node 1 (1A, 1B) takes charge of.
Specifically, the node identifier management unit 11 is a node that constitutes a distributed processing system when a node is added or removed from the distributed processing system to which the node identifier management unit 11 belongs (here, the normal data distributed processing system 100A). 1 (1A) identification information is updated and managed as a node identifier management table 200 (here, a node identifier management table (normal) 200A).

図5(a)は、本実施形態に係るノード識別子管理テーブル(通常)200A(第1のノード識別子管理情報)のデータ構成例を示す図である。
図5(a)に示すように、ノード識別子管理テーブル(通常)200Aには、通常データ分散処理システム100Aを構成する各ノード1Aのノード識別子201とアドレス202(例えば、IPアドレス)とが対応付けられて格納される。
FIG. 5A is a diagram showing a data configuration example of a node identifier management table (normal) 200A (first node identifier management information) according to the present embodiment.
As shown in FIG. 5A, the node identifier management table (normal) 200A is associated with the node identifier 201 and the address 202 (for example, IP address) of each node 1A constituting the normal data distributed processing system 100A. Stored.

このノード識別子201は、例えば、当該分散処理システム内において予め設定される特定のノード(例えば、ノード識別子201の昇順に設定)のノード識別子管理部11で付与され、当該分散処理システム内(ここでは、通常データ分散処理システム100A内)の各ノード1(1A)に配信される。なお、このノード識別子201は、コンシステント・ハッシュのID空間において仮想IDを用いる場合、仮想ID毎に付与される。   The node identifier 201 is given by, for example, the node identifier management unit 11 of a specific node (for example, set in ascending order of the node identifier 201) set in advance in the distributed processing system. And distributed to each node 1 (1A) of the normal data distributed processing system 100A). The node identifier 201 is assigned to each virtual ID when a virtual ID is used in the consistent hash ID space.

また、ノード識別子管理部11は、ノード識別子管理テーブル200(ここでは、ノード識別子管理テーブル(通常)200A)の更新(ノード1Aの増減設)に合わせて、ノード1(1A)の担当するID空間情報を更新し、振り分けIDテーブル250(ここでは、振り分けIDテーブル(通常)250A)として管理する。   The node identifier management unit 11 also updates the ID space assigned to the node 1 (1A) in accordance with the update of the node identifier management table 200 (here, the node identifier management table (normal) 200A) (increase or decrease the number of nodes 1A). Information is updated and managed as a distribution ID table 250 (here, a distribution ID table (normal) 250A).

図5(b)は、本実施形態に係る振り分けIDテーブル(通常)250Aのデータ構成例を示す図である。
図5(b)に示すように、振り分けIDテーブル(通常)250には、ノード識別子201に対応付けて、そのノード1(1A)が担当するID空間(担当領域)203が格納される。図5(b)に示す例では、ID空間の全ID数が「0」〜「999」の「1000」であり、例えば、ノード識別子201が「Node1」のノード1Aが、担当するID空間として「0〜199(D=200)」について担当することを示している。なお、「D=200」は、担当するID空間の数(データ数に対応する。)を意味する。
FIG. 5B is a diagram illustrating a data configuration example of the distribution ID table (normal) 250A according to the present embodiment.
As shown in FIG. 5B, the distribution ID table (ordinary) 250 stores an ID space (area in charge) 203 that the node 1 (1A) is responsible for in association with the node identifier 201. In the example shown in FIG. 5B, the total number of IDs in the ID space is “1000” of “0” to “999”. For example, the node 1A whose node identifier 201 is “Node1” is the ID space in charge. This indicates that the person in charge of “0 to 199 (D = 200)” is in charge. “D = 200” means the number of ID spaces in charge (corresponding to the number of data).

ノード識別子管理部11は、自身が属する通常データ分散処理システム100A内の各ノード1Aに共通して保持される、ノード識別子管理テーブル(通常)200Aと振り分けIDテーブル(通常)250Aを管理するとともに、データの移管先となる分散処理システム(高負荷データ分散処理システム100B)内の各ノード1Bに共通して保持される、ノード識別子管理テーブル(高負荷)200Bおよび振り分けIDテーブル(高負荷)250B(図4参照)を、高負荷データ分散処理システム100B(の予め設定される特定のノード等)から取得し、常に最新の状態に更新して保持する。また、通常データ分散処理システム100A内の特権ノードは、高負荷データ分散処理システム100B内の各ノード1Bに対して、最新のノード識別子管理テーブル(通常)200Aおよび振り分けIDテーブル(通常)250Aを送信しておく。このようにすることにより、各分散処理システム内の各ノード1(1A,1B)には、常に、最新の状態の、ノード識別子管理テーブル(通常)200Aおよび振り分けIDテーブル(通常)250A、ノード識別子管理テーブル(高負荷)200Bおよび振り分けIDテーブル(高負荷)250Bが保持されるようにする。   The node identifier management unit 11 manages a node identifier management table (normal) 200A and a distribution ID table (normal) 250A that are commonly held in each node 1A in the normal data distributed processing system 100A to which the node identifier belongs, A node identifier management table (high load) 200B and a distribution ID table (high load) 250B (commonly held in each node 1B in the distributed processing system (high load data distributed processing system 100B) to which data is transferred. 4) is acquired from the high-load data distributed processing system 100B (a specific node set in advance), and is always updated and held in the latest state. Further, the privileged node in the normal data distributed processing system 100A transmits the latest node identifier management table (normal) 200A and the distribution ID table (normal) 250A to each node 1B in the high load data distributed processing system 100B. Keep it. In this way, each node 1 (1A, 1B) in each distributed processing system always has the latest node identifier management table (normal) 200A, distribution ID table (normal) 250A, and node identifier. The management table (high load) 200B and the distribution ID table (high load) 250B are held.

図4に戻り、振り分け部12は、ロードバランサ3等を介してクライアント2から発呼されるメッセージ内の情報(後記する「振り分けキー」)をもとに、信号処理を担当するノード1を特定し、当該ノード1へのメッセージの振り分けを行う。
メッセージは、新規呼(例えば、SIPにおいては、Initial-INVITE)と後続呼(例えば、SIPにおいてはBYE等)に分類でき、振り分け部12は、新規呼と後続呼で異なる処理を実行する。
Returning to FIG. 4, the distribution unit 12 identifies the node 1 that is in charge of signal processing based on the information (“distribution key” described later) in the message that is called from the client 2 via the load balancer 3 or the like. Then, the message distribution to the node 1 is performed.
The message can be classified into a new call (for example, Initial-INVITE in SIP) and a subsequent call (for example, BYE in SIP), and the distribution unit 12 performs different processing for the new call and the subsequent call.

振り分け部12は、受信したメッセージが新規呼の場合、振り分けキーを生成した上で、生成した振り分けキーに基づき、信号処理を担当するノード1(1A,1B)を特定し、当該ノードに転送する。   When the received message is a new call, the distribution unit 12 generates a distribution key, specifies the node 1 (1A, 1B) in charge of signal processing based on the generated distribution key, and transfers it to the node. .

この振り分けキーは、当該メッセージのアクセス先の担当分散処理システム(ここでは、通常データ分散処理システム100Aまたは高負荷データ分散処理システム100Bのいずれか)の識別子(以下、「担当分散システム識別子」と称する。)、ハッシュ値(振り分けID)、データ識別子から構成される。   This distribution key is an identifier (hereinafter referred to as “in-charge distributed system identifier”) of the assigned distributed processing system (in this case, either the normal data distributed processing system 100A or the high load data distributed processing system 100B) to which the message is accessed. .), A hash value (distribution ID), and a data identifier.

担当分散システム識別子には、新規呼においてデフォルトで担当する分散処理システム(ここでは、通常データ分散処理システム100A)を予め決めておき、その分散処理システムを示す担当分散システム識別子が設定される。
ハッシュ値(振り分けID)には、振り分け部12が、新規呼のヘッダ情報等から当該呼をユニークに識別可能な情報(例えば、SIPにおいてはCall−ID等)を抽出してハッシュ関数にかけ、当該呼のコンシステント・ハッシュのID空間におけるハッシュ値を算出し、設定される。
データ識別子は、信号処理部13において新規呼を処理する際に生成され、メッセージに付与される。よって、新規呼を振り分け部12が処理する際には、ブランクとなる。
In the assigned distributed system identifier, a distributed processing system (in this case, the normal data distributed processing system 100A) to be assigned by default in a new call is determined in advance, and the assigned distributed system identifier indicating the distributed processing system is set.
For the hash value (distribution ID), the distribution unit 12 extracts information (for example, Call-ID in SIP) that uniquely identifies the call from the header information of the new call, and applies the hash function to the hash value (distribution ID). A hash value in the ID space of the call's consistent hash is calculated and set.
The data identifier is generated when a new call is processed in the signal processing unit 13 and attached to the message. Therefore, when the distribution unit 12 processes a new call, it becomes blank.

振り分け部12は受信したメッセージが後続呼の場合、予めクライアントにおいて振り分けキーの情報がメッセージに付与されているため(例えば、SIPにおいては、Viaヘッダ等)、その付与された振り分けキーに基づき信号処理を担当するノード1を特定し、当該ノード1に転送する。   When the received message is a subsequent call, since the distribution key information is attached to the message in advance in the client (for example, via header in SIP), the distribution unit 12 performs signal processing based on the assigned distribution key. Is identified and transferred to the node 1.

振り分け部12は、メッセージを受信するとそのメッセージに付与された振り分けキー(担当分散システム識別子+ハッシュ値(振り分けID)+データ識別子)のうち、まず、担当分散システム識別子に基づき、担当する分散処理システム(ここでは、通常データ分散処理システム100Aか高負荷データ分散処理システム100Bのいずれか)の振り分けIDテーブル250とノード識別子管理テーブル200とを特定する。そして、振り分け部12は、その特定した振り分けIDテーブル250上の各ノード1の担当領域の情報と、ハッシュ値(振り分けID)の情報とに基づき、当該メッセージを担当するノード1を抽出する。続いて、振り分け部12は、担当するノード1のアドレスをノード識別子管理テーブル200から取得し、担当するノード1に対してそのメッセージを転送する。   Upon receiving a message, the distribution unit 12 first takes charge of the distributed processing system in charge based on the assigned distributed system identifier among the assigned keys (the assigned distributed system identifier + the hash value (distributed ID) + the data identifier) assigned to the message. Here, the distribution ID table 250 and the node identifier management table 200 of either the normal data distributed processing system 100A or the high load data distributed processing system 100B are specified. Then, the distribution unit 12 extracts the node 1 in charge of the message based on the information on the area in charge of each node 1 on the specified distribution ID table 250 and the information on the hash value (distribution ID). Subsequently, the distribution unit 12 acquires the address of the node 1 in charge from the node identifier management table 200 and transfers the message to the node 1 in charge.

信号処理部13(第1の信号処理部)は、自身のノード1Aが担当するデータに関するメッセージの信号処理を実行するとともに、その信号処理においてアクセスするデータの処理負荷を計測する。
また、信号処理部13は、新規呼が担当するノード1に到着したとき、当該データのデータ識別子を決定した上で、当該データのメタデータ310を設定する。このメタデータ310は、図6(a)に示すように、記憶部30Aに記憶されるデータ300として、実際のアクセスの対象となる実データ320に対応付けて記憶される。
The signal processing unit 13 (first signal processing unit) executes signal processing of messages related to data handled by its own node 1A and measures the processing load of data accessed in the signal processing.
Further, when the signal processing unit 13 arrives at the node 1 in charge of the new call, the signal processing unit 13 determines the data identifier of the data and sets the metadata 310 of the data. As shown in FIG. 6A, the metadata 310 is stored as data 300 stored in the storage unit 30A in association with actual data 320 to be actually accessed.

メタデータ310に設定する情報は、図6(b)に示すように、振り分けキー、データ識別子、担当分散システム識別子、データ生成時分散システム識別子、高負荷データ判定回数である。
ここで、データ生成時分散システム識別子には、メッセージが新規呼の場合に、そのメッセージの対象となるデータを最初に処理したノード1が属する分散処理システム(通常の処理では、通常データ分散処理システム100A)の識別子(担当分散システム識別子)が格納される。
高負荷データ判定回数には、メッセージの処理対象となるデータが高負荷データと判定された回数が格納される。なお、高負荷データ判定回数の詳細は後記する。
As shown in FIG. 6B, information set in the metadata 310 includes a distribution key, a data identifier, a responsible distributed system identifier, a distributed system identifier at the time of data generation, and a high load data determination count.
Here, in the data generation distributed system identifier, when the message is a new call, the distributed processing system to which the node 1 that first processed the data targeted by the message belongs (in normal processing, the normal data distributed processing system). 100A) (responsible distributed system identifier) is stored.
The high load data determination count stores the number of times that the data to be processed by the message is determined to be high load data. Details of the high load data determination count will be described later.

信号処理部13は、メッセージを受信し信号処理するデータについて、当該データの処理負荷(データ処理負荷)を計測する。そして、信号処理部13は、その計測結果を、データ処理負荷計測情報400(ここでは、データ処理負荷計測情報(通常)400A)として、記憶部30Aに格納する。   The signal processing unit 13 measures the processing load (data processing load) of the data that receives the message and performs signal processing. Then, the signal processing unit 13 stores the measurement result as data processing load measurement information 400 (here, data processing load measurement information (normal) 400A) in the storage unit 30A.

図7は、本実施形態に係るデータ処理負荷計測情報(通常)400A(第1のデータ処理負荷計測情報)のデータ構成例を示す図である。
信号処理部13は、データ処理負荷として、ロック取得時刻、ロック解放時刻、データサイズを計測し、図7(a)に示すように、データ処理負荷計測情報(通常)400Aとして、データ識別子に対応付け、ロック取得時刻、ロック解放時刻、ロック取得期間、データサイズの各値を格納する。
ここで、ロック取得時刻は、データの不整合を排除するために、他のトランザクションからの更新処理を受け付けないようにする処理(ロック)の開始時刻である。ロック解放時刻は、ロック(更新処理を受け付けない)を解除した時刻である。ロック取得期間は、ロック開始時刻からロック解放時刻までの時間を意味し、信号処理部13により算出され格納される。データサイズは、信号処理部13が処理したデータのデータ量が格納される。ここで、負荷が高いデータ程、ロック取得期間が長くなり、データサイズが大きいものとなる。
FIG. 7 is a diagram showing a data configuration example of data processing load measurement information (normal) 400A (first data processing load measurement information) according to the present embodiment.
The signal processing unit 13 measures the lock acquisition time, the lock release time, and the data size as the data processing load, and corresponds to the data identifier as data processing load measurement information (normal) 400A as shown in FIG. Value, lock acquisition time, lock release time, lock acquisition period, and data size are stored.
Here, the lock acquisition time is a start time of processing (lock) for preventing update processing from other transactions from being accepted in order to eliminate data inconsistency. The lock release time is the time when the lock (update processing is not accepted) is released. The lock acquisition period means the time from the lock start time to the lock release time, and is calculated and stored by the signal processing unit 13. The data size stores the amount of data processed by the signal processing unit 13. Here, the higher the data load, the longer the lock acquisition period and the larger the data size.

信号処理部13が収集するデータ処理負荷のパラメータは、データ処理負荷の計測が可能なパラメータであればよく、図7(a)に示すパラメータに限定されるものではない。例えば、図7(b)に示すように、ロック取得時刻、ロック解放時刻に加えて、CPUの処理時間(図7(b)においては、「CPU時間」と記載する。)、CPU使用率を計測するようにしてもよい。
なお、本実施形態においては、以降においては、図7(a)に示す、ロック取得期間を、データ処理負荷を示すパラメータとして利用する例として説明する。
The parameter of the data processing load collected by the signal processing unit 13 may be any parameter that allows measurement of the data processing load, and is not limited to the parameter illustrated in FIG. For example, as shown in FIG. 7B, in addition to the lock acquisition time and the lock release time, the CPU processing time (indicated as “CPU time” in FIG. 7B) and the CPU usage rate are set. You may make it measure.
In the present embodiment, hereinafter, the lock acquisition period shown in FIG. 7A will be described as an example of using as a parameter indicating the data processing load.

図4に戻り、ノード負荷計測部14は、所定の周期(所定の第1の期間)で、自身のノード1Aのノード負荷(リソース負荷)を計測するとともに、当該所定の周期でのデータ処理負荷のデータ毎の平均値を算出し、ノード負荷計測情報(通常)500A(図8参照)として記憶部30Aに格納する。また、ノード負荷計測部14は、所定の周期で、生成したノード負荷計測情報(通常)500Aを、高負荷データ分散処理システム100Bの各ノード1Bに送信する。   Returning to FIG. 4, the node load measuring unit 14 measures the node load (resource load) of its own node 1 </ b> A in a predetermined cycle (predetermined first period), and the data processing load in the predetermined cycle. The average value for each data is calculated and stored in the storage unit 30A as node load measurement information (normal) 500A (see FIG. 8). In addition, the node load measurement unit 14 transmits the generated node load measurement information (normal) 500A to each node 1B of the high load data distribution processing system 100B at a predetermined cycle.

図8は、本実施形態に係るノード負荷計測情報(通常)500Aのデータ構成例を示す図である。
ノード負荷計測部14は、自身のノード1AのOSのリソース情報収集コマンドを利用し、CPU使用率、メモリ使用率等のノード1Aのリソース負荷が推定可能なパラメータを計測する。
ノード負荷計測部14は、例えば、10秒間隔でリソース負荷を収集する。図8においては、周期識別番号が「1」の期間、収集開始時刻が「10:14:50」(10時14分50秒、以下の記載形式も同様)を超えた時刻から収集時刻「10:15:00」までの期間での、CPU使用率とメモリ使用率とを、リソース負荷として計測する。
また、ノード負荷計測部14は、同じ所定の周期に含まれる、データ処理負荷計測情報(通常)400Aを抽出し、各データの平均値として、平均ロック取得期間、平均アクセス頻度、平均データサイズを計算してノード負荷計測情報(通常)500Aに格納する。
FIG. 8 is a diagram illustrating a data configuration example of node load measurement information (normal) 500A according to the present embodiment.
The node load measuring unit 14 uses a resource information collection command of the OS of its own node 1A, and measures parameters that can estimate the resource load of the node 1A, such as a CPU usage rate and a memory usage rate.
For example, the node load measuring unit 14 collects the resource load at intervals of 10 seconds. In FIG. 8, the collection time “10” from the time when the period identification number is “1” and the collection start time exceeds “10:14:50” (10:14:50, also in the following description format). CPU utilization and memory utilization during the period up to “15:00” are measured as resource loads.
In addition, the node load measurement unit 14 extracts the data processing load measurement information (usually) 400A included in the same predetermined cycle, and sets the average lock acquisition period, the average access frequency, and the average data size as the average value of each data. Calculate and store in node load measurement information (normal) 500A.

高負荷データ抽出部15は、ノード負荷計測情報(通常)500Aに基づき、自身のノード1Aが担当するデータの中から高負荷データを抽出し、抽出した高負荷データを、高負荷データ分散処理システム100Bに移管する処理を実行する。
なお、高負荷データ抽出部15は、各周期で発生したデータ処理(データのロック取得時刻、ロック解放時刻のいずれか)が当該周期内に含まれるものの中から、処理負荷の高いデータを高負荷データとして抽出する。
The high load data extraction unit 15 extracts the high load data from the data handled by its own node 1A based on the node load measurement information (normal) 500A, and the extracted high load data is converted into the high load data distributed processing system. The process of transferring to 100B is executed.
The high-load data extraction unit 15 loads data with a high processing load from among data processing (either data lock acquisition time or lock release time) that occurs in each cycle within the cycle. Extract as data.

高負荷データ抽出部15が、高負荷データを抽出するための手法は、特に限定されるものではなく、例えば、以下の手法が考えられる。
(高負荷データ抽出手法の例1)
当該周期における全データのデータ処理負荷計測情報(通常)400Aについて、個々のロック取得期間、データサイズ等の値と、当該周期以前の周期のノード負荷計測情報(通常)500Aにおいて対応する、平均ロック取得期間、平均データサイズ等の値を比較し、その乖離幅(超過量)が所定の閾値を超えていた場合、そのデータを高負荷データとして抽出する。
(高負荷データ抽出手法の例2)
当該周期における全データのデータ処理負荷計測情報(通常)400Aについて、予め指定したパラメータ毎の上限値と、当該周期におけるパラメータの値を比較し、上限値を超えたパラメータが検出された場合に、そのデータを高負荷データとして抽出する。
(高負荷データ抽出手法の例3)
当該周期におけるリソース負荷(CPU使用率やメモリ使用率等)が、それ以前の周期のリソース負荷と比較し、その乖離幅(超過量)が所定の閾値を超えていた場合に、当該周期にアクセスされた全てのデータを高負荷データとみなして抽出する。
The method for the high load data extraction unit 15 to extract the high load data is not particularly limited, and for example, the following methods can be considered.
(Example 1 of high-load data extraction method)
For the data processing load measurement information (normal) 400A of all data in the cycle, the average lock corresponding to the individual lock acquisition period, data size, etc., and the node load measurement information (normal) 500A of the cycle before the cycle Values such as the acquisition period and the average data size are compared, and if the deviation width (excess amount) exceeds a predetermined threshold, the data is extracted as high load data.
(Example 2 of high-load data extraction method)
For the data processing load measurement information (usually) 400A of all data in the cycle, the upper limit value for each parameter specified in advance is compared with the parameter value in the cycle, and when a parameter exceeding the upper limit value is detected, The data is extracted as high load data.
(Example 3 of high-load data extraction method)
When the resource load (CPU usage rate, memory usage rate, etc.) in the cycle is compared with the resource load of the previous cycle and the deviation (excess amount) exceeds a predetermined threshold, the cycle is accessed. All the extracted data is extracted as high load data.

高負荷データ抽出部15が比較対象とする周期やパラメータ、設定する閾値等は、システム毎に適切な設定値が異なり、また、複数の組み合わせでもよいため、特に限定するものではない。また、当該周期において、複数のアクセスがあったデータについては、高負荷データと判定されるデータと、判定されないデータとが混在するケースも考えられるが、一度でも高負荷と判定されれば、高負荷データと判定するようにしてもよいし、1つのデータに関して、高負荷データであるとした判定と、非判定との割合を勘案して、最終的に高負荷データとするか否かの判定を行うようにしてもよい。この高負荷の判定、非判定の割合についても、特に限定するものではない。
なお、以下においては、(高負荷データ判定手法の例1)を適用した場合を例に、後記する図12において詳細に説明する。
The period and parameters to be compared by the high-load data extraction unit 15, the threshold value to be set, and the like are not particularly limited because appropriate setting values differ for each system and a plurality of combinations may be used. In addition, for data that has been accessed multiple times in the cycle, there may be a case where data determined as high load data and data not determined are mixed, but if it is determined as high load once, You may make it determine with load data, and the determination of whether it is finally made into high load data in consideration of the ratio of the determination that it is high load data about one data, and the non-determination May be performed. The ratio of the high load determination and non-determination is not particularly limited.
In the following, a case where (Example 1 of the high load data determination method) is applied will be described in detail with reference to FIG.

また、高負荷データ抽出部15が、抽出した高負荷データを、高負荷データ分散処理システム100Bに移管する際に実行する、移管先のノード1Bの決定処理については、図13を参照して後記する。
なお、高負荷データ抽出部15は、高負荷データを高負荷データ分散処理システム100Bに移管する際には、そのデータ(高負荷データ)のメタデータ310(図6(b)参照)の担当分散システム識別子を、図9に示すように、高負荷データ分散処理システム100Bを示す「2」に変更して、当該データを送信する。
Further, the determination process of the transfer destination node 1B, which is executed when the high load data extraction unit 15 transfers the extracted high load data to the high load data distribution processing system 100B, will be described later with reference to FIG. To do.
When the high load data is transferred to the high load data distribution processing system 100B, the high load data extraction unit 15 is responsible for sharing the metadata 310 (see FIG. 6B) of the data (high load data). As shown in FIG. 9, the system identifier is changed to “2” indicating the high load data distribution processing system 100B, and the data is transmitted.

このように、本実施形態に係る通常データ分散処理システム100Aの各ノード1Aは、高負荷データを抽出して、処理能力の高い高負荷データ分散処理システム100Bのノード1Bにその高負荷データを移管する。これにより、各ノード1Aにおいて、高負荷データが存在する際に問題となる、その他のデータへの信号処理への影響の発生や、非効率なスケールアウトの頻発を抑止することができる。   As described above, each node 1A of the normal data distributed processing system 100A according to the present embodiment extracts high load data and transfers the high load data to the node 1B of the high load data distributed processing system 100B having a high processing capability. To do. As a result, in each node 1A, it is possible to suppress the occurrence of influence on signal processing on other data and the frequent occurrence of inefficient scale-out, which are problems when high-load data exists.

≪高負荷データ分散処理システム100Bのノード1B≫
次に、高負荷データ分散処理システム100Bのノード1B(第2のノード)について説明する。
図10は、本実施形態に係る高負荷データ分散処理システム100Bを構成するノード1Bの機能ブロック図である。なお、図4において示した通常データ分散処理システム100Aのノード1Aと、同一の機能を備える構成は、同一の符号と名称を付し、説明を省略する。
<< Node 1B of High Load Data Distributed Processing System 100B >>
Next, the node 1B (second node) of the high load data distribution processing system 100B will be described.
FIG. 10 is a functional block diagram of the node 1B constituting the high-load data distributed processing system 100B according to the present embodiment. In addition, the node 1A of the normal data distributed processing system 100A illustrated in FIG. 4 and the configuration having the same function are denoted by the same reference numerals and names, and description thereof is omitted.

ノード1Bは、図2に示したように、ロードバランサ3と通信可能に接続されるともに、クラスタを構成する自身以外の他のノード1(他のノード1Bおよび通常データ分散処理システム100Aの各ノード1Aを含む)と通信可能に接続される。また、このノード1Bは、ロードバランサ3を介してクライアント2からメッセージを受け取ると、そのメッセージを、担当するノード1B(自身を含む)に振り分け、そのメッセージの信号処理を実行する。さらに、ノード1Bは、通常データ分散処理システム100Aから高負荷データの移管を受け処理を継続するとともに、当該高負荷データの負荷が低減し、所定の正常値以下となった場合に、そのデータを正常負荷データとして抽出し、通常データ分散処理システム100Aに返還する。
このノード1Bは、図10に示すように、制御部10Bと、入出力部20と記憶部30Bとを含んで構成される。
As shown in FIG. 2, the node 1B is connected to the load balancer 3 so as to be communicable, and other nodes 1 other than itself constituting the cluster (other nodes 1B and each node of the normal data distributed processing system 100A) 1A (including 1A). In addition, when the node 1B receives a message from the client 2 via the load balancer 3, the node 1B distributes the message to the node 1B (including itself) in charge, and executes signal processing of the message. Further, the node 1B receives the high-load data from the normal data distributed processing system 100A and continues the process, and when the load of the high-load data is reduced to a predetermined normal value or less, the data is transferred to the node 1B. Extracted as normal load data and returned to the normal data distributed processing system 100A.
As shown in FIG. 10, the node 1B includes a control unit 10B, an input / output unit 20, and a storage unit 30B.

ここで、高負荷データ分散処理システム100Bのノード1Bの記憶部30Bには、自身が属する高負荷データ分散処理システム100Bのノード識別子管理テーブル(高負荷)200Bおよび振り分けIDテーブル(高負荷)250Bを備えるとともに、負荷が低減したデータ(正常負荷データ)の返還先となる通常データ分散処理システム100Aの、最新のノード識別子管理テーブル(通常)200Aおよび振り分けIDテーブル250Aをノード識別子管理部11が取得し、自身の記憶部30Bに記憶している。さらに、通常データ分散処理システム100Aのノード1Aそれぞれから、ノード負荷計測情報(通常)500Aを受信し、自身の記憶部30Bに記憶している。
また、高負荷データ分散処理システム100Bのノード1Bの信号処理部13(第2の信号処理部)は、自身のノード1Bが担当するデータに関するメッセージの信号処理を実行するとともに、その信号処理においてアクセスするデータの処理負荷を計測し、その計測結果をデータ処理負荷計測情報(高負荷)400B(第2のデータ処理負荷計測情報)として記憶部30Bに記憶している。
Here, the storage unit 30B of the node 1B of the high load data distribution processing system 100B includes a node identifier management table (high load) 200B and a distribution ID table (high load) 250B of the high load data distribution processing system 100B to which the node belongs. In addition, the node identifier management unit 11 obtains the latest node identifier management table (normal) 200A and the distribution ID table 250A of the normal data distributed processing system 100A that is a return destination of data with reduced load (normal load data). , Stored in its own storage unit 30B. Furthermore, node load measurement information (normal) 500A is received from each node 1A of the normal data distributed processing system 100A and stored in its own storage unit 30B.
In addition, the signal processing unit 13 (second signal processing unit) of the node 1B of the high-load data distributed processing system 100B executes signal processing of messages related to data handled by the node 1B and accesses in the signal processing. The processing load of the data to be measured is measured, and the measurement result is stored in the storage unit 30B as data processing load measurement information (high load) 400B (second data processing load measurement information).

正常負荷データ抽出部16は、通常データ分散処理システム100Aのノード1Aそれぞれから、ノード負荷計測情報(通常)500Aを受信し、自身の記憶部30Bに記憶しておく。
また、正常負荷データ抽出部16は、高負荷データについてのアクセスが減少する等により、ノード1に対する負荷が低減したデータを正常負荷データとして抽出する。そして、正常負荷データ抽出部16は、抽出した正常負荷データを、通常データ分散処理システム100Aに返還する処理を実行する。
The normal load data extraction unit 16 receives node load measurement information (normal) 500A from each node 1A of the normal data distributed processing system 100A and stores it in its own storage unit 30B.
Further, the normal load data extraction unit 16 extracts data with a reduced load on the node 1 as normal load data due to a decrease in access to high load data. Then, the normal load data extraction unit 16 executes a process of returning the extracted normal load data to the normal data distributed processing system 100A.

正常負荷データ抽出部16は、発生したデータ処理(データのロック取得時刻、ロック解放時刻のいずれか)が、所定の期間(所定の第2の期間)内に含まれるものの中から、処理負荷が低減したデータを正常負荷データとして抽出する。   The normal load data extraction unit 16 determines whether the generated data processing (either data lock acquisition time or lock release time) is included in a predetermined period (predetermined second period). The reduced data is extracted as normal load data.

正常負荷データ抽出部16が、正常負荷データを抽出するための手法は、特に限定されるものではなく、例えば、以下の手法が考えられる。
(正常負荷データ抽出手法の例1)
当該所定の期間における全データのデータ処理負荷計測情報(高負荷)400Bについて、個々のロック取得期間、データサイズ等の値と、返還先となる通常データ分散処理システム100Aにおいて担当領域を同じくするノード1Aの任意の周期のノード負荷計測情報(通常)500Aに記憶された、対応する平均ロック取得期間、平均データサイズ等の値を比較する。そして、正常負荷データ抽出部16は、高負荷データ分散処理システム100Bのデータ処理負荷計測情報(高負荷)400Bが、返還先となる通常データ分散処理システム100Aの対応するパラメータの平均値以下だった場合、そのデータを正常負荷データとして抽出する。
(正常負荷データ抽出手法の例2)
当該所定の期間における全データのデータ処理負荷計測情報(高負荷)400Bについて、予め指定したパラメータ毎の正常値と比較し、正常値以下であれば、そのデータを正常負荷データとして抽出する。
The method for the normal load data extraction unit 16 to extract normal load data is not particularly limited, and for example, the following methods can be considered.
(Example 1 of normal load data extraction method)
For the data processing load measurement information (high load) 400B for all data in the predetermined period, the values such as the individual lock acquisition period, data size, etc., and the same area in charge in the normal data distributed processing system 100A as the return destination The values of the corresponding average lock acquisition period, average data size, and the like stored in the node load measurement information (ordinary) 500A of an arbitrary period of 1A are compared. In the normal load data extraction unit 16, the data processing load measurement information (high load) 400B of the high load data distributed processing system 100B is equal to or less than the average value of the corresponding parameter of the normal data distributed processing system 100A as the return destination. In this case, the data is extracted as normal load data.
(Example 2 of normal load data extraction method)
The data processing load measurement information (high load) 400B of all data in the predetermined period is compared with a normal value for each parameter specified in advance, and if it is less than the normal value, the data is extracted as normal load data.

正常負荷データ抽出部16が比較対象とする任意の期間、返還先のノード負荷の選択周期、選択するパラメータ、正常値は、システム毎に適切な設定値が異なり、また、複数の組み合わせでもよいため、特に限定するものではない。また、所定の期間において、複数のアクセスがあったデータについては、正常負荷データと判定されるデータと、判定されないデータとが混在するケースも考えられるが、一度でも正常負荷と判定されなかったら、正常負荷と判定しないようにしてもよいし、1つのデータに関して、正常負荷データであるとした判定と、非判定との割合を勘案して、最終的に正常負荷データとするか否かの判定を行うようにしてもよい。この正常負荷の判定、非判定の割合についても、特に限定するものではない。なお、この正常負荷データの抽出処理の具体例については、図17において詳細に説明する。   Because the normal load data extraction unit 16 compares the arbitrary period to be compared, the node load selection cycle of the return destination, the parameter to be selected, and the normal value, different set values are appropriate for each system, and a plurality of combinations may be used. There is no particular limitation. In addition, for data that has been accessed multiple times in a predetermined period, there may be a case where data determined as normal load data and data not determined are mixed, but if it is not determined as normal load even once, It may not be determined that the load is normal, and it is determined whether or not the load data is finally determined as normal load data in consideration of the ratio between the determination that the data is normal load data and the non-determination. May be performed. The ratio of normal load determination and non-determination is not particularly limited. A specific example of the normal load data extraction process will be described in detail with reference to FIG.

また、正常負荷データ抽出部16は、高負荷データとして移管されている期間が長く、当該データのメタデータの高負荷データ判定回数が多いデータ(高負荷データ判定回数が所定の閾値を超えたデータ)については、削除する等の判断を実行してもよい。   Further, the normal load data extraction unit 16 has a long period transferred as high load data, and has a large number of high load data determination times in the metadata of the data (data whose high load data determination number exceeds a predetermined threshold value). ) May be deleted.

さらに、正常負荷データ抽出部16が、抽出した正常負荷データを、通常データ分散処理システム100Aに返還する際に実行する、返還先のノード1Aの決定処理については、後記する。なお、正常負荷データ抽出部16は、正常負荷データを通常データ分散処理システム100Aに返還する際には、そのデータ(正常負荷データ)のメタデータ(図12(b)参照)の担当分散システム識別子を、図18(b)に示すように、通常データ分散処理システム100Aを示す「1」に変更するとともに、メタデータの高負荷データ判定回数をカウントアップして、当該データを送信する。   Further, the determination process of the return destination node 1A executed when the normal load data extraction unit 16 returns the extracted normal load data to the normal data distributed processing system 100A will be described later. When the normal load data is returned to the normal data distributed processing system 100A, the normal load data extraction unit 16 is in charge of the distributed system identifier of the metadata of the data (normal load data) (see FIG. 12B). Is changed to “1” indicating the normal data distributed processing system 100A as shown in FIG. 18B, and the number of high load data determination times of the metadata is counted up and the data is transmitted.

このように、本実施形態に係る高負荷データ分散処理システム100Bの各ノード1Bは、高負荷データの負荷が正常値に低減したことを確認して、データを元の通常データ分散処理システム100Aに返還することができる。よって、高負荷データを専用に処理する高負荷データ分散処理システム100Bを構成するノード1Bの処理負荷を必要以上に高めることなくシステムの運用を継続することができる。   As described above, each node 1B of the high load data distribution processing system 100B according to the present embodiment confirms that the load of the high load data has been reduced to the normal value, and transfers the data to the original normal data distribution processing system 100A. It can be returned. Therefore, the operation of the system can be continued without increasing the processing load of the node 1B constituting the high load data distributed processing system 100B that exclusively processes high load data.

<処理の流れ>
次に、本実施形態に係る分散処理システム1000が実行する処理の流れについて説明する。なお、分散処理システム1000全体の概略の処理の流れは、図3を参照して説明したため、ここでは、通常データ分散処理システム100Aのノード1Aが実行する処理の流れと、高負荷データ分散処理システム100Bのノード1Bが実行する処理の流れについて、詳細に説明する。
<Process flow>
Next, the flow of processing executed by the distributed processing system 1000 according to this embodiment will be described. The general processing flow of the entire distributed processing system 1000 has been described with reference to FIG. 3, and here, the processing flow executed by the node 1A of the normal data distributed processing system 100A and the high-load data distributed processing system The flow of processing executed by the node 1B of 100B will be described in detail.

≪ノード1Aの処理≫
図11は、本実施形態に係る通常データ分散処理システム100Aの各ノード1Aが実行する処理の流れを示すフローチャートである。
なお、通常データ分散処理システム100Aのノード1A(ノード識別子管理部11)は、自身が属する通常データ分散処理システム100Aのノード識別子管理テーブル(通常)200Aおよび振り分けIDテーブル250Aに加えて、高負荷データ分散処理システム100Bの最新の、ノード識別子管理テーブル(高負荷)200Bおよび振り分けIDテーブル250Bを取得し記憶部30Aに記憶しているものとする。
また、ノード1A(信号処理部13)は、自身のノード1Aが担当するデータに関するメッセージの信号処理を実行した際に、当該データの処理負荷を計測し、その計測結果をデータ処理負荷計測情報(通常)400A(図6(a)参照)として記憶部30Aに記憶しているものとする。
<< Process of Node 1A >>
FIG. 11 is a flowchart showing the flow of processing executed by each node 1A of the normal data distributed processing system 100A according to this embodiment.
Note that the node 1A (node identifier management unit 11) of the normal data distributed processing system 100A has a high load data in addition to the node identifier management table (normal) 200A and the distribution ID table 250A of the normal data distributed processing system 100A to which it belongs. It is assumed that the latest node identifier management table (high load) 200B and distribution ID table 250B of the distributed processing system 100B are acquired and stored in the storage unit 30A.
Further, when the node 1A (signal processing unit 13) executes signal processing of a message related to data handled by its own node 1A, the node 1A measures the processing load of the data, and the measurement result is obtained as data processing load measurement information ( It is assumed that it is stored in the storage unit 30A as 400A (refer to FIG. 6A).

図11に示すように、まず、ノード1Aのノード負荷計測部14は、所定の時間(所定の周期:所定の第1の期間)が経過したかを判定し(ステップS20)、所定の時間が経過していなければ(ステップS20→No)、所定の時間が経過するまで待つ。一方、ノード負荷計測部14は、所定の時間(周期)が経過した場合には、次のステップS21に進む。   As shown in FIG. 11, first, the node load measuring unit 14 of the node 1A determines whether a predetermined time (predetermined period: predetermined first period) has elapsed (step S20), and the predetermined time If it has not elapsed (step S20 → No), it waits until a predetermined time elapses. On the other hand, the node load measuring unit 14 proceeds to the next step S21 when a predetermined time (cycle) has elapsed.

ステップS21において、ノード負荷計測部14は、自身のノード1Aのノード負荷(リソース負荷)を計測するとともに、記憶部30A内のデータ処理負荷計測情報(通常)400Aを参照し、データ処理負荷のデータ毎のパラメータの平均値を算出し、ノード負荷計測情報(通常)500A(図8参照)を生成して記憶部30Aに格納する。また、ノード負荷計測部14は、生成したノード負荷計測情報(通常)500Aを、高負荷データ分散処理システム100Bの各ノード1Bに送信する。
なお、ここでは、図8に示すノード負荷計測情報(通常)500Aが、ノード負荷計測部14により生成されたものとして、以下説明する。
In step S21, the node load measuring unit 14 measures the node load (resource load) of its own node 1A, and refers to the data processing load measurement information (normal) 400A in the storage unit 30A, and the data of the data processing load. The average value of each parameter is calculated, node load measurement information (normal) 500A (see FIG. 8) is generated and stored in the storage unit 30A. In addition, the node load measurement unit 14 transmits the generated node load measurement information (normal) 500A to each node 1B of the high load data distribution processing system 100B.
In the following description, it is assumed that the node load measurement information (normal) 500A shown in FIG. 8 is generated by the node load measurement unit 14.

次に、ノード1Aの高負荷データ抽出部15は、ノード負荷計測情報(通常)500Aに基づき、各所定の時間(周期)内において信号処理されたデータの中から、高負荷データを抽出する(ステップS22)。ここでは、前記した(高負荷データ判定手法の例1)を適用した場合を例にして説明する。   Next, the high load data extraction unit 15 of the node 1A extracts high load data from the data subjected to signal processing within each predetermined time (cycle) based on the node load measurement information (normal) 500A ( Step S22). Here, a case where the above (Example 1 of high load data determination method) is applied will be described as an example.

図12は、ノード1Aの高負荷データ抽出部15による、高負荷データの抽出処理を説明するための図である。図12(a)は、当該周期(ここでは、周期識別番号「3」に相当)に含まれるデータ処理負荷計測情報(通常)400Aを示す。また、図12(b)は、ノード負荷計測情報(通常)500Aを示している。
ここでは、当該周期(高負荷データを抽出しようとする周期)を周期識別番号「3」で示される、「10:15:10〜10:15:20」とし、比較対象の周期を周期識別番号「1」で示される、「10:14:50〜10:15:00」とする。また、比較対象のパラメータをロック取得期間とする。この場合、図12(a)に示す、データ処理負荷計測情報(通常)400Aの各データのロック取得期間を参照し、そのロック取得期間が、図12(b)に示すノード負荷計測情報(通常)500Aの周期識別番号「1」の平均ロック取得期間「7msec」と比較する。そして、高負荷データ抽出部15は、そのデータのロック取得期間と平均ロック取得期間との乖離幅(超過量)の閾値として設定された「20msec」を超えるか否かを判定する。この場合、符号αで示すロック取得期間が「106msec」のデータが、高負荷データとして抽出される。
FIG. 12 is a diagram for explaining high-load data extraction processing by the high-load data extraction unit 15 of the node 1A. FIG. 12A shows data processing load measurement information (ordinary) 400A included in the period (here, corresponding to the period identification number “3”). FIG. 12B shows node load measurement information (normal) 500A.
Here, the cycle (cycle where high load data is to be extracted) is indicated by cycle identification number “3”, “10:15:10 to 10:15:20”, and the cycle to be compared is the cycle identification number. It is assumed that “10:14:50 to 10:15:00” indicated by “1”. The comparison target parameter is a lock acquisition period. In this case, referring to the lock acquisition period of each data in the data processing load measurement information (normal) 400A shown in FIG. 12A, the lock acquisition period is the node load measurement information (normal) shown in FIG. ) Compare with the average lock acquisition period “7 msec” of the cycle identification number “1” of 500A. Then, the high-load data extraction unit 15 determines whether or not it exceeds “20 msec” set as a threshold value of a deviation width (excess amount) between the lock acquisition period and the average lock acquisition period of the data. In this case, data having a lock acquisition period “106 msec” indicated by the symbol α is extracted as high load data.

図11に戻り、次に、高負荷データ抽出部15は、ステップS23において、移管対象として抽出されたデータ(高負荷データ)のメタデータ310の担当分散システム識別子を、通常データ分散処理システム100Aを示す値「1」(図6(b)参照)から、高負荷データ分散処理システム100Bを示す値「2」(図9(b)参照)に変更する。   Returning to FIG. 11, the high load data extraction unit 15 then assigns the assigned distributed system identifier of the metadata 310 of the data (high load data) extracted as the transfer target in step S23 to the normal data distributed processing system 100A. The value “1” shown (see FIG. 6B) is changed to the value “2” (see FIG. 9B) indicating the high-load data distributed processing system 100B.

続いて、高負荷データ抽出部15は、移管する高負荷データを担当する高負荷データ分散処理システム100Bのノード1Bを、記憶部30A内の、ノード識別子管理テーブル(高負荷)200Bおよび振り分けIDテーブル250Bを参照して特定し、特定したノードBに、当該データ(高負荷データ)の複製データを送信する(ステップS24)。   Subsequently, the high load data extraction unit 15 converts the node 1B of the high load data distributed processing system 100B in charge of the high load data to be transferred into a node identifier management table (high load) 200B and a distribution ID table in the storage unit 30A. The specified data is identified with reference to 250B, and the replicated data of the data (high load data) is transmitted to the identified node B (step S24).

図13は、移管する高負荷データを担当する高負荷データ分散処理システム100Bのノード1Bを特定する処理を説明するための図である。ここで、図13(a)は、通常データ分散処理システム100Aのノード識別子管理テーブル(通常)200Aを示し、図13(b)は、通常データ分散処理システム100Aの振り分けIDテーブル(通常)250Aを示す。また、図13(c)は、高負荷データ分散処理システム100Bのノード識別子管理テーブル(高負荷)200Bを示し、図13(d)は、高負荷データ分散処理システム100Bの振り分けIDテーブル(高負荷)250Bを示す。   FIG. 13 is a diagram for explaining processing for specifying the node 1B of the high-load data distributed processing system 100B in charge of high-load data to be transferred. 13A shows the node identifier management table (normal) 200A of the normal data distributed processing system 100A, and FIG. 13B shows the distribution ID table (normal) 250A of the normal data distributed processing system 100A. Show. FIG. 13C shows a node identifier management table (high load) 200B of the high load data distributed processing system 100B, and FIG. 13D shows a distribution ID table (high load) of the high load data distributed processing system 100B. ) 250B.

なお、図13(b)に示す通常データ分散処理システム100Aの振り分けIDテーブル(通常)250Aと、図13(d)に示す高負荷データ分散処理システム100Bの振り分けIDテーブル(高負荷)250Bとは、同じID空間(コンシステント・ハッシュのID空間)が設定される。ここでは、ID空間として「0」〜「999」が同様に設定されている。これにより、互いの分散処理システムにおいてノード1(1A,1B)の増減設が発生し、各々の分散処理システムにおいてデータ移管(返還)時の担当ノードが変化しているようなケースでも、新しい担当ノードを特定し、データの移管(返還)を実行することが容易に可能となる。   The distribution ID table (normal) 250A of the normal data distributed processing system 100A shown in FIG. 13B and the distribution ID table (high load) 250B of the high load data distributed processing system 100B shown in FIG. , The same ID space (consistent hash ID space) is set. Here, “0” to “999” are similarly set as the ID space. As a result, even if the nodes 1 (1A, 1B) increase or decrease in each other's distributed processing systems, and the node in charge at the time of data transfer (return) changes in each distributed processing system, a new charge It becomes possible to easily identify a node and execute data transfer (return).

ここで、高負荷データ抽出部15が抽出したデータ(高負荷データ)のハッシュ値(振り分けID)が「250」であるものとする。この場合、図13(b)に示す、振り分けIDテーブル250Aに示されるように、当該データは、通常データ分散処理システム100Aにおいては、「Node2」が担当している。このデータが高負荷データであり、高負荷データ分散処理システム100Bに移管する場合に、高負荷データ抽出部15は、まず、図13(d)に示す、高負荷データ分散処理システム100Bの振り分けIDテーブル(高負荷)250Bを参照し、そのハッシュ値 (振り分けID)「250」に基づき、担当するノードを「Node1」に特定する。そして、高負荷データ抽出部15は、図13(c)に示す、高負荷データ分散処理システム100Bのノード識別子管理テーブル200Bを参照し、「Node1」のアドレスとして「10.35.0.1」を取得する。高負荷データ抽出部15は、高負荷データ分散処理システム100Bのノード1Bのうち、アドレス「10.35.0.1」の「Node1」に対して、当該抽出した高負荷データの複製データを送信する。   Here, it is assumed that the hash value (distribution ID) of the data (high load data) extracted by the high load data extraction unit 15 is “250”. In this case, as shown in the distribution ID table 250A shown in FIG. 13B, the data is handled by “Node 2” in the normal data distribution processing system 100A. When this data is high load data and is transferred to the high load data distribution processing system 100B, the high load data extraction unit 15 firstly assigns the distribution ID of the high load data distribution processing system 100B shown in FIG. 13 (d). With reference to the table (high load) 250B, the node in charge is identified as “Node 1” based on the hash value (distribution ID) “250”. Then, the high load data extraction unit 15 refers to the node identifier management table 200B of the high load data distribution processing system 100B illustrated in FIG. 13C and acquires “10.35.0.1” as the address of “Node1”. The high load data extraction unit 15 transmits the extracted duplicate data of the high load data to “Node 1” of the address “10.35.0.1” in the node 1B of the high load data distributed processing system 100B.

図11に戻り、ステップS25において、高負荷データ抽出部15は、高負荷データの移管の完了後、自身の記憶部30Aのデータ300に記憶された当該データの実データ320を削除し(図9(a)参照)、処理を終える。これは、実データ320のデータサイズ等が大きいと、通常データ分散処理システム100Aのリソース消費につながる場合があるためである。   Returning to FIG. 11, in step S25, the high load data extraction unit 15 deletes the actual data 320 of the data stored in the data 300 of its own storage unit 30A after completion of the transfer of the high load data (FIG. 9). (See (a)), and the process ends. This is because if the data size of the actual data 320 is large, it may lead to resource consumption of the normal data distributed processing system 100A.

このようにして、通常データ分散処理システム100Aの各ノード1Aは、高負荷データを抽出して、高負荷データ分散処理システム100Bの担当となるノード1Bに、当該高負荷データを移管することができる。   In this way, each node 1A of the normal data distributed processing system 100A can extract the high load data and transfer the high load data to the node 1B in charge of the high load data distributed processing system 100B. .

≪高負荷データ移管後のノード1Aのリダイレクト処理≫
ここで、高負荷データの移管後に、移管元のノード1Aにおいて当該データに対する最初のアクセスがあった場合の移管先へのリダイレクト処理について説明する。
図14は、高負荷データの移管後の当該データに対する最初のアクセスのリダイレクト処理の流れを示すフローチャートである。
≪Redirect processing of node 1A after high-load data transfer≫
Here, the redirection process to the transfer destination when the first access to the data is made in the transfer source node 1A after the transfer of the high load data will be described.
FIG. 14 is a flowchart showing the flow of the redirect process of the first access to the data after the transfer of the high load data.

まず、クライアント2等からのメッセージを、通常データ分散処理システム100Aのノード1Aが受信する(ステップS30)。   First, the node 1A of the normal data distributed processing system 100A receives a message from the client 2 or the like (step S30).

次に、ノード1Aの振り分け部12は、メッセージに付与された振り分けキーの担当分散システム識別子と、記憶部30A内に格納されたデータ300内のメタデータ310の担当分散システム識別子(図9(b)参照)とを確認し、自身の分散処理システムに対するアクセスか否かを判定する(ステップS31)。ここで、振り分け部12は、当該メッセージの処理対象のデータついて、そのメタデータ310の担当分散システム識別子が、通常データ分散処理システム100Aを示す「1」であれば(ステップS31→Yes)、通常の信号処理を実行する(ステップS32)。一方、振り分け部12は、メタデータ310の担当分散システム識別子が、「1」以外の例えば「2」であれば(ステップS31→No)、ステップS33へ進む。
ここで、例えば、高負荷データの移管後の当該データに対する最初のメッセージに付与された振り分けキーは、変更されていないため「1+199+data_12345」であるとする。一方、振り分け部12は、記憶部30Aに格納されたデータ300のメタデータ310の当該データ「data_12345」の担当分散システム識別子を参照し、その値が「2」であることを確認する(図9(b)参照)。つまり、受信したメッセージの処理対象のデータが、移管されたデータ(高負荷データ)であることを確認する。
Next, the distribution unit 12 of the node 1A transmits the assigned distributed system identifier of the distribution key given to the message and the assigned distributed system identifier of the metadata 310 in the data 300 stored in the storage unit 30A (FIG. 9B). )) And determine whether the access is to the distributed processing system (step S31). Here, with regard to the data to be processed of the message, the distribution unit 12 is normal if the responsible distributed system identifier of the metadata 310 is “1” indicating the normal data distributed processing system 100A (step S31 → Yes). The signal processing is executed (step S32). On the other hand, if the assigned distributed system identifier of the metadata 310 is, for example, “2” other than “1” (step S31 → No), the distribution unit 12 proceeds to step S33.
Here, for example, it is assumed that the distribution key given to the first message for the data after the transfer of the high load data is “1 + 199 + data_12345” because it has not been changed. On the other hand, the distribution unit 12 refers to the assigned distributed system identifier of the data “data — 12345” of the metadata 310 of the data 300 stored in the storage unit 30A, and confirms that the value is “2” (FIG. 9). (See (b)). That is, it is confirmed that the processing target data of the received message is the transferred data (high load data).

ステップS33において、振り分け部12は、メタデータ310の担当分散システム識別子(ここでは「2」)の情報に基づき、担当する分散システム(ここでは、高負荷データ分散処理システム100B)の振り分けIDテーブル250(ここでは、振り分けIDテーブル(高負荷)250B)を決定する。また、振り分け部12は、振り分けIDテーブル250(高負荷)Bを参照し、ハッシュ値(振り分けID)「199」に基づき担当ノード1Bを決定し、その担当ノードのアドレスをノード識別子管理テーブル(高負荷)200Bにより取得する。   In step S <b> 33, the distribution unit 12 determines the distribution ID table 250 of the distributed system (here, the high load data distributed processing system 100 </ b> B) based on the information of the distributed system identifier (here, “2”) in the metadata 310. (Here, the distribution ID table (high load) 250B) is determined. Further, the distribution unit 12 refers to the distribution ID table 250 (high load) B, determines the responsible node 1B based on the hash value (distribution ID) “199”, and assigns the address of the responsible node to the node identifier management table (high Load) Obtained by 200B.

続いて、振り分け部12は、メッセージに付与された振り分けキーの担当分散システム識別子の値を、移管先の高負荷データ分散処理システム100Bを示す「2」に変更して、担当するノード1Bに転送する(ステップS34)。   Subsequently, the distribution unit 12 changes the value of the assigned distributed system identifier of the distribution key given to the message to “2” indicating the high-load data distributed processing system 100B as the transfer destination, and transfers it to the responsible node 1B. (Step S34).

このようにすることで、移管元の通常データ分散処理システム100Aの各ノード1Aは、高負荷データの移管後に、当該データに対する最初のアクセスがあった場合に、そのメッセージに付与された振り分けキーの担当分散処理システム識別子を移管先に書き換える。よって、その後の当該データについてのメッセージについては、高負荷データ分散処理システム100Bにメッセージが振り分けられるようにすることができる。   By doing so, each node 1A of the normal data distributed processing system 100A that is the transfer source, when there is an initial access to the data after the transfer of the high load data, the distribution key assigned to the message Rewrite the assigned distributed processing system identifier to the transfer destination. Therefore, the subsequent messages about the data can be distributed to the high-load data distributed processing system 100B.

≪ノード1Bの処理≫
次に、本実施形態に係る高負荷データ分散処理システム100Bの各ノード1Bが実行する処理について説明する。
なお、高負荷データ分散処理システム100Bのノード1B(ノード識別子管理部11)は、自身が属する高負荷データ分散処理システム100Bのノード識別子管理テーブル(高負荷)200B(第2のノード識別子管理情報)および振り分けIDテーブル(高負荷)250B(第2の振り分けID情報)に加えて、通常データ分散処理システム100Aの最新の、ノード識別子管理テーブル(通常)200A(第1のノード識別子管理情報)および振り分けIDテーブル(通常)250A(第1の振り分けID情報)を取得し記憶部30Bに記憶しているものとする。
また、ノード1B(信号処理部13)は、自身のノード1が担当するデータに関するメッセージの信号処理を実行した際に、当該データの処理負荷を計測し、その計測結果をデータ処理負荷計測情報(高負荷)400B(第2のデータ処理負荷計測情報)(図15参照)として記憶部30Bに記憶しているものとする。
さらに、ノード1B(正常負荷データ抽出部16)は、通常データ分散処理システム100Aの各ノード1Aから、それぞれのノード負荷計測情報(通常)500Aを受信し、記憶部30Bに記憶しているものとする。
<< Process of Node 1B >>
Next, processing executed by each node 1B of the high load data distribution processing system 100B according to the present embodiment will be described.
Note that the node 1B (node identifier management unit 11) of the high load data distribution processing system 100B has a node identifier management table (high load) 200B (second node identifier management information) of the high load data distribution processing system 100B to which the node 1B belongs. In addition to the distribution ID table (high load) 250B (second distribution ID information), the latest node identifier management table (normal) 200A (first node identifier management information) and distribution of the normal data distributed processing system 100A It is assumed that an ID table (normal) 250A (first distribution ID information) is acquired and stored in the storage unit 30B.
Further, when the node 1B (signal processing unit 13) executes signal processing of a message related to data handled by the node 1 itself, the node 1B measures the processing load of the data, and the measurement result is obtained as data processing load measurement information ( It is assumed that it is stored in the storage unit 30B as (high load) 400B (second data processing load measurement information) (see FIG. 15).
Further, the node 1B (normal load data extraction unit 16) receives each node load measurement information (normal) 500A from each node 1A of the normal data distributed processing system 100A and stores it in the storage unit 30B. To do.

図16は、本実施形態に係る高負荷データ分散処理システム100Bの各ノード1Bが実行する処理の流れを示すフローチャートである。
まず、ノード1Bの正常負荷データ抽出部16は、所定の時間(所定の第2の期間)が経過したかを判定し(ステップS40)、所定の時間が経過していなければ、(ステップS40→No)、所定の時間が経過するまで待つ。一方、正常負荷データ抽出部16は、所定の時間が経過した場合には(ステップS40→Yes)、次のステップS41に進む。
FIG. 16 is a flowchart showing the flow of processing executed by each node 1B of the high-load data distributed processing system 100B according to this embodiment.
First, the normal load data extraction unit 16 of the node 1B determines whether a predetermined time (predetermined second period) has elapsed (step S40), and if the predetermined time has not elapsed (step S40 → No), wait until a predetermined time elapses. On the other hand, when the predetermined time has elapsed (step S40 → Yes), the normal load data extraction unit 16 proceeds to the next step S41.

ステップS41において、ノード1Bの正常負荷データ抽出部16は、発生したデータ処理(データのロック取得時刻、ロック解放時刻のいずれか)が当該所定の時間(所定の第2の期間)内に含まれるものの中から、処理負荷が低減したデータを正常負荷データとして抽出する。ここでは、前記した(正常負荷データ判定手法の例1)を適用した場合を例にして説明する。   In step S41, the normal load data extraction unit 16 of the node 1B includes the generated data processing (either data lock acquisition time or lock release time) within the predetermined time (predetermined second period). Data with reduced processing load is extracted as normal load data. Here, a case where the above-described (Example 1 of normal load data determination method) is applied will be described as an example.

図17は、ノード1Bの正常負荷データ抽出部16による、正常負荷データの抽出処理を説明するための図である。図17(a)は、所定の時間に含まれるデータ処理負荷計測情報(高負荷)400Bを示す。また、図17(b)は、返還先の分散処理システム(通常データ分散処理システム100A)の担当領域を同じくするノード1Aのノード負荷計測情報(通常)500Aを示している。
ここでは、当該期間(正常負荷データを抽出しようとする期間)を「10:15:20〜10:15:30」)とし、比較対象の返還先の分散処理システム(通常データ分散処理システム100A)から選択した周期を周期識別番号「1」で示される「10:14:50〜10:15:00」とする。また、比較対象のパラメータをロック取得期間とし、所定の時間に含まれるデータ処理負荷計測情報(高負荷)400Bの同じデータ識別子のロック取得期間の値が、担当領域を同じくするノード1Aのノード負荷計測情報(通常)500Aで示される平均ロック取得期間(ここでは、「7msec」)を一度も上回ることがなければ、当該データを正常負荷データと判定する。
なお、ここで、判定対象となるデータ(例えば、データ識別子「11111111」)と担当領域を同じくするノード1Aのノード負荷計測情報(通常)500Aは、判定対象となるデータのメタデータに付された振り分けキーのハッシュ値(振り分けID)を取得し、自身の記憶部40Bに記憶された振り分けIDテーブル(通常)250Aを検索することにより、現時点(つまり返還しようする時点)での当該データの返還先となるノード1Aのノード負荷計測情報(通常)500Aを特定することにより決定する。
FIG. 17 is a diagram for explaining normal load data extraction processing by the normal load data extraction unit 16 of the node 1B. FIG. 17A shows data processing load measurement information (high load) 400B included in a predetermined time. FIG. 17B shows node load measurement information (normal) 500A of the node 1A having the same area in charge of the return destination distributed processing system (normal data distributed processing system 100A).
Here, the period (period during which normal load data is to be extracted) is “10:15:20 to 10:15:30”), and the return processing distributed processing system to be compared (normal data distributed processing system 100A) The period selected from “10:14:50 to 10:15:00” indicated by the period identification number “1” is used. The comparison target parameter is the lock acquisition period, and the value of the lock acquisition period of the same data identifier in the data processing load measurement information (high load) 400B included in the predetermined time is the node load of the node 1A having the same assigned area. If the average lock acquisition period (here, “7 msec”) indicated by the measurement information (normal) 500A is never exceeded, the data is determined as normal load data.
Here, the node load measurement information (usually) 500A of the node 1A having the same assigned area as the data to be determined (for example, the data identifier “11111111”) is attached to the metadata of the data to be determined. By obtaining the hash value (distribution ID) of the distribution key and searching the distribution ID table (usually) 250A stored in its own storage unit 40B, the return destination of the data at the present time (that is, when the data is to be returned) This is determined by specifying the node load measurement information (ordinary) 500A of the node 1A.

図16に戻り、ステップS42において、正常負荷データ抽出部16は、返還対象として抽出したデータ(正常負荷データ)のメタデータ310の担当分散システム識別子を、高負荷データ分散処理システム100Bを示す値「2」(図9(b)参照)から、通常データ分散処理システム100Aを示す値「1」に変更する(図18(b)参照)。また、正常負荷データ抽出部16は、返還対象として抽出したデータ(正常負荷データ)のメタデータの高負荷データ判定回数を1カウントアップする(図18(b)参照)。   Returning to FIG. 16, in step S42, the normal load data extraction unit 16 sets the assigned distributed system identifier of the metadata 310 of the data (normal load data) extracted as the return target to a value “indicating the high load data distributed processing system 100B”. 2 ”(see FIG. 9B) is changed to a value“ 1 ”indicating the normal data distributed processing system 100A (see FIG. 18B). Further, the normal load data extraction unit 16 increments the high load data determination count of the metadata of the data (normal load data) extracted as the return object (see FIG. 18B).

続いて、正常負荷データ抽出部16は、返還する正常負荷データを担当する通常データ分散処理システム100Aのノード1Aを、記憶部30B内の、ノード識別子管理テーブル(通常)200Aおよび振り分けIDテーブル250(通常)Aを参照して特定し、特定したノードAに、当該データ(正常負荷データ)の複製データを送信する(ステップS43)。   Subsequently, the normal load data extraction unit 16 converts the node 1A of the normal data distributed processing system 100A in charge of the normal load data to be returned into the node identifier management table (normal) 200A and the distribution ID table 250 (in the storage unit 30B). (Normally) A is identified with reference to A, and duplicate data of the data (normal load data) is transmitted to the identified node A (step S43).

次に、正常負荷データ抽出部16は、ステップS44において、正常負荷データの返還の完了後、自身の記憶部30Bのデータ300に記憶された当該データの実データ320を削除し(図18(a)参照)、処理を終える。これは、実データ320のデータサイズ等が大きいと、高負荷データ分散処理システム100Bのリソース消費につながる場合があるためである。   Next, in step S44, the normal load data extraction unit 16 deletes the actual data 320 of the data stored in the data 300 of its own storage unit 30B after the return of the normal load data is completed (FIG. 18 (a )), And the process ends. This is because a large data size or the like of the actual data 320 may lead to resource consumption of the high-load data distributed processing system 100B.

このようにして、高負荷データ分散処理システム100Bの各ノード1Bは、負荷が低減した正常負荷データを抽出して、通常データ分散処理システム100Aの担当となるノード1Aに、当該正常負荷データを返還することができる。   In this way, each node 1B of the high-load data distributed processing system 100B extracts normal load data with a reduced load, and returns the normal load data to the node 1A in charge of the normal data distributed processing system 100A. can do.

≪正常負荷データ移管後のノード1Bのリダイレクト処理≫
ここで、正常負荷データの返還後に、返還元のノード1Bにおいて当該データに対する最初のアクセスがあった場合の返還先へのリダイレクト処理について説明する。
図19は、正常負荷データの返還後の当該データに対する最初のアクセスのリダイレクト処理の流れを示すフローチャートである。
≪Node 1B redirect process after normal load data transfer≫
Here, the redirect process to the return destination when there is the first access to the data in the return node 1B after the return of the normal load data will be described.
FIG. 19 is a flowchart showing the flow of the redirect process of the first access to the data after returning the normal load data.

まず、クライアント2等からのメッセージを、高負荷データ分散処理システム100Bのノード1Bが受信する(ステップS50)。   First, the node 1B of the high load data distribution processing system 100B receives a message from the client 2 or the like (step S50).

次に、ノード1Bの振り分け部12は、メッセージに付与された振り分けキーの担当分散システム識別子と、記憶部30B内に格納されたデータ300内のメタデータ310の担当分散システム識別子(図18(b)参照)とを確認し、自身の分散処理システムに対するアクセスか否かを判定する(ステップS51)。ここで、振り分け部12は、当該メッセージの処理対象のデータついて、そのメタデータ310の担当分散システム識別子が、高負荷データ分散処理システム100Bを示す「2」であれば(ステップS51→Yes)、通常の信号処理を実行する(ステップS52)。一方、振り分け部12は、メタデータ310の担当分散システム識別子が、「2」以外の例えば「1」であれば(ステップS51→No)、ステップS53へ進む。   Next, the distribution unit 12 of the node 1B assigns the distributed system identifier assigned to the distribution key assigned to the message and the assigned distributed system identifier of the metadata 310 in the data 300 stored in the storage unit 30B (FIG. 18B). )) To determine whether the access is to the distributed processing system (step S51). Here, with respect to the data to be processed of the message, the distribution unit 12 is in charge of the distributed system identifier of the metadata 310 “2” indicating the high load data distributed processing system 100B (step S51 → Yes). Normal signal processing is executed (step S52). On the other hand, if the assigned distributed system identifier of the metadata 310 is, for example, “1” other than “2” (step S51 → No), the distribution unit 12 proceeds to step S53.

ステップS53において、振り分け部12は、メタデータ310の担当分散システム識別子(ここでは「1」)の情報に基づき、担当する分散システム(ここでは、通常データ分散処理システム100A)の振り分けIDテーブル250(ここでは、振り分けIDテーブル(通常)250A)を決定する。また、振り分け部12は、振り分けIDテーブル250(通常)Aを参照し、そのハッシュ値(振り分けID)に基づき担当ノード1Aを決定し、その担当ノードのアドレスをノード識別子管理テーブル(通常)200Aにより取得する。   In step S53, the distribution unit 12 determines the distribution ID table 250 (in this case, the normal data distributed processing system 100A) based on the information of the distributed system identifier in charge of the metadata 310 (here, “1”). Here, a distribution ID table (normal) 250A) is determined. The distribution unit 12 refers to the distribution ID table 250 (normal) A, determines the responsible node 1A based on the hash value (distribution ID), and assigns the address of the responsible node to the node identifier management table (normal) 200A. get.

続いて、振り分け部12は、メッセージに付与された振り分けキーの担当分散システム識別子の値を、返還先の通常データ分散処理システム100Aを示す「1」に変更して、担当するノード1Aに転送する(ステップS54)。   Subsequently, the distribution unit 12 changes the value of the assigned distributed system identifier of the distribution key assigned to the message to “1” indicating the normal data distributed processing system 100A as the return destination, and transfers it to the responsible node 1A. (Step S54).

このようにすることで、返還元の高負荷データ分散処理システム100Bの各ノード1Bは、正常負荷データの返還後に、当該データに対する最初のアクセスがあった場合に、そのメッセージに付与された振り分けキーの担当分散処理システム識別子を返還先に書き換える。よって、その後の当該データについてのメッセージについては、通常データ分散処理システム100Aにメッセージが振り分けられるようにすることができる。   By doing so, each node 1B of the high-load data distributed processing system 100B for return and return has a distribution key assigned to the message when the first access to the data is made after the return of normal load data. Rewrite the distributed processing system identifier for the return destination. Therefore, the subsequent messages about the data can be distributed to the normal data distributed processing system 100A.

以上説明したように、本実施形態に係る分散処理システム1000によれば、通常データ分散処理システム100Aの各ノード1Aが、アクセス頻度が多い、処理時間の長い等によりノードに高い負荷を与えるデータ(高負荷データ)を抽出し、処理能力の高い高負荷データ分散処理システム100Bに処理を移管することができる。これにより、移管先の高負荷データ分散処理システム100Bにおいて、高負荷データの処理を継続しつつ、通常データ分散処理システム100Aに高負荷データが存在していた際に問題となる、その他のデータへの信号処理への影響の発生や、非効率なスケールアウトの頻発を抑止することができる。   As described above, according to the distributed processing system 1000 according to the present embodiment, each node 1A of the normal data distributed processing system 100A has data (i.e., data with a high load on the node due to high access frequency, long processing time, etc.) High-load data) can be extracted, and the processing can be transferred to the high-load data distributed processing system 100B having a high processing capacity. As a result, in the high-load data distributed processing system 100B as the transfer destination, while continuing the high-load data processing, to the other data that becomes a problem when the high-load data exists in the normal data distributed processing system 100A It is possible to suppress the occurrence of the influence on the signal processing and the frequent occurrence of inefficient scale-out.

また、移管先の高負荷データ分散処理システム100Bにおいて、高負荷データの負荷が正常値に低減したことを確認して、データを元の通常データ分散処理システム100Aに返還することができる。これにより、高負荷データを専用に処理するノード1Bの処理負荷を必要以上に高めることなくシステムの運用を継続することができる。   In addition, in the high-load data distribution processing system 100B as the transfer destination, it is possible to confirm that the load of the high-load data has been reduced to a normal value and return the data to the original normal data distribution processing system 100A. Thereby, the operation of the system can be continued without increasing the processing load of the node 1B that exclusively processes high load data more than necessary.

1 ノード
1A ノード(第1のノード)
1B ノード(第2のノード)
2 クライアント
3 ロードバランサ
10A,10B 制御部
11 ノード識別子管理部
12 振り分け部
13 信号処理部(第1の信号処理部、第2の信号処理部)
14 ノード負荷計測部
15 高負荷データ抽出部
16 正常負荷データ抽出部
20 入出力部
30A,30B 記憶部
100A 通常データ分散処理システム
100B 高負荷データ分散処理システム
200A ノード識別子管理テーブル(通常)(第1のノード識別子管理情報)
200B ノード識別子管理テーブル(高負荷)(第2のノード識別子管理情報)
250A 振り分けIDテーブル(通常)(第1の振り分けID情報)
250B 振り分けIDテーブル(高負荷)(第2の振り分けID情報)
300 データ
310 メタデータ
320 実データ
400A データ処理負荷計測情報(通常)(第1のデータ処理負荷計測情報)
400B データ処理負荷計測情報(高負荷)(第2のデータ処理負荷計測情報)
500A ノード負荷計測情報(通常)
1000 分散処理システム
1 node 1A node (first node)
1B node (second node)
2 Client 3 Load balancer 10A, 10B Control unit 11 Node identifier management unit 12 Distribution unit 13 Signal processing unit (first signal processing unit, second signal processing unit)
14 node load measurement unit 15 high load data extraction unit 16 normal load data extraction unit 20 input / output unit 30A, 30B storage unit 100A normal data distributed processing system 100B high load data distributed processing system 200A node identifier management table (normal) (first) Node identifier management information)
200B Node identifier management table (high load) (second node identifier management information)
250A Distribution ID table (normal) (first distribution ID information)
250B Distribution ID table (high load) (second distribution ID information)
300 data 310 metadata 320 actual data 400A data processing load measurement information (normal) (first data processing load measurement information)
400B Data processing load measurement information (high load) (second data processing load measurement information)
500A Node load measurement information (normal)
1000 Distributed processing system

Claims (6)

クライアントからのメッセージを受信して信号処理しサービスを提供する分散処理システムであって、
前記分散処理システムは、前記メッセージを受信して信号処理する第1のノードを複数有する通常データ分散処理システムと、前記第1のノードと比較して処理性能の高い第2のノードを複数有する高負荷データ分散処理システムとから構成され、
前記通常データ分散処理システムの前記第1のノードそれぞれ、および、前記高負荷データ分散処理システムの第2のノードそれぞれは、
前記第1のノードそれぞれの識別子と、信号処理を実行するデータに付された振り分けIDとを対応付けた情報である第1の振り分けID情報、および、前記第1のノードそれぞれの識別子と、前記第1のノードのアドレスとを対応付けた情報である第1のノード識別子管理情報、
並びに、前記第2のノードそれぞれの識別子と、信号処理を実行するデータに付された前記振り分けIDとを対応付けた情報である第2の振り分けID情報、および、前記第2のノードそれぞれの識別子と、前記第2のノードのアドレスとを対応付けた情報である第2のノード識別子管理情報、を記憶する記憶部、を備えており、
前記通常データ分散処理システムの前記第1のノードそれぞれは、
前記メッセージを受信し、当該メッセージに付与された、前記振り分けID、並びに、前記通常データ分散処理システムおよび前記高負荷データ分散処理システムのいずれかの識別子を示す担当分散システム識別子、を取得し、前記第1の振り分けID情報または前記第2の振り分けID情報を参照して信号処理するノードを決定し、決定したノードに当該メッセージを振り分ける振り分け部と、
振り分けられた前記メッセージを受信し、前記第1のノード自身が担当するデータに関するメッセージの信号処理を実行するとともに、前記データの信号処理の処理負荷を計測し、第1のデータ処理負荷計測情報として自身の前記記憶部に記憶する第1の信号処理部と、
所定の第1の期間ごとに、前記第1のデータ処理負荷計測情報を参照し、予め設定された高負荷データを抽出するロジックに基づき前記信号処理の処理負荷が高いデータを前記高負荷データとして抽出し、前記抽出した高負荷データの前記振り分けIDを取得し、前記第2の振り分けID情報および前記第2のノード識別子管理情報を参照して信号処理する第2のノードを決定して送信する高負荷データ抽出部と、を備え、
前記高負荷データ分散処理システムの前記第2のノードそれぞれは、
前記振り分け部と、
振り分けられた前記メッセージを受信し、前記第2のノード自身が担当するデータに関するメッセージの信号処理を実行するとともに、前記データの信号処理の処理負荷を計測し、第2のデータ処理負荷計測情報として自身の前記記憶部に記憶する第2の信号処理部と、
所定の第2の期間ごとに、前記第2のデータ処理負荷計測情報を参照し、予め設定された正常負荷データを抽出するロジックに基づき前記信号処理の処理負荷が低減したデータを前記正常負荷データとして抽出し、前記抽出した正常負荷データの前記振り分けIDを取得し、前記第1の振り分けID情報および前記第1のノード識別子管理情報を参照して信号処理する第1のノードを決定して送信する正常負荷データ抽出部と、を備えること
を特徴とする分散処理システム。
A distributed processing system that receives a message from a client, processes the signal, and provides a service.
The distributed processing system includes a normal data distributed processing system having a plurality of first nodes for receiving and processing the message and a second node having a plurality of second nodes having higher processing performance compared to the first node. Load data distributed processing system,
Each of the first nodes of the normal data distributed processing system and each of the second nodes of the high-load data distributed processing system are:
First distribution ID information that is information in which each identifier of the first node is associated with a distribution ID attached to data for performing signal processing; and an identifier of each of the first nodes; First node identifier management information, which is information associated with the address of the first node,
Also, second distribution ID information that is information in which each identifier of the second node is associated with the distribution ID attached to the data to be subjected to signal processing, and each identifier of the second node And a second node identifier management information that is information that associates the address of the second node with each other.
Each of the first nodes of the normal data distributed processing system
Receiving the message, obtaining the distribution ID assigned to the message, and a responsible distributed system identifier indicating an identifier of either the normal data distributed processing system or the high load data distributed processing system, A node that performs signal processing with reference to the first distribution ID information or the second distribution ID information, and distributes the message to the determined node;
The distributed message is received, the signal processing of the message related to the data handled by the first node itself is executed, the processing load of the signal processing of the data is measured, and the first data processing load measurement information is obtained. A first signal processing unit stored in its own storage unit;
For each predetermined first period, referring to the first data processing load measurement information, data having a high processing load of the signal processing based on a logic for extracting preset high load data is used as the high load data. Extracting, obtaining the distribution ID of the extracted high load data, determining and transmitting a second node to perform signal processing with reference to the second distribution ID information and the second node identifier management information A high-load data extraction unit,
Each of the second nodes of the high-load data distributed processing system
The sorting section;
The distributed message is received, the signal processing of the message relating to the data handled by the second node itself is executed, the processing load of the signal processing of the data is measured, and the second data processing load measurement information is obtained. A second signal processing unit stored in its own storage unit;
Data for which the processing load of the signal processing is reduced based on the logic for extracting preset normal load data with reference to the second data processing load measurement information for each predetermined second period is the normal load data. To obtain the distribution ID of the extracted normal load data, determine the first node to perform signal processing with reference to the first distribution ID information and the first node identifier management information, and transmit And a normal load data extraction unit.
前記第1のノードの前記高負荷データ抽出部は、
前記予め設定された高負荷データを抽出するロジックとして、
前記所定の第1の期間内において、前記第1のデータ処理負荷計測情報として計測された、前記データの信号処理に伴うロック取得期間、または、前記データのデータサイズと、前記所定の第1の期間内における全ての前記データから算出した、平均ロック取得期間、または、平均データサイズとをそれぞれ比較して、その乖離幅が所定の閾値を超えている場合に、前記データを高負荷データとして抽出することが設定されていること、
を特徴とする請求項1に記載の分散処理システム。
The high-load data extraction unit of the first node is
As logic for extracting the preset high load data,
The lock acquisition period accompanying the signal processing of the data, or the data size of the data, measured as the first data processing load measurement information within the predetermined first period, and the predetermined first When the average lock acquisition period or average data size calculated from all the data in the period is compared, and the deviation width exceeds a predetermined threshold, the data is extracted as high load data That is set to do,
The distributed processing system according to claim 1.
前記第1のノードの前記高負荷データ抽出部は、
前記平均ロック取得期間、または、平均データサイズを含む前記第1のノードのノード負荷計測情報を、前記第2のノードそれぞれに送信し、
前記第2のノードの前記正常負荷データ抽出部は、
前記予め設定された正常負荷データを抽出するロジックとして、
前記所定の第2の期間内において、前記第2のデータ処理負荷計測情報として計測された、前記データの信号処理に伴うロック取得期間、または、前記データのデータサイズと、前記データの前記振り分けIDを用いて前記第1の振り分けID情報を参照し、当該データの返還先としての前記第1のノードを特定し、前記特定された第1のノードから送信された前記ノード負荷計測情報に含まれる、前記平均ロック取得期間、または、前記平均データサイズとをそれぞれ比較し、前記第2のデータ処理負荷計測情報として計測されたデータの値が、各々の平均以下であった場合に、当該データを正常負荷データとして抽出することが設定されていること、
を特徴とする請求項2に記載の分散処理システム。
The high-load data extraction unit of the first node is
Transmitting the node load measurement information of the first node including the average lock acquisition period or the average data size to each of the second nodes;
The normal load data extraction unit of the second node is
As the logic for extracting the preset normal load data,
The lock acquisition period accompanying the signal processing of the data, or the data size of the data, and the distribution ID of the data, measured as the second data processing load measurement information within the predetermined second period Is used to identify the first node as the return destination of the data, and is included in the node load measurement information transmitted from the identified first node. The average lock acquisition period or the average data size is compared with each other, and when the data value measured as the second data processing load measurement information is equal to or less than the average, the data is That it is set to be extracted as normal load data,
The distributed processing system according to claim 2.
前記第1のノードの前記振り分け部は、
前記高負荷データとして抽出され前記第2のノードに送信されたデータの信号処理を要求するメッセージを受信した際に、前記メッセージに付与された前記担当分散システム識別子を、前記高負荷データ分散処理システムを示す値に変更すること、
を特徴とする請求項1ないし請求項3のいずれか1項に記載の分散処理システム。
The distribution unit of the first node is
When the message requesting the signal processing of the data extracted as the high load data and transmitted to the second node is received, the assigned distributed system identifier given to the message is used as the high load data distributed processing system. To a value that indicates
The distributed processing system according to any one of claims 1 to 3, wherein:
前記第2のノードの前記振り分け部は、
前記正常負荷データとして抽出され前記第1のノードに送信されたデータの信号処理を要求するメッセージを受信した際に、前記メッセージに付与された前記担当分散システム識別子を、前記通常データ分散処理システムを示す値に変更すること、
を特徴とする請求項1ないし請求項4のいずれか1項に記載の分散処理システム。
The distribution unit of the second node is
When the message requesting signal processing of the data extracted as the normal load data and transmitted to the first node is received, the assigned distributed system identifier given to the message is changed to the normal data distributed processing system. Change to the value shown,
The distributed processing system according to any one of claims 1 to 4, wherein:
前記第2のノードの前記正常負荷データ抽出部は、
前記正常負荷データとして抽出されたデータを、前記通常データ分散処理システムの前記第1のノードに送信する際に、当該データに、高負荷データとして抽出されたことを示す高負荷データ判定回数を、1カウントアップして送信しており、
前記正常負荷データを抽出したときに、前記高負荷データ判定回数が所定の閾値を超えていた場合、当該データを削除すること、
を特徴とする請求項1ないし請求項5のいずれか1項に記載の分散処理システム。
The normal load data extraction unit of the second node is
When transmitting the data extracted as the normal load data to the first node of the normal data distributed processing system, a high load data determination number indicating that the data is extracted as high load data, 1 count up and sending
When the normal load data is extracted, if the high load data determination count exceeds a predetermined threshold, deleting the data;
The distributed processing system according to any one of claims 1 to 5, wherein:
JP2015036156A 2015-02-26 2015-02-26 Distributed processing system Active JP6259408B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015036156A JP6259408B2 (en) 2015-02-26 2015-02-26 Distributed processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015036156A JP6259408B2 (en) 2015-02-26 2015-02-26 Distributed processing system

Publications (2)

Publication Number Publication Date
JP2016157367A JP2016157367A (en) 2016-09-01
JP6259408B2 true JP6259408B2 (en) 2018-01-10

Family

ID=56826273

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015036156A Active JP6259408B2 (en) 2015-02-26 2015-02-26 Distributed processing system

Country Status (1)

Country Link
JP (1) JP6259408B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7102950B2 (en) 2018-05-30 2022-07-20 富士通株式会社 Information processing system, information processing system control method and management device control program
JP2020003945A (en) * 2018-06-26 2020-01-09 株式会社日立情報通信エンジニアリング Computer system and data management method

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4529974B2 (en) * 2006-12-26 2010-08-25 日本電気株式会社 Server load balancing system, server load balancing device, content management device, and server load balancing program
JP5104588B2 (en) * 2007-10-18 2012-12-19 富士通株式会社 Migration program and virtual machine management device
JP5544522B2 (en) * 2011-06-21 2014-07-09 日本電信電話株式会社 Load adjustment method, load adjustment server, load adjustment server device, and load adjustment program
JP5949370B2 (en) * 2012-09-19 2016-07-06 富士通株式会社 Control device, processing system, control program, and control method

Also Published As

Publication number Publication date
JP2016157367A (en) 2016-09-01

Similar Documents

Publication Publication Date Title
JP5664098B2 (en) Composite event distribution apparatus, composite event distribution method, and composite event distribution program
WO2018076791A1 (en) Resource load balancing control method and cluster scheduler
CN105025053A (en) Distributed file upload method based on cloud storage technology and system
TW201627882A (en) Deterministic database system and data transferring method thereof
WO2015081750A1 (en) Data copy storage method, terminal apparatus, and server apparatus
CN104023088A (en) Storage server selection method applied to distributed file system
JP6582445B2 (en) Thin client system, connection management device, virtual machine operating device, method, and program
JPWO2018220708A1 (en) Resource allocation system, management device, method and program
CN104063501B (en) copy balance method based on HDFS
Henze et al. Practical data compliance for cloud storage
JP6259408B2 (en) Distributed processing system
US20150365474A1 (en) Computer-readable recording medium, task assignment method, and task assignment apparatus
TWI652621B (en) Method and system for generating queue based applications dependencies in virtual machines
JP2014164554A (en) Load distribution determination system
Gankevich et al. Subordination: Cluster management without distributed consensus
EP3349416B1 (en) Relationship chain processing method and system, and storage medium
CN104219163A (en) Load balancing method for node dynamic forward based on dynamic replication method and virtual node method
JP6063882B2 (en) Virtual machine placement system and method
He et al. A simulation cloud monitoring framework and its evaluation model
JP6325995B2 (en) Distributed system, load balancing method and program
Lin et al. An overall approach to achieve load balancing for Hadoop Distributed File System
JP2024514467A (en) Geographically distributed hybrid cloud cluster
JP6020803B2 (en) Distributed storage system, distributed storage data movement control method, and distributed storage data movement control program
Ngo et al. K2: Reading quickly from storage across many datacenters
Shen Distributed storage system model design in internet of things based on hash distribution

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170224

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171127

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171208

R150 Certificate of patent or registration of utility model

Ref document number: 6259408

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150