JP2015162061A - distributed processing system - Google Patents

distributed processing system Download PDF

Info

Publication number
JP2015162061A
JP2015162061A JP2014036556A JP2014036556A JP2015162061A JP 2015162061 A JP2015162061 A JP 2015162061A JP 2014036556 A JP2014036556 A JP 2014036556A JP 2014036556 A JP2014036556 A JP 2014036556A JP 2015162061 A JP2015162061 A JP 2015162061A
Authority
JP
Japan
Prior art keywords
server
information
distribution
cluster system
processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014036556A
Other languages
Japanese (ja)
Other versions
JP6085265B2 (en
Inventor
近藤 悟
Satoru Kondo
悟 近藤
岡本 光浩
Mitsuhiro Okamoto
光浩 岡本
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 JP2014036556A priority Critical patent/JP6085265B2/en
Publication of JP2015162061A publication Critical patent/JP2015162061A/en
Application granted granted Critical
Publication of JP6085265B2 publication Critical patent/JP6085265B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To reduce a time to be spent on multistage processing.SOLUTION: A distributed processing system includes a plurality of cluster systems as a clustered server group, each custer system which being configured in a multistage, and executes the processing of request information received from the outside. In the distributed processing system, a server 1 includes: a storage part 12 for storing distribution information 121 in which information associating key information included in the request information with a server of the distribution destination of the request information including the key information is stored for the whole cluster system; and a distribution processing part 111 for, when receiving the request information, determining the server of the cluster system in the next stage associated with the key information included in the request information by referring to the distribution information 121.

Description

本発明は、クラスタ化されたサーバ群であるクラスタシステムを多段に組み合わせて処理を行う分散処理システムに関する。   The present invention relates to a distributed processing system that performs processing by combining cluster systems that are clustered server groups in multiple stages.

近年、サーバの障害に対する耐性の向上やスケーラビリティを容易に実現することを目的として、複数のサーバを論理的に連結させて、あたかも1台のサーバのように見せる分散処理システムの検討が進められている。   In recent years, in order to easily improve the resilience and scalability of server failures, a distributed processing system has been studied in which a plurality of servers are logically connected to appear as if they were one server. Yes.

その分散処理システムの中には、非特許文献1に記載されているように、1つの処理を複数のプロセスに分割し、プロセスごとに1つのクラスタシステムにその処理を担当させて、1つの処理を複数のクラスタシステムで多段に実行させる多段処理が開示されている(図1参照)。   In the distributed processing system, as described in Non-Patent Document 1, one process is divided into a plurality of processes, and one process is assigned to one cluster system for each process. Has been disclosed (see FIG. 1).

近藤悟、外1名、「クラスタ間におけるキャッシュデータの排他制御に関する一検討」、電子情報通信学会技術研究報告、電子情報通信学会、2012年9月、vol.112、No.208、NS2012-53、p.13-18Satoru Kondo, 1 other person, “A study on exclusive control of cache data between clusters”, IEICE technical report, IEICE, September 2012, vol.112, No.208, NS2012-53 , P.13-18

しかしながら、多段処理を実行する分散処理システムは、各段の処理を順々に進めていき、最終段において処理された最終結果を応答情報として返すため、段数が深くなるに従って応答時間が長くなるという問題がある。   However, a distributed processing system that executes multi-stage processing advances the processing of each stage in order, and returns the final result processed in the final stage as response information, so that the response time becomes longer as the number of stages becomes deeper There's a problem.

例えば、分散処理システムでは、クライアント側へ影響を与えることなく負荷分散を実現するために、ラウンドロビン等の単純な振り分けアルゴリズムを用いたロードバランサを、サーバ群の前段に配置してクラスタシステムを構成する方法が一般的に用いられている。   For example, in a distributed processing system, in order to achieve load distribution without affecting the client side, a load balancer using a simple distribution algorithm such as round robin is placed in the front stage of the server group to form a cluster system This method is generally used.

そのため、ロードバランサをサーバ群の前段に配置してクラスタシステムを構成した場合、ユーザの操作するユーザ端末から送信されたパケット(リクエスト情報)は、第1段(最初)のクラスタシステムのロードバランサを経由して、一旦第1段のクラスタシステム内のいずれかのサーバに転送される。そして、当該パケットを転送されたサーバが、分散データベース等で用いられているコンシステントハッシング等の分散アルゴリズムによって、改めて第1段のクラスタシステム内の当該パケットの処理先のサーバを決定する処理(振り分け処理)を実行することになる。そして、第1段のクラスタシステム内の処理先のサーバがリクエストに対応する処理を実行する。処理先のサーバは、自身の処理が終了したとき、次の第2段のクラスタシステムに備えられているロードバランサへ処理結果を転送する。   Therefore, when a cluster system is configured by placing a load balancer in front of the server group, packets (request information) transmitted from user terminals operated by the user are used for the load balancer of the first (first) cluster system. Via, it is once transferred to one of the servers in the first-stage cluster system. Then, the server to which the packet is transferred determines again the processing destination server of the packet in the first-stage cluster system by a distributed algorithm such as consistent hashing used in the distributed database or the like (distribution) Process). Then, a processing destination server in the first-stage cluster system executes processing corresponding to the request. When the processing destination server ends, the processing destination server transfers the processing result to the load balancer provided in the next second-stage cluster system.

このようにして、第2段のロードバランサ、第2段のクラスタシステム内の振り分け処理およびリクエスト情報を処理するリクエスト処理、・・、第n段のロードバランサ、第n段のクラスタシステム内の振り分け処理およびリクエスト処理が実行される。そして、第n段におけるリクエスト処理の結果が、応答情報として、第n段のクラスタシステムから逆に、第n−1段のクラスタシステム、・・、第2段のクラスタシステム、第1段のクラスタシステムを経由してクライアント端末へ返信される。
そのため、段数が深くなるに従って応答時間が長くなる。
In this way, the second stage load balancer, the distribution process in the second stage cluster system and the request process for processing the request information, ..., the distribution in the nth stage load balancer, the nth stage cluster system Processing and request processing are executed. Then, the result of the request processing in the n-th stage is the response information from the n-th stage cluster system, the (n−1) -th stage cluster system,..., The second-stage cluster system, the first-stage cluster. It is sent back to the client terminal via the system.
Therefore, the response time becomes longer as the number of steps becomes deeper.

そこで、本発明は、多段処理に掛かる時間を低減する技術を提供することを課題とする。   Therefore, an object of the present invention is to provide a technique for reducing the time required for multistage processing.

本発明の分散処理システムは、クラスタ化されたサーバ群であるクラスタシステムを複数備え、前記クラスタシステムを多段に構成して、外部から受信したリクエスト情報の処理を実行する分散処理システムであって、前記サーバが、前記リクエスト情報に含まれるキー情報と当該キー情報を含むリクエスト情報の振り分け先のサーバとを関連付けた情報を前記クラスタシステム全てについて格納した振り分け情報を記憶している記憶部と、前記リクエスト情報を受信したとき、前記振り分け情報を参照して、当該リクエスト情報に含まれる前記キー情報に関連付けられた次段のクラスタシステムのサーバを決定する振り分け処理部と、を備えることを特徴とする。   The distributed processing system of the present invention is a distributed processing system that includes a plurality of cluster systems that are clustered server groups, configures the cluster system in multiple stages, and executes processing of request information received from the outside, A storage unit storing distribution information in which the server associates key information included in the request information with a server to which the request information including the key information is allocated for all the cluster systems; and A distribution processing unit that, when receiving the request information, refers to the distribution information and determines a server of the next-stage cluster system associated with the key information included in the request information. .

このような構成によれば、分散処理システムは、クラスタシステム間の情報の送受信を、直接サーバ同士で行うことができる。つまり、分散処理システムは、ロードバランサを常に経由した場合に比べて、サーバを経由するホップ数を低減することができる。したがって、分散処理システムは、多段処理に掛かる時間を低減することができる。   According to such a configuration, the distributed processing system can directly transmit / receive information between cluster systems between servers. That is, the distributed processing system can reduce the number of hops that pass through the server as compared to the case where the load balancer always passes through. Therefore, the distributed processing system can reduce the time required for multistage processing.

また、前記分散処理システム中の前記クラスタシステムは、前記リクエスト情報を当該クラスタシステム内のサーバに振り分けるロードバランサを備え、前記サーバが、前記振り分け情報を変更する振り分け情報変更部を備え、前記クラスタシステムの中の第1のクラスタシステムを更改する場合、前記振り分け情報変更部が、前記第1のクラスタシステムの更改前に、前記振り分け情報内で前記第1のクラスタシステム以外のクラスタシステム中の前記サーバを振り分け先とする情報を、前記第1のクラスタシステムのロードバランサを振り分け先とする情報に変更することを特徴とする。   The cluster system in the distributed processing system includes a load balancer that distributes the request information to a server in the cluster system, and the server includes a distribution information changing unit that changes the distribution information. In the case of renewing the first cluster system, the distribution information changing unit includes the server in the cluster system other than the first cluster system in the distribution information before renewing the first cluster system. Is changed to information with the load balancer of the first cluster system as the distribution destination.

このような構成によれば、分散処理システムは、クラスタシステムを更改する場合、振り分け先をロードバランサに変更することができる。このことにより、1つのクラスタシステムをまるごと更改する場合に、ロードバランサを単一点として瞬時に切り替えることができる。なお、瞬時に切り替えることができる理由は、各サーバが全てのクラスタシステムの振り分け先をロードバランサに指定することができるためである。このように、分散処理システムは、全てのクラスタシステムの振り分け先を変更できるので、前記した多段処理に掛かる時間を低減することができるとともに、クラスタシステムの更改を容易に行うことができる。   According to such a configuration, the distributed processing system can change the distribution destination to the load balancer when renewing the cluster system. As a result, when the entire cluster system is renewed, the load balancer can be instantly switched as a single point. The reason why switching can be performed instantaneously is that each server can specify the distribution destination of all cluster systems as a load balancer. As described above, since the distributed processing system can change the distribution destination of all the cluster systems, it is possible to reduce the time required for the above-described multistage processing and to easily update the cluster system.

本発明によれば、多段処理に掛かる時間を低減することができる。   According to the present invention, the time required for multistage processing can be reduced.

分散処理システムの構成例を示す図である。It is a figure which shows the structural example of a distributed processing system. サーバの機能例を示す図である。It is a figure which shows the function example of a server. 振り分け情報の一例を示す図である。It is a figure which shows an example of distribution information. 分散処理システムの処理例を示す図である。It is a figure which shows the process example of a distributed processing system. クラスタシステム更改前からクラスタシステムのスワップまでの処理例を示す図である。It is a figure which shows the example of a process from the cluster system renewal to the swap of a cluster system. クラスタシステムのスワップ後の処理例を示す図である。It is a figure which shows the example of a process after the swap of a cluster system. クラスタシステム更改時の振り分け情報の一例を示す図である。It is a figure which shows an example of the distribution information at the time of cluster system renewal. 比較例としてロードバランサを常に経由する処理例を示す図である。It is a figure which shows the process example which always passes through a load balancer as a comparative example.

本発明を実施するための形態(以降、「本実施形態」と称す。)について、適宜図面を参照しながら詳細に説明する。   A mode for carrying out the present invention (hereinafter referred to as “the present embodiment”) will be described in detail with reference to the drawings as appropriate.

(分散処理システム)
はじめに、分散処理システム6の構成例について、図1を用いて説明する。
分散処理システム6は、図1では、7台のサーバ1a,1b,1c,1d,1e,1f,1gと、3台のロードバランサ2a,2b,2cとを備えている。なお、サーバの台数およびロードバランサの台数は、図1に示した数に限られなくともよい。ただし、分散処理システム6は、外部からのリクエスト情報を受け付けるために、少なくとも1台のロードバランサを備えている必要がある。また、以降の説明で、サーバを特に区別しない場合には符号1を用いることとする。また、ロードバランサを特に区別しない場合には符号2を用いることとする。
(Distributed processing system)
First, a configuration example of the distributed processing system 6 will be described with reference to FIG.
In FIG. 1, the distributed processing system 6 includes seven servers 1a, 1b, 1c, 1d, 1e, 1f, and 1g, and three load balancers 2a, 2b, and 2c. The number of servers and the number of load balancers need not be limited to the numbers shown in FIG. However, the distributed processing system 6 needs to include at least one load balancer in order to receive request information from the outside. In the following description, reference numeral 1 is used when the servers are not particularly distinguished. In addition, when the load balancer is not particularly distinguished, reference numeral 2 is used.

サーバ1間を結ぶ実線およびサーバ1とロードバランサ2との間を結ぶ実線は、通信可能になっていることを表している。
図1では、サーバ1a,1b,1cは、クラスタ化(クラスタリング)されてクラスタシステム3aを構成している。なお、クラスタシステムは、サーバ上のプロセスが連携して構築されるものであって、1台のサーバ1上に複数のプロセスが動作する場合も許すものとする。例えば、サーバ1d,1eの第1のプロセスは、クラスタ化されてクラスタシステム3bを構成している。また、サーバ1eの第2のプロセス,1f,1gは、クラスタ化されてクラスタシステム3cを構成している。以降の説明では、クラスタシステムを特に区別しない場合には符号3を用いることとする。
なお、サーバ1eの第1のプロセスおよび第2のプロセスは、例えば、仮想マシン(VM;Virtual Machine)等によって実現することができる。
A solid line connecting the servers 1 and a solid line connecting the server 1 and the load balancer 2 indicate that communication is possible.
In FIG. 1, the servers 1a, 1b, and 1c are clustered (clustered) to form a cluster system 3a. Note that the cluster system is constructed by linking processes on a server, and allows a plurality of processes to operate on a single server 1. For example, the first processes of the servers 1d and 1e are clustered to form the cluster system 3b. Further, the second processes 1f and 1g of the server 1e are clustered to form a cluster system 3c. In the following description, reference numeral 3 is used when the cluster systems are not particularly distinguished.
The first process and the second process of the server 1e can be realized by, for example, a virtual machine (VM).

クラスタシステム3aには、ロードバランサ2aが配置されている。また、クラスタシステム3bには、ロードバランサ2bを備えることができる。また、クラスタシステム3cには、ロードバランサ2cを備えることができる。ロードバランサ2は、受信したパケットを、ラウンドロビン等の振り分けアルゴリズムに基づいてサーバ1に振り分ける機能を有し、クラスタシステム3内のサーバ1の負荷分散を実現する。   A load balancer 2a is arranged in the cluster system 3a. The cluster system 3b can include a load balancer 2b. The cluster system 3c can include a load balancer 2c. The load balancer 2 has a function of distributing received packets to the servers 1 based on a distribution algorithm such as round robin, and realizes load distribution of the servers 1 in the cluster system 3.

本実施形態では、分散処理システム6は、ユーザによって操作されるユーザ端末4からデータ処理(例えば、格納、参照、更新)等のリクエスト情報(パケット)を受信した場合、第1段のクラスタシステム3aのサーバ1でリクエスト処理を実行する。次に、分散処理システム6は、第1段の処理中に、第2段のクラスタシステム3bに対してリクエスト情報を発行し処理結果の応答を待つ。さらに、分散処理システム6は、第2段の処理結果を第3段のクラスタシステム3cに引き継いでリクエスト処理を実行するものとする。この処理の流れは一例であり、第1段の処理中に、クラスタシステム3cにリスエスト情報を発行しても構わない。   In the present embodiment, when the distributed processing system 6 receives request information (packets) such as data processing (for example, storage, reference, update) from the user terminal 4 operated by the user, the first-stage cluster system 3a. The request process is executed on the server 1. Next, the distributed processing system 6 issues request information to the second-stage cluster system 3b during the first-stage processing and waits for a response to the processing result. Further, it is assumed that the distributed processing system 6 executes the request processing by taking over the processing result of the second stage to the cluster system 3c of the third stage. The flow of this process is an example, and the request information may be issued to the cluster system 3c during the first stage process.

サーバ1は、リクエスト情報に対する処理を実行し、その過程で次段のクラスタシステム3の振り分け先のサーバ1を決定し、新たなリクエスト情報を当該決定したサーバ1へ送信し応答を待つ機能を有する。また、サーバ1は、最終段のクラスタシステムに配備されている場合には、リクエスト処理を実行した後、その処理結果を応答情報として返信する機能を有する。なお、サーバ1の機能の詳細については後記する。   The server 1 has a function of executing processing for request information, determining a server 1 as a distribution destination of the next-stage cluster system 3 in the process, transmitting new request information to the determined server 1, and waiting for a response. . In addition, when the server 1 is deployed in the last-stage cluster system, the server 1 has a function of executing a request process and returning the process result as response information. Details of the functions of the server 1 will be described later.

ロードバランサ2は、リクエスト情報を受信したとき、ラウンドロビン等の単純な振り分けアルゴリズムに基づいて、当該リクエスト情報を、自身の配置されているクラスタシステム3内のサーバ1に振り分ける処理を実行する。ただし、リクエスト情報は、必ずしも常にロードバランサ2を経由する必要はなく、直接サーバ1によって受信されても構わない。   When receiving the request information, the load balancer 2 executes a process of distributing the request information to the server 1 in the cluster system 3 in which the load balancer 2 is based on a simple distribution algorithm such as round robin. However, the request information does not always have to pass through the load balancer 2 and may be received directly by the server 1.

ユーザ端末4は、例えばパソコンであって、ユーザによって操作される。ユーザ端末4は、ユーザの操作に基づいて、リクエスト情報を分散処理システム6に送信し、そのリクエスト情報に対応する応答情報を受信する機能を有する。   The user terminal 4 is a personal computer, for example, and is operated by the user. The user terminal 4 has a function of transmitting request information to the distributed processing system 6 and receiving response information corresponding to the request information based on a user operation.

管理者端末5は、例えばコンピュータであって、分散処理システム6を保守する際に用いられる。例えば、管理者端末5は、リクエスト情報の処理を担当する振り分け先のサーバ1を決定する際に参照される振り分け情報121(後記)の設定や変更のために用いられる。   The administrator terminal 5 is a computer, for example, and is used when maintaining the distributed processing system 6. For example, the administrator terminal 5 is used for setting or changing distribution information 121 (described later) that is referred to when determining a distribution destination server 1 that is in charge of processing request information.

(サーバ)
次に、サーバ1の機能例について、図2を用いて説明する。
サーバ1は、処理部11、記憶部12および通信部13を備える。
記憶部12は、メモリ、ハードディスク、SSD(Solid State Drive)等の記録装置、またはIC(Integrated Circuit)カード、SDカード、DVD(Digital Versatile Disc)等の記録媒体である。記憶部12は、振り分け情報121を記憶している。
(server)
Next, a function example of the server 1 will be described with reference to FIG.
The server 1 includes a processing unit 11, a storage unit 12, and a communication unit 13.
The storage unit 12 is a recording device such as a memory, a hard disk, or an SSD (Solid State Drive), or a recording medium such as an IC (Integrated Circuit) card, an SD card, or a DVD (Digital Versatile Disc). The storage unit 12 stores distribution information 121.

振り分け情報121は、リクエスト情報に含まれるキー情報と当該キー情報を含むリクエスト情報の振り分け先のサーバ1とを関連付けた情報であり、その情報をクラスタシステム3全てについて格納している。キー情報は、例えば、URL(Uniform Resource Locator)やIPアドレス等である。1台のサーバ1に複数のプロセスが動作している場合、振り分け情報121には、全てのクラスタシステム3のサーバ1で起動されているプロセスとキー情報との関係が記憶されている。   The distribution information 121 is information that associates the key information included in the request information with the server 1 that is the distribution destination of the request information including the key information, and stores the information for all the cluster systems 3. The key information is, for example, a URL (Uniform Resource Locator) or an IP address. When a plurality of processes are operating on one server 1, the distribution information 121 stores the relationship between the processes activated on the servers 1 of all the cluster systems 3 and the key information.

振り分け情報121の一例について、図3を用いて説明する。
図3では、振り分け情報121を、コンシステントハッシングのハッシュ空間で表現している。図3に示すように、クラスタシステム3aについては、キー情報のハッシュ値に対応してサーバ1a〜1cそれぞれの担当領域が表されている。また、クラスタシステム3bについては、キー情報のハッシュ値に対応してサーバ1dおよびサーバ1eの第1のプロセスそれぞれの担当領域が示されている。また、クラスタシステム3cについては、キー情報のハッシュ値に対応してサーバ1eの第2のプロセスおよびサーバ1f,1gそれぞれの担当領域が示されている。
An example of the distribution information 121 will be described with reference to FIG.
In FIG. 3, the distribution information 121 is expressed by a hash space of consistent hashing. As shown in FIG. 3, in the cluster system 3a, the assigned areas of the servers 1a to 1c are represented corresponding to the hash value of the key information. In addition, regarding the cluster system 3b, the areas in charge of the first processes of the server 1d and the server 1e are shown corresponding to the hash value of the key information. For the cluster system 3c, the second process of the server 1e and the areas in charge of the servers 1f and 1g are shown corresponding to the hash value of the key information.

仮に、振り分け情報121において、ハッシュ空間の担当領域が示されていないサーバ1の場合には、そのサーバ1はリクエスト処理を実行することがないので、分散処理システム6内で動作するサーバ1の台数を限定することが可能になる。具体的には、サーバ1aは、クラスタシステム3aにしか担当領域を有していないので、クラスタシステム3aのリクエスト処理だけを担当し、クラスタシステム3b,3cのリクエスト処理を実行しないことが分かる。図3に示した例のように、サーバ1が、クラスタシステム3ごとに特定の1種類、またはサーバ1eのように少数の種類のプロセスだけを実行することになる場合には、その特定の種類のプロセスだけでメモリ領域を独占できる。そのため、サーバ1の台数を最も並列効果が得られる台数に調整することもできる。   If the distribution information 121 is a server 1 for which the assigned area of the hash space is not indicated, the server 1 does not execute the request processing, so the number of servers 1 operating in the distributed processing system 6 Can be limited. Specifically, since the server 1a has a responsible area only in the cluster system 3a, it can be seen that only the request processing of the cluster system 3a is in charge and the request processing of the cluster systems 3b and 3c is not executed. As in the example shown in FIG. 3, when the server 1 executes only one specific type for each cluster system 3 or a small number of types of processes such as the server 1e, the specific type This process can monopolize the memory area. Therefore, the number of servers 1 can be adjusted to the number that can obtain the most parallel effect.

なお、振り分け情報121は、図3に示すようなコンシステントハッシングのハッシュ空間で表現されることに限られることはなく、リレーショナルデータベースやDHT(Distributed Hash Table)等による振り分け方法で表されても構わない。また、振り分け情報121は、キー情報に対応する振り分け先のサーバ1を決定する所定の演算式を記憶しており、キー情報を取得する度に、振り分け処理部111(後記)が当該所定の演算式を演算して、振り分け先を決定するようにしても構わない。   The distribution information 121 is not limited to being expressed in a consistent hashing hash space as shown in FIG. 3, but may be expressed by a distribution method using a relational database, a DHT (Distributed Hash Table), or the like. Absent. In addition, the distribution information 121 stores a predetermined calculation formula for determining the distribution destination server 1 corresponding to the key information, and each time the key information is acquired, the distribution processing unit 111 (described later) performs the predetermined calculation. You may make it determine a distribution destination by calculating a type | formula.

図2に戻って、処理部11は、図示しないCPU(Central Processing Unit)およびメインメモリによって構成され、記憶部12に記憶されているアプリケーションプログラムをメインメモリに展開して、振り分け処理部111、リクエスト処理部112および振り分け情報変更部113を具現化している。   Returning to FIG. 2, the processing unit 11 includes a CPU (Central Processing Unit) and a main memory (not shown), expands an application program stored in the storage unit 12 to the main memory, and distributes the distribution processing unit 111 and the request. The processing unit 112 and the distribution information changing unit 113 are embodied.

振り分け処理部111は、リクエスト情報を受信したとき、振り分け情報121を参照して、リクエスト情報に含まれるキー情報に関連付けられた振り分け先のサーバ1に、当該リクエスト情報を送信する機能を有する。また、振り分け処理部111は、リクエスト処理部112(後記)によってリクエスト処理の処理中にも呼び出すことができ、、振り分け情報121を参照して、新たなキー情報に関連付けられた次段の振り分け先のサーバ1を決定し、その決定した次段のサーバ1に当該処理結果を送信する機能を有する。なお、振り分け処理部111は、必ずしも次段のサーバ1ではなく、処理内容に応じて、その新たなリクエスト情報を処理可能なソフトウェアが動作する、さらにその先の段(クラスタシステム3)のサーバ1を決定するようにしても構わない。   When receiving the request information, the distribution processing unit 111 has a function of referring to the distribution information 121 and transmitting the request information to the distribution destination server 1 associated with the key information included in the request information. Further, the distribution processing unit 111 can be called during the request processing by the request processing unit 112 (described later). The distribution processing unit 111 refers to the distribution information 121 and is assigned to the next distribution destination associated with the new key information. The server 1 is determined, and the processing result is transmitted to the determined next-stage server 1. The distribution processing unit 111 is not necessarily the server 1 in the next stage, but the software 1 that can process the new request information operates according to the processing content, and the server 1 in the further stage (cluster system 3). You may make it decide.

リクエスト処理部112は、受信したリクエスト情報に対して予め決められた内容の処理を実行し応答を返す機能を有する。   The request processing unit 112 has a function of executing a predetermined process on the received request information and returning a response.

振り分け情報変更部113は、管理者端末5から送信された指示情報を受け付けて、振り分け情報121に記憶されているサーバ1の担当領域を変更する機能を有する。   The distribution information changing unit 113 has a function of receiving the instruction information transmitted from the administrator terminal 5 and changing the assigned area of the server 1 stored in the distribution information 121.

通信部13は、外部の装置等との通信を行うためのインタフェースである。通信部13は、ユーザ端末4や管理者端末5との間で情報を送受信するとともに、処理部11の処理結果を他のサーバ1やロードバランサ2に送信したり、他のサーバ1やロードバランサ2から情報を受信したりする機能を有する。   The communication unit 13 is an interface for performing communication with an external device or the like. The communication unit 13 transmits / receives information to / from the user terminal 4 and the administrator terminal 5, transmits the processing result of the processing unit 11 to the other server 1 and the load balancer 2, and transmits to the other server 1 and the load balancer. 2 has a function of receiving information from.

(処理例)
次に、分散処理システム6の処理例について、図4を用いて説明する。
ステップS1では、ユーザ端末4が、データ処理(例えば、格納、参照、更新)等のリクエスト情報(パケット)を送信する。
(Processing example)
Next, a processing example of the distributed processing system 6 will be described with reference to FIG.
In step S1, the user terminal 4 transmits request information (packets) such as data processing (for example, storage, reference, update).

ステップS2では、第1段のクラスタシステム3aのロードバランサ2aは、リクエスト情報を受信し、受信したリクエスト情報をクラスタシステム3a内のサーバ1にラウンドロビン等で振り分ける。図4では、サーバ1cに振り分けた場合について例示する。   In step S2, the load balancer 2a of the first-stage cluster system 3a receives the request information and distributes the received request information to the servers 1 in the cluster system 3a by round robin or the like. FIG. 4 illustrates the case of distribution to the server 1c.

ステップS3では、サーバ1cは、振り分け情報121を参照して、リクエスト処理を担当する振り分け先のクラスタシステム3a内のサーバ1を決定する。図4では、サーバ1aを決定した場合について例示する。   In step S3, the server 1c refers to the distribution information 121 and determines the server 1 in the distribution destination cluster system 3a that is in charge of the request processing. FIG. 4 illustrates the case where the server 1a is determined.

ステップS4では、サーバ1aは、リクエスト処理を実行する。
ステップS5では、サーバ1aは、振り分け情報121を参照して、リクエスト処理を担当する振り分け先の次段のクラスタシステム3b内のサーバ1を決定する。図4では、サーバ1dを決定した場合について例示する。
また、サーバ1aは、処理内容に従い、新たなリクエスト情報を処理可能なソフトウェアが動作する、さらにその先の段のクラスタシステム3cのサーバ1を決定する。図4では、サーバ1eを決定した場合について例示する。
In step S4, the server 1a executes request processing.
In step S5, the server 1a refers to the distribution information 121 and determines the server 1 in the cluster system 3b at the next stage of the distribution destination in charge of request processing. FIG. 4 illustrates the case where the server 1d is determined.
Further, the server 1a determines the server 1 of the cluster system 3c at the further stage where software capable of processing new request information operates according to the processing content. FIG. 4 illustrates the case where the server 1e is determined.

ステップS6では、サーバ1dは、リクエスト処理を実行する。
ステップS7では、サーバ1dは、振り分け情報121を参照して、リクエスト処理を担当する振り分け先の次段のクラスタシステム3c内のサーバ1を決定する。図4では、サーバ1fを決定した場合について例示する。
In step S6, the server 1d executes request processing.
In step S7, the server 1d refers to the distribution information 121 and determines the server 1 in the cluster system 3c at the next stage of the distribution destination in charge of request processing. FIG. 4 illustrates the case where the server 1f is determined.

ステップS8では、サーバ1eおよびサーバ1fは、リクエスト処理を実行する。
なお、図4には記載していないが、クラスタシステム3cが最終段である場合、サーバ1eおよびサーバ1fは、処理結果を返信し、それに伴ってリクエスト情報を発行したサーバ1もバックトラックで処理結果を返信する。
In step S8, the server 1e and the server 1f execute request processing.
Although not shown in FIG. 4, when the cluster system 3c is in the final stage, the server 1e and the server 1f return processing results, and the server 1 that issued the request information is also processed in the backtrack. Reply the result.

(比較例における処理例)
ここで、比較例として、各クラスタシステムに配置されているロードバランサ2を常に経由する場合の処理例について、図7を用いて説明する。
(Processing example in comparative example)
Here, as a comparative example, a processing example in the case of always passing through the load balancer 2 arranged in each cluster system will be described with reference to FIG.

ステップS71では、ユーザ端末4が、リクエスト情報(パケット)を送信する。
ステップS72では、第1段のクラスタシステム3aのロードバランサ2aがリクエスト情報を受信し、受信したリクエスト情報をクラスタシステム3a内のサーバ1にラウンドロビン等で振り分ける。図7では、サーバ1cに振り分けた場合について例示する。
In step S71, the user terminal 4 transmits request information (packet).
In step S72, the load balancer 2a of the first-stage cluster system 3a receives the request information, and distributes the received request information to the servers 1 in the cluster system 3a by round robin or the like. FIG. 7 illustrates the case of distribution to the server 1c.

ステップS73では、サーバ1cは、リクエスト処理を担当する振り分け先のクラスタシステム3a内のサーバ1を決定する。図7では、サーバ1aを決定した場合について例示する。
ステップS74では、サーバ1aは、リクエスト処理を実行する。そして、サーバ1aは、処理結果を次段のクラスタシステム3bのロードバランサ2bに送信する。
In step S73, the server 1c determines the server 1 in the distribution destination cluster system 3a that is in charge of request processing. FIG. 7 illustrates a case where the server 1a is determined.
In step S74, the server 1a executes request processing. Then, the server 1a transmits the processing result to the load balancer 2b of the cluster system 3b at the next stage.

ステップS75では、第2段のクラスタシステム3bのロードバランサ2bは、リクエスト情報を受信し、受信したリクエスト情報をクラスタシステム3b内のサーバ1にラウンドロビン等で振り分ける。図7では、サーバ1eに振り分けた場合について例示する。   In step S75, the load balancer 2b of the second-stage cluster system 3b receives the request information, and distributes the received request information to the servers 1 in the cluster system 3b by round robin or the like. FIG. 7 illustrates the case of distribution to the server 1e.

ステップS76では、サーバ1eは、リクエスト処理を担当する振り分け先のクラスタシステム3b内のサーバ1を決定する。図7では、サーバ1dを決定した場合について例示する。
ステップS77では、サーバ1dは、リクエスト処理を実行する。そして、サーバ1dは、処理結果を次段のクラスタシステム3cのロードバランサ2cに送信する。
In step S76, the server 1e determines the server 1 in the distribution destination cluster system 3b that is in charge of request processing. FIG. 7 illustrates a case where the server 1d is determined.
In step S77, the server 1d executes request processing. Then, the server 1d transmits the processing result to the load balancer 2c of the next-stage cluster system 3c.

ステップS78では、第3段のクラスタシステム3cのロードバランサ2cは、リクエスト情報を受信し、受信したリクエスト情報をクラスタシステム3c内のサーバ1にラウンドロビン等で振り分ける。図7では、サーバ1gに振り分けた場合について例示する。   In step S78, the load balancer 2c of the third-stage cluster system 3c receives the request information, and distributes the received request information to the servers 1 in the cluster system 3c by round robin or the like. FIG. 7 illustrates the case of distribution to the server 1g.

ステップS79では、サーバ1gは、リクエスト処理を担当する振り分け先のクラスタシステム3c内のサーバ1を決定する。図7では、サーバ1fを決定した場合について例示する。
ステップS80では、サーバ1fは、リクエスト処理を実行する。
In step S79, the server 1g determines the server 1 in the distribution destination cluster system 3c that is in charge of request processing. FIG. 7 illustrates the case where the server 1f is determined.
In step S80, the server 1f executes request processing.

以上、本発明の分散処理システム6は、図4に示すように、図7に示す比較例の場合に比べて、ロードバランサ2およびサーバ1を経由するホップ数を低減している。具体的には、図4ではユーザ端末からの最大ホップ数は「5」であるのに対して、図7に示す比較例ではユーザ端末4からのホップ数は「9」である。つまり、分散処理システム6は、全てのサーバ1の担当領域についての情報を格納した振り分け情報121を各サーバ1が記憶することによって、次段のクラスタシステム3のサーバ1を振り分け先として決定し、サーバ1間で処理結果を直接送受信することができる。このことによって、分散処理システム6は、多段処理に掛かる時間を低減することができる。   As described above, the distributed processing system 6 of the present invention reduces the number of hops passing through the load balancer 2 and the server 1 as compared to the comparative example shown in FIG. 7 as shown in FIG. Specifically, in FIG. 4, the maximum number of hops from the user terminal is “5”, whereas in the comparative example illustrated in FIG. 7, the number of hops from the user terminal 4 is “9”. That is, the distributed processing system 6 determines the server 1 of the next-stage cluster system 3 as a distribution destination by storing each server 1 in the distribution information 121 storing information about the areas in charge of all the servers 1, Processing results can be directly transmitted and received between the servers 1. As a result, the distributed processing system 6 can reduce the time required for multistage processing.

(クラスタシステムの更改)
次に、サーバ1のソフトウェアを更新する場合等のクラスタシステム3の更改時に、その更改前後におけるクラスタシステム内のサーバ1のデータの一貫性を確保することが必要となる。その一貫性の確保を容易にする手法について、以下に説明する。
(Renewal of cluster system)
Next, when the cluster system 3 is updated when the software of the server 1 is updated, it is necessary to ensure the consistency of the data of the server 1 in the cluster system before and after the update. A method for facilitating ensuring the consistency will be described below.

まず、クラスタシステム3の更改時の処理例について、図5A、図5Bを用いて説明する。本実施形態では、クラスタシステム3bを更改する場合で説明する。図5Aは、クラスタシステム更改前からクラスタシステムのスワップまでの処理例を表している。図5Bは、クラスタシステムのスワップ後の処理例を表している。   First, a processing example when the cluster system 3 is renewed will be described with reference to FIGS. 5A and 5B. In the present embodiment, a case will be described in which the cluster system 3b is renewed. FIG. 5A shows an example of processing from before the cluster system renewal to the swap of the cluster system. FIG. 5B shows an example of processing after swapping of the cluster system.

図5Aに示すように、(旧)クラスタシステム3bを(新)クラスタシステム3dにスワップしようとした場合、単一点のロードバランサ2を利用して、(旧)クラスタシステム3bを(新)クラスタシステム3dに一気に交換すれば、瞬時に切り替えることができる。言い換えると、単一点がある場合には、更改前後のデータの一貫性が取りやすくなる。
そこで、以下のような手法を用いる。
As shown in FIG. 5A, when the (old) cluster system 3b is to be swapped with the (new) cluster system 3d, the (old) cluster system 3b is changed to the (new) cluster system by using a single point load balancer 2. If it is changed to 3d at a stretch, it can be switched instantaneously. In other words, if there is a single point, it becomes easier to make the data consistent before and after the renewal.
Therefore, the following method is used.

まず、図5AのステップS51では、クラスタシステム3aとクラスタシステム3cのサーバ1の振り分け情報変更部113は、自身の振り分け情報121を書き替えて、クラスタシステム3b内の振り分け先をロードバランサ2bへ変更する。具体的には、図6の上段に示す「S51の後」に示されるように、振り分け情報121が変更される。この変更は、管理者端末5(図1参照)から受信した指示情報に基づいて振り分け情報変更部113によって実行される。   First, in step S51 of FIG. 5A, the distribution information changing unit 113 of the server 1 of the cluster system 3a and the cluster system 3c rewrites its distribution information 121 and changes the distribution destination in the cluster system 3b to the load balancer 2b. To do. Specifically, the distribution information 121 is changed as shown in “after S51” shown in the upper part of FIG. This change is executed by the distribution information changing unit 113 based on the instruction information received from the administrator terminal 5 (see FIG. 1).

図5AのステップS52では、新しいソフトウェアが導入されたサーバ1h,1iとロードバランサ2dが起動された後、(旧)クラスタシステム3bのロードバランサ2bから、(新)クラスタシステム3dのロードバランサ2dにスワップする。スワップの仕方としては、ロードバランサ2のクラスタシステム3外部側のIPアドレスをロードバランサ2bとロードバランサ2dとの間で交換することにより、他のクラスタシステム3の各サーバ1の振り分け情報を一切変更せずに実現する方法がある。スワップ後の振り分け情報121は、図6の中段に示す「S52の後」に示されるようになる。例えば、スワップされた(新)クラスタシステム3dのサーバ1h,1iについては、新たに担当領域が設定されている。また、サーバ1a〜1c、サーバ1eの第2のプロセスおよびサーバ1f〜1gでは、振り分け先が(新)クラスタシステム3dのロードバランサ2dに変更されている。なお、サーバ1a〜1c、サーバ1eの第2のプロセスおよびサーバ1f〜1gの変更は、管理者端末5(図1参照)から受信した指示情報に基づいて振り分け情報変更部113によって実行される。   In step S52 of FIG. 5A, after the servers 1h and 1i into which new software is introduced and the load balancer 2d are activated, the load balancer 2b of the (old) cluster system 3b is changed to the load balancer 2d of the (new) cluster system 3d. Swap. The swap method is to change the distribution information of each server 1 of the other cluster system 3 by exchanging the IP address outside the cluster system 3 of the load balancer 2 between the load balancer 2b and the load balancer 2d. There is a way to realize without. The distribution information 121 after the swap is as shown in “after S52” shown in the middle of FIG. For example, a new assigned area is set for the servers 1h and 1i of the swapped (new) cluster system 3d. Further, in the second processes of the servers 1a to 1c and the server 1e and the servers 1f to 1g, the distribution destination is changed to the load balancer 2d of the (new) cluster system 3d. Note that the second process of the servers 1a to 1c and the server 1e and the change of the servers 1f to 1g are executed by the distribution information changing unit 113 based on the instruction information received from the administrator terminal 5 (see FIG. 1).

次に、図5BのステップS53では、クラスタシステム3aとクラスタシステム3cのサーバ1の振り分け情報変更部113は、自身の振り分け情報121を書き換えて、振り分け先を(新)クラスタシステム3dのサーバ1へ変更する。具体的には、図6の下段に示す「S53の後」に示されるように、振り分け情報121が変更される。この変更は、管理者端末5(図1参照)から受信した指示情報に基づいて振り分け情報変更部113によって実行される。   Next, in step S53 of FIG. 5B, the distribution information changing unit 113 of the server 1 of the cluster system 3a and the cluster system 3c rewrites its distribution information 121, and the distribution destination is changed to the server 1 of the (new) cluster system 3d. change. Specifically, the distribution information 121 is changed as shown in “after S53” shown in the lower part of FIG. This change is executed by the distribution information changing unit 113 based on the instruction information received from the administrator terminal 5 (see FIG. 1).

なお、前記したステップS51〜S53では、管理者端末5が指示情報を送信するように説明したが、起動した(新)クラスタシステム3d側から管理者端末5の指示を仰ぐようにしても構わない。
このようにして、分散処理システム6は、各サーバ1が記憶している振り分け情報121の変更によって、クラスタシステム3の更改前後におけるデータの一貫性の確保を容易に実行することができる。
In steps S51 to S53 described above, the administrator terminal 5 has been described as transmitting instruction information. However, the administrator terminal 5 may receive an instruction from the activated (new) cluster system 3d. .
In this way, the distributed processing system 6 can easily execute the data consistency before and after the renewal of the cluster system 3 by changing the distribution information 121 stored in each server 1.

以上、本実施形態の分散処理システム6は、クラスタシステム3間の情報の送受信を、直接サーバ1同士で行うことができる。つまり、分散処理システム6は、ロードバランサ2を常に経由した場合に比べて、サーバ1を経由するホップ数を低減することができる。したがって、分散処理システム6は、多段処理に掛かる時間を低減することができる。また、分散処理システム6は、クラスタシステム3を更改する場合、振り分け先をロードバランサ2に変更することができる。このことにより、分散処理システム6は、クラスタシステム3の更改を容易に行うことができる。   As described above, the distributed processing system 6 according to the present embodiment can directly transmit and receive information between the cluster systems 3 between the servers 1. That is, the distributed processing system 6 can reduce the number of hops that pass through the server 1 as compared to the case where the load balancer 2 always passes through. Therefore, the distributed processing system 6 can reduce the time required for multistage processing. Further, the distributed processing system 6 can change the distribution destination to the load balancer 2 when the cluster system 3 is renewed. As a result, the distributed processing system 6 can easily update the cluster system 3.

1,1a〜1i サーバ
2,2a〜2c,2d ロードバランサ
3,3a〜3c,3d クラスタシステム
4 ユーザ端末
5 管理者端末
6 分散処理システム
11 処理部
12 記憶部
13 通信部
111 振り分け処理部
112 リクエスト処理部
113 振り分け情報変更部
121 振り分け情報
1, 1a to 1i server 2, 2a to 2c, 2d load balancer 3, 3a to 3c, 3d cluster system 4 user terminal 5 administrator terminal 6 distributed processing system 11 processing unit 12 storage unit 13 communication unit 111 distribution processing unit 112 request Processing unit 113 Distribution information changing unit 121 Distribution information

Claims (2)

クラスタ化されたサーバ群であるクラスタシステムを複数備え、前記クラスタシステムを多段に構成して、外部から受信したリクエスト情報の処理を実行する分散処理システムであって、
前記サーバは、
前記リクエスト情報に含まれるキー情報と当該キー情報を含むリクエスト情報の振り分け先のサーバとを関連付けた情報を前記クラスタシステム全てについて格納した振り分け情報を記憶している記憶部と、
前記リクエスト情報を受信したとき、前記振り分け情報を参照して、当該リクエスト情報に含まれる前記キー情報に関連付けられた次段のクラスタシステムのサーバを決定する振り分け処理部と、
を備えることを特徴とする分散処理システム。
A distributed processing system comprising a plurality of cluster systems that are clustered server groups, configured in multiple stages, and processing request information received from outside,
The server
A storage unit storing distribution information in which information relating the key information included in the request information and a server to which the request information including the key information is allocated is stored for all the cluster systems;
When receiving the request information, with reference to the distribution information, a distribution processing unit that determines a server of the next-stage cluster system associated with the key information included in the request information;
A distributed processing system comprising:
前記クラスタシステムは、前記リクエスト情報を当該クラスタシステム内のサーバに振り分けるロードバランサを備え、
前記サーバが、前記振り分け情報を変更する振り分け情報変更部を備え、
前記クラスタシステムの中の第1のクラスタシステムを更改する場合、
前記振り分け情報変更部が、前記第1のクラスタシステムの更改前に、前記振り分け情報内で前記第1のクラスタシステム以外のクラスタシステム中の前記サーバを振り分け先とする情報を、前記第1のクラスタシステムのロードバランサを振り分け先とする情報に変更する
ことを特徴とすること請求項1に記載の分散処理システム。
The cluster system includes a load balancer that distributes the request information to the servers in the cluster system,
The server includes a distribution information changing unit that changes the distribution information,
When renewing the first cluster system among the cluster systems,
Before the renewal of the first cluster system, the distribution information change unit uses the distribution information to specify the server in the cluster system other than the first cluster system as a distribution destination. The distributed processing system according to claim 1, wherein the information is changed to information with a load balancer of the system as a distribution destination.
JP2014036556A 2014-02-27 2014-02-27 Distributed processing system Active JP6085265B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014036556A JP6085265B2 (en) 2014-02-27 2014-02-27 Distributed processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014036556A JP6085265B2 (en) 2014-02-27 2014-02-27 Distributed processing system

Publications (2)

Publication Number Publication Date
JP2015162061A true JP2015162061A (en) 2015-09-07
JP6085265B2 JP6085265B2 (en) 2017-02-22

Family

ID=54185120

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014036556A Active JP6085265B2 (en) 2014-02-27 2014-02-27 Distributed processing system

Country Status (1)

Country Link
JP (1) JP6085265B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019519026A (en) * 2016-04-28 2019-07-04 スノーフレーク インク. Multi-cluster warehouse
CN111654372A (en) * 2019-11-29 2020-09-11 江苏芯盛智能科技有限公司 Key management method and related device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006127001A (en) * 2004-10-27 2006-05-18 Hitachi Ltd Operating method, operation management system, and operation program for business system
JP2008250806A (en) * 2007-03-30 2008-10-16 Fujitsu Ltd Network apparatus, access control method, and access control program
JP2012242994A (en) * 2011-05-18 2012-12-10 Nippon Telegr & Teleph Corp <Ntt> Transaction processing system, transaction processing method and transaction processing program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006127001A (en) * 2004-10-27 2006-05-18 Hitachi Ltd Operating method, operation management system, and operation program for business system
JP2008250806A (en) * 2007-03-30 2008-10-16 Fujitsu Ltd Network apparatus, access control method, and access control program
JP2012242994A (en) * 2011-05-18 2012-12-10 Nippon Telegr & Teleph Corp <Ntt> Transaction processing system, transaction processing method and transaction processing program

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JPN6016040642; 近藤 悟,外1名: '「クラスタ間におけるキャッシュデータの排他制御に関する一検討」' 電子情報通信学会技術研究報告 第112 第208号, 20120913, pp.13-18, 一般社団法人電子情報通信学会 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019519026A (en) * 2016-04-28 2019-07-04 スノーフレーク インク. Multi-cluster warehouse
US11630850B2 (en) 2016-04-28 2023-04-18 Snowflake Inc. Multi-cluster warehouse
JP7271059B2 (en) 2016-04-28 2023-05-11 スノーフレーク インク. Multi-cluster warehouse
CN111654372A (en) * 2019-11-29 2020-09-11 江苏芯盛智能科技有限公司 Key management method and related device
CN111654372B (en) * 2019-11-29 2023-03-07 江苏芯盛智能科技有限公司 Key management method and related device

Also Published As

Publication number Publication date
JP6085265B2 (en) 2017-02-22

Similar Documents

Publication Publication Date Title
CN105391797B (en) Cloud Server load-balancing method and device based on SDN
US8762534B1 (en) Server load balancing using a fair weighted hashing technique
EP3014444B1 (en) Computing connected components in large graphs
US8290919B1 (en) System and method for distributing and accessing files in a distributed storage system
US8768981B1 (en) System and method for distributing and accessing files in a distributed storage system
US10212228B2 (en) Implementing synchronization of state information betweeen instances of an application as well as between different applications in an efficient, scalable manner
US8392368B1 (en) System and method for distributing and accessing files in a distributed storage system
US10742559B2 (en) Eliminating data traffic redirection in scalable clusters
KR20120018178A (en) Swarm-based synchronization over a network of object stores
JP2017098935A (en) Virtual router cluster, data transfer method and device
CN104536988B (en) MonetDB Distributed Calculation storage methods
CN105119997A (en) Data processing method of cloud computing system
US20130138686A1 (en) Device and method for arranging query
EP3560148B1 (en) Database functions-defined network switch
CN110226159B (en) Method for performing database functions on a network switch
JP6085265B2 (en) Distributed processing system
EP3241309A1 (en) Overprovisioning floating ip addresses to provide stateful ecmp for traffic groups
US20150263990A1 (en) Network device, control method, and program
CN107046503B (en) Message transmission method, system and device
CN110581784B (en) Node health check method, device and equipment
US9632890B2 (en) Facilitating N-way high availability storage services
US9276771B1 (en) Lossless multipath table compression
WO2017157189A1 (en) Data streaming broadcasts in massively parallel processing databases
US11563715B2 (en) Pattern matching by a network device for domain names with wildcard characters
US11233739B2 (en) Load balancing system and method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160218

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161018

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161025

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161226

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170127

R150 Certificate of patent or registration of utility model

Ref document number: 6085265

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150