JP5452516B2 - Distributed processing apparatus and distributed processing method - Google Patents

Distributed processing apparatus and distributed processing method Download PDF

Info

Publication number
JP5452516B2
JP5452516B2 JP2011019964A JP2011019964A JP5452516B2 JP 5452516 B2 JP5452516 B2 JP 5452516B2 JP 2011019964 A JP2011019964 A JP 2011019964A JP 2011019964 A JP2011019964 A JP 2011019964A JP 5452516 B2 JP5452516 B2 JP 5452516B2
Authority
JP
Japan
Prior art keywords
data
processing
transaction
processing server
server
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
JP2011019964A
Other languages
Japanese (ja)
Other versions
JP2012160075A (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 JP2011019964A priority Critical patent/JP5452516B2/en
Publication of JP2012160075A publication Critical patent/JP2012160075A/en
Application granted granted Critical
Publication of JP5452516B2 publication Critical patent/JP5452516B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Description

本発明は、分散処理装置、および、分散処理方法の技術に関する。   The present invention relates to a technique of a distributed processing apparatus and a distributed processing method.

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

ロードバランサが要求された処理を振り分ける手法としては、コンシステント・ハッシングを挙げることができる(非特許文献1)。コンシステント・ハッシングは、データの保管要求と取得要求のみを受け付ける単純なインタフェースを持ち、受信した信号の要求するデータの識別子を見て、複数のサーバのうち何れのサーバが対象のデータを管理しているかを特定し、このサーバに対して保管要求及び取得要求を振り分けることを行う。   As a method for distributing the processing requested by the load balancer, there is consistent hashing (Non-patent Document 1). Consistent hashing has a simple interface that accepts only data storage requests and data acquisition requests. By looking at the identifier of the data requested by the received signal, any of the servers manages the target data. And the storage request and the acquisition request are distributed to this server.

D. Karger, E. Lehman, T. Leighton, M. Levine, D. Lewin, and R. Panigrahy, “Consistent Hashing and Random Trees: Distributed Caching Protocols for Relieving Hot Spots on the World Wide Web,” in Proceedings of the 29th ACM Symposium on Theory of Computing (STOC'97), May 1997 ,pp.654-663.D. Karger, E. Lehman, T. Leighton, M. Levine, D. Lewin, and R. Panigrahy, “Consistent Hashing and Random Trees: Distributed Caching Protocols for Relieving Hot Spots on the World Wide Web,” in Proceedings of the 29th ACM Symposium on Theory of Computing (STOC'97), May 1997, pp.654-663.

トランザクション処理システムが扱うトランザクションとして、複数のトランザクション状態間が関連する場合も考えられる。ここで、トランザクション間が「関連する」とは、例えばSIP(Session Initiation Protocol)におけるB2BUA(Back-to-Back User Agent)のように、2つの呼をアプリケーションサーバが終端し、これを常に対として処理を行うような形態を指す。   A transaction handled by the transaction processing system may be related to a plurality of transaction states. Here, “related” between transactions means that, for example, B2BUA (Back-to-Back User Agent) in SIP (Session Initiation Protocol) terminates two calls by the application server and always sets these as a pair. It refers to a form that performs processing.

なお、B2BUAとは、2台のクライアント間でSIPのセッションを接続するときに、対応しているSIPの方式の違いなどにより、その2台が直接接続できないときに、その2台のセッションを仲介する別の装置(B2BUA)を設けることにより、B2BUAをアダプタとして2台のクライアントがセッションを接続できるようにする仕組みである。   B2BUA is an intermediary between two clients when a SIP session is connected between two clients and the two cannot be connected directly due to differences in the supported SIP methods. By providing another device (B2BUA), B2BUA is used as an adapter so that two clients can connect a session.

そこで、関連する複数のトランザクションを同じ1つの処理サーバへと分配することにより、複数のトランザクション間での処理の待ち合わせ時間を短縮することができる。
一方、複数のトランザクション間の関連性は、時間の経過によって変化することもある。例えば、B2BUA接続によるユーザAとユーザBとによる二者通話と、ユーザCとユーザDとによる二者通話が成立していた場合に、呼を切断することなく、それぞれA−C、B−D間の二者通話に入れ替える場合が、挙げられる。
しかし、従来のトランザクション分配処理では、このような複数のトランザクション間の関連性を考慮した効率的な分配が行われておらず、トランザクションの処理効率を落としてしまっている。
Thus, by distributing a plurality of related transactions to the same processing server, it is possible to shorten the processing waiting time between the plurality of transactions.
On the other hand, the relationship between a plurality of transactions may change over time. For example, when a two-party call between the user A and the user B by the B2BUA connection and a two-party call between the user C and the user D have been established, the calls are not disconnected, and AC, BD, respectively. The case of switching to a two-way call in between.
However, in the conventional transaction distribution processing, such efficient distribution considering the relationship between a plurality of transactions is not performed, and the transaction processing efficiency is lowered.

そこで、本発明は、複数のトランザクション間の関連性を考慮した効率的なトランザクション分配処理を実現することを、主な目的とする。   Therefore, the main object of the present invention is to realize an efficient transaction distribution process in consideration of the relationship between a plurality of transactions.

前記課題を解決するために、本発明は、クライアントからのトランザクションの要求信号を処理する処理サーバが複数台存在し、それらの前記処理サーバに対して前記要求信号を分散させる分散処理装置であって、前記分散処理装置が、複数台の前記処理サーバと、その各前記処理サーバに対してそれぞれトランザクションデータを格納するデータ管理装置と、複数台の前記処理サーバから前記要求信号の分配先である1台の前記処理サーバを選択する振り分けサーバとを含めて構成され、前記分散処理装置の記憶手段には、グループ化された複数の関連するトランザクションと、それらのトランザクションのデータの配置先を示す配置IDとの対応を示す第1対応データと、前記配置IDに対応するデータの配置先である前記データ管理装置に接続される前記処理サーバの装置IDと前記配置IDとの対応を示す第2対応データとが、それぞれ格納されており、前記振り分けサーバは、受信した前記要求信号から、前記配置IDを検索キーとして、前記第2対応データから、対応する前記処理サーバの前記装置IDを前記要求信号の分配先として特定し、その特定した前記処理サーバへと前記要求信号を転送し、前記処理サーバは、前記要求信号を受信してトランザクションの処理を実行し、その実行によってグループ化された複数の関連するトランザクションの構成変更を行うときに、前記第1対応データによって対応づけられている前記配置IDとトランザクションとの対応関係を変更するともに、変更された前記対応関係の配置IDから前記第2対応データによって対応づけられている前記処理サーバに接続される前記データ管理装置へと、変更前の前記処理サーバに接続される前記データ管理装置から、トランザクションのデータを移動することを特徴とする。   In order to solve the above-mentioned problems, the present invention provides a distributed processing apparatus in which a plurality of processing servers that process transaction request signals from clients exist and the request signals are distributed to the processing servers. The distributed processing device is a plurality of the processing servers, a data management device that stores transaction data for each of the processing servers, and a distribution destination of the request signal from the plurality of processing servers 1 A distribution server that selects a single processing server, and the storage unit of the distributed processing device includes a plurality of related transactions grouped and an allocation ID that indicates an allocation destination of data of these transactions The first correspondence data indicating the correspondence between the data management device and the data management device which is the placement destination of the data corresponding to the placement ID Second correspondence data indicating the correspondence between the device ID of the processing server connected to the location ID and the placement ID is stored, respectively, and the distribution server searches the placement ID from the received request signal. From the second correspondence data, the device ID of the corresponding processing server is specified as a distribution destination of the request signal, the request signal is transferred to the specified processing server, and the processing server When receiving a request signal, executing a transaction process, and performing a configuration change of a plurality of related transactions grouped by the execution, the arrangement ID and the transaction associated with the first correspondence data Corresponding to the second correspondence data from the changed arrangement ID of the correspondence. To the data management device, wherein connected to the processing server being, said from the data management device connected to the processing server before the change, wherein the moving data of the transaction.

これにより、複数の関連するトランザクションを単位として1つの配置IDを割り当てるとともに、その複数の関連するトランザクションの構成変更を行うことで、複数のトランザクション間の関連性を考慮した効率的なトランザクション分配処理を実現することができる。   As a result, one allocation ID is assigned in units of a plurality of related transactions, and by changing the configuration of the plurality of related transactions, efficient transaction distribution processing considering the relationship between the plurality of transactions is performed. Can be realized.

本発明は、前記複数の関連するトランザクションとは、SIP(Session Initiation Protocol)におけるB2BUA(Back-to-Back User Agent)によって終端される複数の前記クライアント間の呼接続であり、前記トランザクションの構成変更とは、前記呼接続によって前記クライアント間での通話処理が行われているときの、前記クライアントの話者変更であることを特徴とする。   In the present invention, the plurality of related transactions are call connections between the plurality of clients terminated by B2BUA (Back-to-Back User Agent) in SIP (Session Initiation Protocol), and the configuration of the transaction is changed. Is a change of a speaker of the client when a call process is performed between the clients by the call connection.

これにより、呼を切断することなく、二者通話の通話相手をに入れ替えることができる。   As a result, it is possible to replace the other party in a two-party call without disconnecting the call.

本発明は、前記処理サーバが、前記要求信号を受信してトランザクションの処理を実行し、その実行によって自身に接続されている前記データ管理装置とは別の前記データ管理装置内のデータへのアクセスを行うときに、前記配置IDをキーとして、前記分散処理装置の記憶手段から対応する前記処理サーバを特定し、その特定した前記処理サーバに接続されている前記データ管理装置に対して、前記データへのアクセスを行うことを特徴とする。   In the present invention, the processing server receives the request signal, executes a transaction process, and accesses the data in the data management device different from the data management device connected to the processing server by executing the processing. The corresponding processing server is specified from the storage unit of the distributed processing device using the placement ID as a key, and the data is transmitted to the data management device connected to the specified processing server. It is characterized by performing access to.

これにより、処理サーバは、自身が担当していないデータへのアクセスを実現できる。   Thereby, the processing server can realize access to data that the processing server is not in charge of.

本発明は、前記分散処理装置の記憶手段には、前記配置IDと前記装置IDとの対応情報として、前記配置IDの始点から終点までの範囲を示す値域に対して、1つの前記装置IDを対応づける値域対応データが格納されており、前記分散処理装置内に新たな前記処理サーバが追加されるときには、前記値域対応データのうちの1つの前記装置IDを選択して、その選択した前記値域対応データの値域を分割して、分割した片方の値域を新たな前記処理サーバの前記装置IDに対応付け、前記分散処理装置内から前記処理サーバが削除されるときには、前記値域対応データのうちの削除される前記処理サーバの前記装置IDを選択して、その選択した前記値域対応データの値域を他の前記処理サーバの値域へと統合することを特徴とする。   According to the present invention, in the storage unit of the distributed processing device, as the correspondence information between the placement ID and the device ID, one device ID is assigned to a range indicating a range from the start point to the end point of the placement ID. When range-corresponding data to be associated is stored and a new processing server is added to the distributed processing device, one of the device IDs in the range-corresponding data is selected, and the selected range When the range of the corresponding data is divided, one of the divided ranges is associated with the device ID of the new processing server, and when the processing server is deleted from within the distributed processing device, The apparatus ID of the processing server to be deleted is selected, and the range of the selected data corresponding to the range is integrated with the range of the other processing server.

これにより、処理サーバの増設を行っても、処理サーバ間でのアクセス処理待ちなどのボトルネックが発生せず、トランザクション処理システムの性能を向上させることができる。   As a result, even when processing servers are added, bottlenecks such as waiting for access processing between processing servers do not occur, and the performance of the transaction processing system can be improved.

本発明によれば、複数のトランザクション間の関連性を考慮した効率的なトランザクション分配処理を実現することができる。   According to the present invention, it is possible to realize an efficient transaction distribution process in consideration of the relationship between a plurality of transactions.

本発明の一実施形態に関するトランザクション処理システムを示す構成図である。It is a block diagram which shows the transaction processing system regarding one Embodiment of this invention. 本発明の一実施形態に関するトランザクション処理システムにおける装置構成例を示す構成図である。It is a block diagram which shows the apparatus structural example in the transaction processing system regarding one Embodiment of this invention. 本発明の一実施形態に関するトランザクション処理システムの各サーバの詳細を示す構成図である。It is a block diagram which shows the detail of each server of the transaction processing system regarding one Embodiment of this invention. 本発明の一実施形態に関する振り分けサーバにおけるトランザクションの振り分け処理を示すフローチャートである。It is a flowchart which shows the transaction distribution process in the distribution server regarding one Embodiment of this invention. 本発明の一実施形態に関する処理サーバにおけるトランザクションの実行処理を示すフローチャートである。It is a flowchart which shows the execution process of the transaction in the processing server regarding one Embodiment of this invention. 第1比較例におけるトランザクション処理システムを示す構成図である。It is a block diagram which shows the transaction processing system in a 1st comparative example.

以下、本発明の一実施形態について、図面を参照して詳細に説明する。   Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings.

図1は、トランザクション処理システムを示す構成図である。トランザクション処理システムは、クライアント1と、ロードバランサ2と、分散システム9とがネットワークで接続されて構成される。分散システム9内は、振り分けサーバ4と、処理サーバ5と、データ管理装置6とから構成されている。図1のトランザクション処理システムを構成する各装置の台数は、図1に例示した台数に限定されず、任意の台数としてもよい。   FIG. 1 is a configuration diagram showing a transaction processing system. The transaction processing system is configured by connecting a client 1, a load balancer 2, and a distributed system 9 via a network. The distributed system 9 includes a distribution server 4, a processing server 5, and a data management device 6. The number of devices constituting the transaction processing system in FIG. 1 is not limited to the number illustrated in FIG. 1 and may be an arbitrary number.

なお、図1のトランザクション処理システムを構成する各装置は、CPU(Central Processing Unit)とメモリとハードディスク(記憶手段)とネットワークインタフェースを有するコンピュータとして構成され、このコンピュータは、CPUが、メモリ上に読み込んだプログラムを実行することにより、各処理部を動作させる。   1 is configured as a computer having a CPU (Central Processing Unit), a memory, a hard disk (storage means), and a network interface. The computer reads the data into the memory. Each processing unit is operated by executing the program.

トランザクション処理システムで動作するプログラムの一例として、電話などの呼(セッション)処理を行うアプリケーションサーバを実現するための、分散処理ミドルウェアがある。分散処理ミドルウェアは、アプリケーションを分散処理ミドルウェアとは別に用意するもので、アプリケーションからは装置が分散していることを意識することなくサービスの処理を実現することができるようにするものである。このような分散処理ミドルウェアを使うことによって、外部からは単一のアプリケーションサーバのように見せながら、実態は複数台のサーバによる台数効果によって大規模な処理を行うことが可能になる。   As an example of a program that operates in a transaction processing system, there is distributed processing middleware for realizing an application server that performs call (session) processing such as a telephone. The distributed processing middleware prepares an application separately from the distributed processing middleware, and allows the application to realize service processing without being aware of the distribution of devices. By using such distributed processing middleware, it is possible to perform large-scale processing due to the effect of the number of multiple servers while making it look like a single application server from the outside.

クライアント1は、処理サーバ5に対して、トランザクションの処理を要求する。ロードバランサ2は、クライアント1からの要求を受け、分散システム9内の複数台の振り分けサーバ4のうちの1台を選択し、その選択した振り分けサーバ4に処理を依頼する。
ここで、クライアント1からは、ロードバランサ2という出入り口を介して、分散システム9があたかも単一の装置で動作するシステムとして見えるため、分散システム9内の装置構成を柔軟に変更する(装置の追加や削除など)ことができる。
The client 1 requests the processing server 5 to process a transaction. In response to the request from the client 1, the load balancer 2 selects one of the plurality of distribution servers 4 in the distributed system 9 and requests the selected distribution server 4 to perform processing.
Here, since the client 1 sees the distributed system 9 as a system that operates as a single device via the gateway called the load balancer 2, the device configuration in the distributed system 9 can be flexibly changed (addition of devices). Or delete).

振り分けサーバ4は、ロードバランサ2からの要求を受け、複数台の処理サーバ5のうちの1台を選択し、その選択した処理サーバ5に処理を依頼する。ここで、処理サーバ5の選択処理においては、データ管理装置6内に管理されているトランザクションのデータの所在が参照される。まず、処理サーバ5とデータ管理装置6とは1:1で接続されており、あるトランザクションのデータは、ある1台のデータ管理装置6が格納している。よって、要求されたトランザクションのデータを管理するデータ管理装置6を収容する処理サーバ5を、振り分けサーバ4が選択する必要がある。
処理サーバ5は、振り分けサーバ4からの要求を受け、データ管理装置6内のトランザクションのデータにアクセスすることで、トランザクションの要求を処理する。
The distribution server 4 receives a request from the load balancer 2, selects one of the plurality of processing servers 5, and requests the selected processing server 5 for processing. Here, in the selection processing of the processing server 5, the location of transaction data managed in the data management device 6 is referred to. First, the processing server 5 and the data management device 6 are connected at a ratio of 1: 1, and a certain data management device 6 stores data of a certain transaction. Therefore, it is necessary for the distribution server 4 to select the processing server 5 that accommodates the data management device 6 that manages the data of the requested transaction.
The processing server 5 receives the request from the distribution server 4 and processes the transaction request by accessing the transaction data in the data management device 6.

図2は、トランザクション処理システムにおける装置構成例を示す構成図である。図1との違いは、分散システム9内の各装置(振り分けサーバ4、処理サーバ5、および、データ管理装置6)が、1台のサーバ装置8の筐体内に収容されている点である。
一般的に、装置間通信(ネットワークケーブルを介した通信)は、通信ヘッダ処理などにより、装置内通信(内部バスを介した通信)よりも通信速度が遅い。よって、通信頻度の高い装置群をサーバ装置8(分散処理装置)という1台の物理的な装置内に収めることにより、装置内通信の頻度を上げ、通信効率を向上させることができる。
FIG. 2 is a configuration diagram illustrating an example of a device configuration in the transaction processing system. The difference from FIG. 1 is that each device (distribution server 4, processing server 5, and data management device 6) in the distributed system 9 is accommodated in the housing of one server device 8.
In general, communication between devices (communication via a network cable) has a communication speed slower than intra-device communication (communication via an internal bus) due to communication header processing or the like. Therefore, by storing a group of devices having a high communication frequency in one physical device called the server device 8 (distributed processing device), the frequency of in-device communication can be increased and the communication efficiency can be improved.

図3は、トランザクション処理システムの各サーバの詳細を示す構成図である。
振り分けサーバ4は、トランザクション分散部41と、データ配置テーブル42(第2対応データ)と、配置検索部43とを有する。
処理サーバ5は、トランザクション処理部51と、配置ID割当部52と、集合変更部53と、他管理データ取得部54と、トランザクション管理テーブル55(第1対応データ)とを有する。
FIG. 3 is a configuration diagram showing details of each server of the transaction processing system.
The distribution server 4 includes a transaction distribution unit 41, a data arrangement table 42 (second correspondence data), and an arrangement search unit 43.
The processing server 5 includes a transaction processing unit 51, an arrangement ID assignment unit 52, a set change unit 53, another management data acquisition unit 54, and a transaction management table 55 (first correspondence data).

トランザクション分散部41は、データ配置テーブル42を参照して、ロードバランサ2からのトランザクションの要求を処理する処理サーバ5を決定し、その処理サーバ5のトランザクション処理部51へと要求を送信する。
トランザクション処理部51は、トランザクションの要求を受け、データ管理装置6内のトランザクションのデータをアクセスして、トランザクションの要求を処理する。
The transaction distribution unit 41 refers to the data arrangement table 42 to determine the processing server 5 that processes the transaction request from the load balancer 2 and transmits the request to the transaction processing unit 51 of the processing server 5.
The transaction processing unit 51 receives the transaction request, accesses the transaction data in the data management device 6, and processes the transaction request.

トランザクション処理部51は、トランザクションの要求を処理する過程において、データ管理装置6内のトランザクションのデータの配置に変更(新規データ作成、既存データ移動、既存データ削除など)が発生したときには、配置ID割当部52に対して、トランザクションのデータに対して割り当てる配置IDの割当処理を依頼する。
トランザクション処理部51は、トランザクションの要求を処理する過程において、トランザクションのデータと、配置IDとの対応関係に変更が発生したときには、集合変更部53に対して、その対応関係の変更処理を依頼する。
トランザクション処理部51は、トランザクションの要求を処理する過程において、他装置の処理サーバ5配下のデータ管理装置6内にデータアクセスを行うときには、他管理データ取得部54に対して、そのデータアクセスを依頼する。
The transaction processing unit 51 assigns an arrangement ID when a change in the arrangement of transaction data in the data management device 6 occurs (new data creation, existing data movement, existing data deletion, etc.) in the course of processing a transaction request. The unit 52 is requested to perform allocation processing for allocation IDs allocated to transaction data.
In the course of processing a transaction request, the transaction processing unit 51 requests the set changing unit 53 to change the correspondence when the correspondence between the transaction data and the arrangement ID changes. .
In the process of processing a transaction request, the transaction processing unit 51 requests the other management data acquisition unit 54 to access the data when accessing the data management device 6 under the processing server 5 of the other device. To do.

Figure 0005452516
Figure 0005452516

表1は、データ配置テーブル42を例示した表である。データ配置テーブル42は、処理サーバ5のIDごとに、その処理サーバ5が担当する配置IDの値域(始点IDから終点IDまでの範囲を示す)を対応づける表である。
処理サーバ5のIDは、担当する配置IDの始点となる配置IDと同じ値としてもよいし、ランダムな値としてもよい。
配置IDとは、1つ以上のトランザクションのデータに対して割り当てられるIDであり、同じ配置IDが割り当てられるトランザクションのデータは、同じ1つのデータ管理装置6内に格納される。例えば、配置ID「100」が割り当てられるトランザクションのデータは、処理サーバ5「P1」配下のデータ管理装置6に格納される。
トランザクションのデータとは、トランザクションを処理するときに必要なデータであり、例えば、呼処理における呼の識別子、発信者、受信者、状態遷移を含む。
トランザクションの状態遷移とは、話し中、呼び出し中などの呼の状態を示すパラメータである。
Table 1 is an example of the data arrangement table 42. The data arrangement table 42 is a table that associates, for each ID of the processing server 5, a value range (showing a range from the start point ID to the end point ID) of the arrangement ID that the processing server 5 takes charge of.
The ID of the processing server 5 may be the same value as the arrangement ID that is the starting point of the arrangement ID in charge, or may be a random value.
An arrangement ID is an ID assigned to data of one or more transactions, and transaction data to which the same arrangement ID is assigned is stored in the same one data management device 6. For example, the transaction data to which the allocation ID “100” is assigned is stored in the data management device 6 under the processing server 5 “P1”.
The transaction data is data necessary when processing a transaction, and includes, for example, a call identifier, caller, receiver, and state transition in call processing.
The transaction state transition is a parameter indicating a call state such as busy or ringing.

データ配置テーブル42内の処理サーバIDと配置IDとの対応データの初期値は、管理者などからあらかじめ与えられている。配置IDの値域は、各処理サーバ5間で重複や漏れがないように設定することで、任意の配置IDから1台の処理サーバ5を求めることができる。
また、データ配置テーブル42内の配置IDの値域は、まだどのトランザクションのデータにも割り当てられていない(未発行の)配置IDの分も、あらかじめデータ配置テーブル42に登録しておくことが望ましい。これにより、配置IDの発行処理や削除処理の回数に依存せずに、データ配置テーブル42を更新する必要がなくなる。
The initial value of the correspondence data between the processing server ID and the arrangement ID in the data arrangement table 42 is given in advance by an administrator or the like. By setting the range of the placement ID so that there is no overlap or omission between the processing servers 5, one processing server 5 can be obtained from an arbitrary placement ID.
In addition, it is desirable that the value range of the arrangement ID in the data arrangement table 42 is registered in advance in the data arrangement table 42 for the arrangement IDs that have not yet been assigned to any transaction data (unissued). This eliminates the need to update the data placement table 42 without depending on the number of placement ID issuance and deletion processes.

Figure 0005452516
Figure 0005452516

表2は、表1のデータ配置テーブル42に対して、1台のサーバP5が追加されたときのデータ配置テーブル42を例示した表である。
サーバP5の追加に伴い、既存の4台の処理サーバ5がそれぞれ担当している配置IDの値域のうち、1つの配置IDの値域を選択して、その選択した値域を分割してサーバP5にも割り当てる。
表2では、分割前の各処理サーバが受け持っているデータ量の内、最も大きいデータ量(D=400)を担当するサーバP4の値域(600〜999)を選択し、その選択した分割前の値域を2分割する(600〜799,800〜999)。これにより、処理サーバごとのデータ量が均一化される。
同様に、処理サーバの減少時(例えば、処理サーバP3の故障発生)には、減少対象の処理サーバP3が受け持っている値域(400〜599)の前後を担当する担当処理サーバ(P2,P4)を選択し、その選択した2台のうちの現在受け持っているデータ量が小さい方の処理サーバ(表2の場合はデータ量が同じなので、P2)に、減少対象の担当処理サーバが担当する値域を統合する(200〜599)。
Table 2 is a table illustrating the data arrangement table 42 when one server P5 is added to the data arrangement table 42 of Table 1.
Along with the addition of the server P5, a value range of one arrangement ID is selected from the value ranges of the arrangement IDs each of which the four existing processing servers 5 are in charge of, and the selected value range is divided into the server P5. Also assign.
In Table 2, the value range (600 to 999) of the server P4 in charge of the largest data amount (D = 400) is selected from among the data amounts handled by each processing server before the division, and the selected before the division. The range is divided into two (600 to 799, 800 to 999). Thereby, the data amount for each processing server is made uniform.
Similarly, when the number of processing servers decreases (for example, when a failure occurs in the processing server P3), the processing servers in charge (P2, P4) in charge of before and after the value range (400 to 599) that the processing server P3 to be decreased is responsible for. Of the two selected units and the processing server with the smaller amount of data currently being handled (in the case of Table 2, the data amount is the same, P2), the value range assigned to the processing server to be reduced Are integrated (200 to 599).

このように、データ配置テーブル42に対する処理サーバ5の増減時にはデータ配置テーブル42の更新が必要になるが、その更新範囲である配置IDの値域の変更量は、1台分の処理サーバ5の担当量だけで済む。例えば、処理サーバ5が5台に増加したときには、1/5の変更量で済み、処理サーバ5がN台に増加したときには、1/Nの変更量で済む。
担当する処理サーバ5の変更には、その処理サーバ5が収容するデータ管理装置6内のデータの移動を伴うので、データ配置テーブル42の変更量が少ないことにより、データ移動処理の負荷を削減することができる。
As described above, when the number of processing servers 5 with respect to the data placement table 42 is increased or decreased, the data placement table 42 needs to be updated. However, the amount of change in the range of the placement ID that is the update range is the responsibility of the processing server 5 for one unit. Just the amount. For example, when the number of processing servers 5 is increased to five, a change amount of 1/5 is sufficient, and when the number of processing servers 5 is increased to N, a change amount of 1 / N is sufficient.
Since the change of the processing server 5 in charge is accompanied by the movement of data in the data management device 6 accommodated by the processing server 5, the load of the data movement process is reduced by reducing the amount of change of the data arrangement table 42. be able to.

トランザクション分散部41は、ロードバランサ2からトランザクションの処理要求を受け付けると、その配置IDを検索キーとして、データ配置テーブル42から、トランザクションの処理要求を担当する処理サーバ5を決定する。なお、トランザクションの処理要求に配置IDが含まれていないときには、そのトランザクションIDを検索キーとして、後記するトランザクション管理テーブル55(表3)から配置IDを取得してもよい。
つまり、トランザクション分散部41は、コンシステント・ハッシングのデータ管理者の特定と類似したロジックを用いることで、データ管理者の代わりに処理サーバ5の特定を行う。
そして、トランザクション分散部41は、決定した処理サーバ5のトランザクション処理部51に対して、トランザクションの処理要求を通知する。
When the transaction distribution unit 41 receives a transaction processing request from the load balancer 2, the transaction distribution unit 41 determines the processing server 5 in charge of the transaction processing request from the data arrangement table 42 using the arrangement ID as a search key. When the transaction processing request does not include an arrangement ID, the arrangement ID may be acquired from the transaction management table 55 (Table 3) described later using the transaction ID as a search key.
That is, the transaction distribution unit 41 specifies the processing server 5 instead of the data manager by using a logic similar to the specification of the data manager of the consistent hashing.
Then, the transaction distribution unit 41 notifies the transaction processing unit 51 of the determined processing server 5 of the transaction processing request.

配置ID割当部52は、1つ以上のトランザクションに対して、1つの配置IDを割り当て、その結果をトランザクション管理テーブル55へと格納する。なお、複数のトランザクションをグループ化して1つの配置IDを割り当てるときには、同じ配置IDが割り当てられた複数のトランザクションは、互いに関連するトランザクションである。「関連するトランザクション」とは、例えば、B2BUAにより接続される2つの呼処理が挙げられるが、トランザクションの種類は呼処理に限定されず、また、トランザクションの本数は2つに限定されない。   The placement ID assigning unit 52 assigns one placement ID to one or more transactions and stores the result in the transaction management table 55. When a plurality of transactions are grouped and one arrangement ID is assigned, the plurality of transactions assigned the same arrangement ID are transactions that are related to each other. Examples of the “related transaction” include two call processes connected by B2BUA, but the type of transaction is not limited to call processing, and the number of transactions is not limited to two.

Figure 0005452516
Figure 0005452516

表3は、トランザクション管理テーブル55を例示した表である。トランザクション管理テーブル55は、配置IDごとに、その配置IDが割り当てられている1つ以上のトランザクションのIDを対応づける表である。
例えば、配置ID「0」と配置ID「1」のレコードでは、それぞれB2BUAにより接続される2つのトランザクションがグループ化されて1つの配置IDに対応する。
また、配置ID「2」のレコードでは、SIPにおけるSIPプロキシに相当するような非常にシンプルな1つのトランザクション「T4」に対応する。
Table 3 is a table illustrating the transaction management table 55. The transaction management table 55 is a table that associates, for each placement ID, the ID of one or more transactions to which the placement ID is assigned.
For example, in the records of the arrangement ID “0” and the arrangement ID “1”, two transactions connected by B2BUA are grouped and correspond to one arrangement ID.
The record with the arrangement ID “2” corresponds to one very simple transaction “T4” corresponding to a SIP proxy in SIP.

Figure 0005452516
Figure 0005452516

表4は、トランザクション管理テーブル55(配置ID=0,1の変更)を例示した表である。
集合変更部53は、複数のトランザクション間の関連性がトランザクションの処理中で変更されるときに、その変更をトランザクション管理テーブル55へと反映させるとともに、トランザクション管理テーブル55の更新内容をもとに、データ管理装置6内のトランザクションのデータの移動処理を制御する。
Table 4 is a table illustrating the transaction management table 55 (change of arrangement ID = 0, 1).
The set change unit 53 reflects the change in the transaction management table 55 when the relevance between the plurality of transactions is changed during transaction processing, and based on the updated contents of the transaction management table 55, It controls the movement process of the transaction data in the data management device 6.

集合変更部53は、表4では、配置ID「0」のトランザクション「T0,T1」と、配置ID「1」のトランザクション「T2,T3」とが変更前であるときに、T1およびT2をそれぞれレコード間で移動することで、配置ID「0」のトランザクション「T0,T2」と、配置ID「1」のトランザクション「T1,T3」として、トランザクション管理テーブル55を更新する。
なお、このようなトランザクション管理テーブル55の更新処理は、例えば、B2BUAにおける話者の入れ替えに伴い発生する。
In Table 4, when the transaction “T0, T1” with the arrangement ID “0” and the transaction “T2, T3” with the arrangement ID “1” are before the change, the set changing unit 53 sets T1 and T2 respectively. By moving between records, the transaction management table 55 is updated as the transaction “T0, T2” with the arrangement ID “0” and the transaction “T1, T3” with the arrangement ID “1”.
Note that such a process for updating the transaction management table 55 occurs, for example, when a speaker is replaced in B2BUA.

他管理データ取得部54は、トランザクション処理部51からの指示を受け、他の処理サーバ5が収容するデータ管理装置6へのデータアクセスを行う。なお、トランザクション処理部51からの他装置で管理するデータの取得指示は、例えば、B2BUAにおける話者の入れ替えを行うにあたって、入れ替え先のB2BUAの各トランザクション状態が通話確立状態になっているか確認するなどの、別のB2BUA状態へのアクセスが発生したときに、通知される。   The other management data acquisition unit 54 receives an instruction from the transaction processing unit 51 and performs data access to the data management device 6 accommodated in the other processing server 5. Note that the acquisition instruction of data managed by the other device from the transaction processing unit 51 is, for example, confirming whether each transaction state of the replacement B2BUA is in a call establishment state when performing speaker replacement in B2BUA. Notified when an access to another B2BUA state occurs.

まず、他管理データ取得部54は、トランザクション処理部51から通知された配置IDを、配置検索部43に通知することにより、振り分けサーバ4にその配置IDを担当する処理サーバ5の特定を依頼する。
配置検索部43は、データ配置テーブル42を参照して、配置IDから処理サーバ5を特定する。
他管理データ取得部54は、特定された他装置である処理サーバ5に収容されるデータ管理装置6から、トランザクション処理部51からの指示を受けたデータを取得する。これにより、複数台の処理サーバ5が1台のデータ管理装置6を直接共有(接続)していなくても、自身の担当しないデータを取得することができる。
First, the other management data acquisition unit 54 requests the allocation server 4 to identify the processing server 5 in charge of the allocation ID by notifying the allocation search unit 43 of the allocation ID notified from the transaction processing unit 51. .
The arrangement search unit 43 refers to the data arrangement table 42 and identifies the processing server 5 from the arrangement ID.
The other management data acquisition unit 54 acquires the data received the instruction from the transaction processing unit 51 from the data management device 6 accommodated in the processing server 5 which is the specified other device. Thereby, even if a plurality of processing servers 5 do not directly share (connect) one data management device 6, it is possible to acquire data that is not handled by itself.

図4は、振り分けサーバ4のトランザクション分散部41が実行するトランザクションの振り分け処理を示すフローチャートである。
S101では、ロードバランサ2より信号を受信する。
S102では、S101の信号中に配置IDが含まれているか否かを判定し、S102でYesならS104へ進み、S102でNoならS103へ進む。
S103では、配置ID割当部52に対して、新たにS101の信号に割り当てる配置IDの割当を依頼し、S104へ進む。
S104では、データ配置テーブル42を参照して、S101の信号に割り当てられる配置IDから、その配置IDを担当する処理サーバ5を特定する。
S105では、S104で特定した処理サーバ5に対して、S101で受信した信号を転送する。
FIG. 4 is a flowchart showing transaction distribution processing executed by the transaction distribution unit 41 of the distribution server 4.
In S101, a signal is received from the load balancer 2.
In S102, it is determined whether or not an arrangement ID is included in the signal of S101. If Yes in S102, the process proceeds to S104, and if No in S102, the process proceeds to S103.
In S103, the allocation ID allocation unit 52 is requested to allocate an allocation ID newly allocated to the signal in S101, and the process proceeds to S104.
In S104, with reference to the data arrangement table 42, the processing server 5 in charge of the arrangement ID is specified from the arrangement ID assigned to the signal in S101.
In S105, the signal received in S101 is transferred to the processing server 5 identified in S104.

図5は、処理サーバ5におけるトランザクションの実行処理を示すフローチャートである。   FIG. 5 is a flowchart showing transaction execution processing in the processing server 5.

S201では、処理サーバ5は、S105の信号を受信する。
S202では、トランザクション処理部51は、適宜データ管理装置6に対して、S201の信号に対応するトランザクションのデータにアクセスを行いつつ、トランザクションの処理を実行する。
トランザクション処理部51は、S202の処理中に他装置が管理するデータへのアクセスが発生したときには(S203,Yes)、他管理データ取得部54を介して、他装置が管理するデータへのアクセスを実行し(S204)、S205へ進む。一方、アクセスが発生しないときには(S203,No)、S205へ進む。
In S201, the processing server 5 receives the signal of S105.
In S202, the transaction processing unit 51 executes transaction processing while appropriately accessing the data of the transaction corresponding to the signal in S201 with respect to the data management apparatus 6.
When an access to data managed by another device occurs during the process of S202 (S203, Yes), the transaction processing unit 51 accesses the data managed by the other device via the other management data acquisition unit 54. Execute (S204) and proceed to S205. On the other hand, when no access occurs (S203, No), the process proceeds to S205.

トランザクション処理部51は、S202の処理中にトランザクション管理テーブル55内の1つの配置IDが割り当てられているトランザクショングループを構成するトランザクションの変更が発生したときには(S205,Yes)、集合変更部53を介して、トランザクション管理テーブル55を更新する(S206)とともに、S201で受信した信号への応答信号に埋め込む配置IDを、S206で変更後の配置IDへと変更し(S207)、S211へ進む。一方、トランザクションの変更が発生しないときには(S205,No)、S211へ進む。   When a transaction that constitutes a transaction group to which one arrangement ID in the transaction management table 55 is assigned during the process of S202 occurs (S205, Yes), the transaction processing unit 51 passes the set change unit 53. Then, the transaction management table 55 is updated (S206), and the arrangement ID embedded in the response signal to the signal received in S201 is changed to the changed arrangement ID in S206 (S207), and the process proceeds to S211. On the other hand, when no transaction change occurs (S205, No), the process proceeds to S211.

S211では、トランザクション処理部51は、S202で実行されたトランザクションの処理を終了させる。
S212では、S202〜S211で処理した結果をもとに、S201の受信信号に対する応答信号を、クライアント1へと送信する。
In S211, the transaction processing unit 51 ends the transaction process executed in S202.
In S212, a response signal to the received signal in S201 is transmitted to the client 1 based on the results processed in S202 to S211.

以上説明した本実施形態によれば、集合変更部53が、複数のトランザクション間の関連性の変更に伴って、トランザクションの分配をトランザクション管理テーブル55に更新することにより、複数のトランザクション間の関連性を考慮した効率的なトランザクション分配処理を実現することができる。   According to the present embodiment described above, the set change unit 53 updates the distribution of transactions to the transaction management table 55 in accordance with the change in the relationship between the transactions, whereby the relationship between the transactions. Efficient transaction distribution processing considering the above can be realized.

さらに、本実施形態によれば、データ配置テーブル42の変更処理をなるべく小さくするために、データ配置テーブル42の内容を、処理サーバ5ごとの配置IDの値域を割り当てるように構成する。以下、このデータ配置テーブル42の構成内容による効果を説明するために、3つの比較例(第1比較例〜第3比較例)との比較を行う。
(第1比較例)データ配置テーブルを持たない構成。
(第2比較例)データ配置テーブルとして、使用される配置IDが発行される度に、その配置IDを処理サーバ5に対応づける構成。
(第3比較例)データ配置テーブルとして、配置IDを入力パラメータとする剰余演算の結果の値を元に、処理サーバ5に対応づける構成。
Furthermore, according to the present embodiment, the content of the data placement table 42 is configured to allocate a range of placement IDs for each processing server 5 in order to make the change processing of the data placement table 42 as small as possible. Hereinafter, in order to explain the effect of the configuration contents of the data arrangement table 42, comparison with three comparative examples (first comparative example to third comparative example) is performed.
(First Comparative Example) A configuration without a data arrangement table.
(Second Comparative Example) A configuration in which the arrangement ID is associated with the processing server 5 every time an arrangement ID to be used is issued as the data arrangement table.
(3rd comparative example) The structure matched with the process server 5 based on the value of the result of the remainder calculation which uses arrangement ID as an input parameter as a data arrangement table.

図6は、第1比較例におけるトランザクション処理システムを示す構成図である。この第1比較例は、図1のトランザクション処理システムと比較すると、振り分けサーバ4を持たない点と、複数の処理サーバが1つのデータ管理装置を共有する点とで異なる。   FIG. 6 is a configuration diagram showing the transaction processing system in the first comparative example. This first comparative example differs from the transaction processing system of FIG. 1 in that it does not have a distribution server 4 and in that a plurality of processing servers share one data management device.

ロードバランサは、トランザクションの要求を処理サーバに振り分けるときに、どの処理サーバに振り分けても、振り分け先の処理サーバが同じデータ管理装置からデータアクセスすることができるので、データ配置テーブル42は不要になる。   When a load balancer distributes a transaction request to a processing server, the distribution processing server can access data from the same data management apparatus regardless of which processing server is distributed, so the data allocation table 42 is not necessary. .

しかし、データ管理装置を共有する構成では、複数の処理サーバ上で関連する複数のトランザクション処理が発生すると、それぞれ発生したデータアクセスを複数の処理サーバ間で待ち合わせる無駄な時間がボトルネックとして発生してしまい、処理サーバの台数を増加しても、トランザクション処理システム全体の性能向上は困難となる。   However, in a configuration in which data management devices are shared, when a plurality of related transaction processes occur on a plurality of processing servers, a wasteful time for waiting for the respective data access between the plurality of processing servers occurs as a bottleneck. Therefore, even if the number of processing servers is increased, it is difficult to improve the performance of the entire transaction processing system.

Figure 0005452516
Figure 0005452516

表5は、第2比較例のデータ配置テーブル(配置IDごとの管理)を例示した表である。第2比較例の振り分けサーバは、表5の配置IDごとのデータ配置テーブルを参照することで、トランザクションの分配先となる処理サーバを特定する。
しかし、配置IDの数は、トランザクションの数であるため、データ配置テーブルのレコード数が多くなってしまうため、データ配置テーブルの更新処理がトランザクション処理システムのボトルネックとなってしまう。
Table 5 is a table illustrating a data arrangement table (management for each arrangement ID) of the second comparative example. The distribution server of the second comparative example refers to the data allocation table for each allocation ID in Table 5 to identify the processing server that is the transaction distribution destination.
However, since the number of arrangement IDs is the number of transactions, the number of records in the data arrangement table increases, and the data arrangement table update process becomes a bottleneck of the transaction processing system.

Figure 0005452516
Figure 0005452516

表6は、第3比較例のデータ配置テーブル(剰余演算での管理)を例示した表である。関数「mod(a,b)=c」とは、被除数aを除数bで除算したときの剰余がcである旨の剰余関数である。サーバP5の追加前において、例えば、配置ID=10の要求を受けた振り分けサーバは、10÷4=2余り2なので、余り2に対応するサーバP3を振り分け先として選択する。
しかし、第3比較例では、処理サーバの増減時に大きなボトルネックが発生してしまう。例えば、4台のサーバP1〜P4に対して、新たにサーバP5が追加されたとする。サーバ台数が、剰余演算における除数に該当するため、たった1台のサーバが追加されただけでも、データ配置テーブルの内容が大幅に(厳密にはNを処理サーバ台数とした場合、全体の(N−1)/N)変更されてしまう。例えば、表6の構成では、N=4からN=5への変更に伴い、全体の4/5の内容がデータ配置テーブルにおいて変更される。
データ配置テーブルの変更処理だけでなく、その変更後のデータ配置テーブルの内容に合わせて、トランザクションのデータそのものを変更先へとデータ移動する必要があり、このデータ移動処理が第3比較例での大きなボトルネックである。
Table 6 is a table illustrating a data arrangement table (management by remainder calculation) of the third comparative example. The function “mod (a, b) = c” is a remainder function indicating that the remainder when the dividend a is divided by the divisor b is c. Before the addition of the server P5, for example, the distribution server that has received the request for the arrangement ID = 10 is 10 ÷ 4 = 2 remainder 2. Therefore, the server P3 corresponding to the remainder 2 is selected as the distribution destination.
However, in the third comparative example, a large bottleneck occurs when the number of processing servers increases or decreases. For example, it is assumed that a server P5 is newly added to four servers P1 to P4. Since the number of servers corresponds to the divisor in the remainder calculation, even if only one server is added, the contents of the data arrangement table are greatly increased (strictly, if N is the number of processing servers, the total (N -1) / N) It is changed. For example, in the configuration of Table 6, with the change from N = 4 to N = 5, the entire 4/5 contents are changed in the data arrangement table.
It is necessary not only to change the data arrangement table but also to move the transaction data itself to the change destination in accordance with the contents of the data arrangement table after the change. This data movement process is the same as in the third comparative example. It is a big bottleneck.

一方、本実施形態のデータ配置テーブル42(表1,表2)では、配置IDを値域で設定するとともに、処理サーバ5の台数変更時には、配置IDの値域を変更(分割、統合)するだけで済むので、前記第1比較例〜第3比較例でそれぞれ発生したトランザクション処理システムのボトルネックが発生せず、処理サーバ5の台数増加に伴い、トランザクション処理システムの性能を向上させることができる。   On the other hand, in the data arrangement table 42 (Tables 1 and 2) of the present embodiment, the arrangement ID is set as a value range, and when the number of processing servers 5 is changed, the arrangement ID value range is simply changed (divided or integrated). Therefore, the bottleneck of the transaction processing system generated in each of the first to third comparative examples does not occur, and the performance of the transaction processing system can be improved as the number of processing servers 5 increases.

1 クライアント
2 ロードバランサ
4 振り分けサーバ
5 処理サーバ
6 データ管理装置
8 サーバ装置
9 分散システム
41 トランザクション分散部
42 データ配置テーブル(第2対応データ)
43 配置検索部
51 トランザクション処理部
52 配置ID割当部
53 集合変更部
54 他管理データ取得部
55 トランザクション管理テーブル(第1対応データ)
DESCRIPTION OF SYMBOLS 1 Client 2 Load balancer 4 Distribution server 5 Processing server 6 Data management apparatus 8 Server apparatus 9 Distribution system 41 Transaction distribution part 42 Data arrangement table (2nd corresponding data)
43 Arrangement Search Unit 51 Transaction Processing Unit 52 Arrangement ID Assignment Unit 53 Set Change Unit 54 Other Management Data Acquisition Unit 55 Transaction Management Table (First Corresponding Data)

Claims (8)

クライアントからのトランザクションの要求信号を処理する処理サーバが複数台存在し、それらの前記処理サーバに対して前記要求信号を分散させる分散処理装置であって、
前記分散処理装置は、複数台の前記処理サーバと、その各前記処理サーバに対してそれぞれトランザクションデータを格納するデータ管理装置と、複数台の前記処理サーバから前記要求信号の分配先である1台の前記処理サーバを選択する振り分けサーバとを含めて構成され、
前記分散処理装置の記憶手段には、
グループ化された複数の関連するトランザクションと、それらのトランザクションのデータの配置先を示す配置IDとの対応を示す第1対応データと、
前記配置IDに対応するデータの配置先である前記データ管理装置に接続される前記処理サーバの装置IDと前記配置IDとの対応を示す第2対応データとが、それぞれ格納されており、
前記振り分けサーバは、受信した前記要求信号から、前記配置IDを検索キーとして、前記第2対応データから、対応する前記処理サーバの前記装置IDを前記要求信号の分配先として特定し、その特定した前記処理サーバへと前記要求信号を転送し、
前記処理サーバは、前記要求信号を受信してトランザクションの処理を実行し、その実行によってグループ化された複数の関連するトランザクションの構成変更を行うときに、前記第1対応データによって対応づけられている前記配置IDとトランザクションとの対応関係を変更するともに、変更された前記対応関係の配置IDから前記第2対応データによって対応づけられている前記処理サーバに接続される前記データ管理装置へと、変更前の前記処理サーバに接続される前記データ管理装置から、トランザクションのデータを移動することを特徴とする
分散処理装置。
There are a plurality of processing servers that process transaction request signals from clients, and the distributed processing device distributes the request signals to the processing servers,
The distributed processing device includes a plurality of the processing servers, a data management device that stores transaction data for each of the processing servers, and a distribution destination of the request signal from the plurality of processing servers. And a sorting server that selects the processing server of
In the storage means of the distributed processing device,
First corresponding data indicating a correspondence between a plurality of related transactions grouped and an arrangement ID indicating an arrangement destination of data of the transactions;
Second correspondence data indicating the correspondence between the device ID of the processing server connected to the data management device, which is the placement destination of the data corresponding to the placement ID, and the placement ID are stored, respectively.
The distribution server identifies the device ID of the corresponding processing server as the distribution destination of the request signal from the second correspondence data, using the arrangement ID as a search key, from the received request signal, and identifies it Transferring the request signal to the processing server;
The processing server receives the request signal, executes a transaction process, and performs a configuration change of a plurality of related transactions grouped by the execution, and is associated with the first corresponding data. Change the correspondence relationship between the placement ID and the transaction, and change the changed placement ID of the correspondence relationship to the data management device connected to the processing server associated with the second correspondence data. A distributed processing device, wherein transaction data is moved from the data management device connected to the previous processing server.
前記複数の関連するトランザクションとは、SIP(Session Initiation Protocol)におけるB2BUA(Back-to-Back User Agent)によって終端される複数の前記クライアント間の呼接続であり、
前記トランザクションの構成変更とは、前記呼接続によって前記クライアント間での通話処理が行われているときの、前記クライアントの話者変更であることを特徴とする
請求項1に記載の分散処理装置。
The plurality of related transactions are call connections between the plurality of clients terminated by B2BUA (Back-to-Back User Agent) in SIP (Session Initiation Protocol),
The distributed processing apparatus according to claim 1, wherein the transaction configuration change is a change of a speaker of the client when a call process is performed between the clients by the call connection.
前記処理サーバは、前記要求信号を受信してトランザクションの処理を実行し、その実行によって自身に接続されている前記データ管理装置とは別の前記データ管理装置内のデータへのアクセスを行うときに、前記配置IDをキーとして、前記分散処理装置の記憶手段から対応する前記処理サーバを特定し、その特定した前記処理サーバに接続されている前記データ管理装置に対して、前記データへのアクセスを行うことを特徴とする
請求項1または請求項2に記載の分散処理装置。
When the processing server receives the request signal, executes a transaction process, and accesses the data in the data management device different from the data management device connected to the processing server by executing the processing. The corresponding processing server is identified from the storage means of the distributed processing device using the arrangement ID as a key, and the data management device connected to the identified processing server is accessed to the data. The distributed processing apparatus according to claim 1, wherein the distributed processing apparatus is performed.
前記分散処理装置の記憶手段には、前記第2対応データとして、前記配置IDの始点から終点までの範囲を示す値域に対して、1つの前記装置IDを対応づける値域対応データが格納されており、
前記分散処理装置内に新たな前記処理サーバが追加されるときには、前記値域対応データのうちの1つの値域を選択して、その選択した前記値域対応データの値域を分割して、分割した片方の値域を新たな前記処理サーバの前記装置IDに対応付け、
前記分散処理装置内から前記処理サーバが削除されるときには、前記値域対応データのうちの削除される前記処理サーバに対応する値域を選択して、その選択した前記値域対応データの値域を他の前記処理サーバの値域へと統合することを特徴とする
請求項1ないし請求項3のいずれか1項に記載の分散処理装置。
The storage unit of the distributed processing device stores, as the second correspondence data, value range correspondence data that associates one device ID with a value range indicating a range from the start point to the end point of the placement ID. ,
When a new processing server is added to the distributed processing device, one range of the range corresponding data is selected, the range of the selected range corresponding data is divided, and one of the divided ranges Associating a range with the device ID of the new processing server;
When the processing server is deleted from within the distributed processing device, the range corresponding to the processing server to be deleted is selected from the range corresponding data, and the range of the selected range corresponding data is selected as another range. The distributed processing apparatus according to claim 1, wherein the distributed processing apparatus is integrated into a value range of a processing server.
クライアントからのトランザクションの要求信号を処理する処理サーバが複数台存在し、それらの前記処理サーバに対して前記要求信号を分散させる分散処理装置による分散処理方法であって、
前記分散処理装置は、複数台の前記処理サーバと、その各前記処理サーバに対してそれぞれトランザクションデータを格納するデータ管理装置と、複数台の前記処理サーバから前記要求信号の分配先である1台の前記処理サーバを選択する振り分けサーバとを含めて構成され、
前記分散処理装置の記憶手段には、
グループ化された複数の関連するトランザクションと、それらのトランザクションのデータの配置先を示す配置IDとの対応を示す第1対応データと、
前記配置IDに対応するデータの配置先である前記データ管理装置に接続される前記処理サーバの装置IDと前記配置IDとの対応を示す第2対応データとが、それぞれ格納されており、
前記振り分けサーバは、受信した前記要求信号から、前記配置IDを検索キーとして、前記第2対応データから、対応する前記処理サーバの前記装置IDを前記要求信号の分配先として特定し、その特定した前記処理サーバへと前記要求信号を転送し、
前記処理サーバは、前記要求信号を受信してトランザクションの処理を実行し、その実行によってグループ化された複数の関連するトランザクションの構成変更を行うときに、前記第1対応データによって対応づけられている前記配置IDとトランザクションとの対応関係を変更するともに、変更された前記対応関係の配置IDから前記第2対応データによって対応づけられている前記処理サーバに接続される前記データ管理装置へと、変更前の前記処理サーバに接続される前記データ管理装置から、トランザクションのデータを移動することを特徴とする
分散処理方法。
There are a plurality of processing servers that process transaction request signals from clients, and a distributed processing method by a distributed processing device that distributes the request signals to the processing servers,
The distributed processing device includes a plurality of the processing servers, a data management device that stores transaction data for each of the processing servers, and a distribution destination of the request signal from the plurality of processing servers. And a sorting server that selects the processing server of
In the storage means of the distributed processing device,
First corresponding data indicating a correspondence between a plurality of related transactions grouped and an arrangement ID indicating an arrangement destination of data of the transactions;
Second correspondence data indicating the correspondence between the device ID of the processing server connected to the data management device, which is the placement destination of the data corresponding to the placement ID, and the placement ID are stored, respectively.
The distribution server identifies the device ID of the corresponding processing server as the distribution destination of the request signal from the second correspondence data, using the arrangement ID as a search key, from the received request signal, and identifies it Transferring the request signal to the processing server;
The processing server receives the request signal, executes a transaction process, and performs a configuration change of a plurality of related transactions grouped by the execution, and is associated with the first corresponding data. Change the correspondence relationship between the placement ID and the transaction, and change the changed placement ID of the correspondence relationship to the data management device connected to the processing server associated with the second correspondence data. A distributed processing method, comprising: moving transaction data from the data management apparatus connected to the previous processing server.
前記複数の関連するトランザクションとは、SIP(Session Initiation Protocol)におけるB2BUA(Back-to-Back User Agent)によって終端される複数の前記クライアント間の呼接続であり、
前記トランザクションの構成変更とは、前記呼接続によって前記クライアント間での通話処理が行われているときの、前記クライアントの話者変更であることを特徴とする
請求項5に記載の分散処理方法。
The plurality of related transactions are call connections between the plurality of clients terminated by B2BUA (Back-to-Back User Agent) in SIP (Session Initiation Protocol),
6. The distributed processing method according to claim 5, wherein the transaction configuration change is a speaker change of the client when a call process is performed between the clients by the call connection.
前記処理サーバは、前記要求信号を受信してトランザクションの処理を実行し、その実行によって自身に接続されている前記データ管理装置とは別の前記データ管理装置内のデータへのアクセスを行うときに、前記配置IDをキーとして、前記分散処理装置の記憶手段から対応する前記処理サーバを特定し、その特定した前記処理サーバに接続されている前記データ管理装置に対して、前記データへのアクセスを行うことを特徴とする
請求項5または請求項6に記載の分散処理方法。
When the processing server receives the request signal, executes a transaction process, and accesses the data in the data management device different from the data management device connected to the processing server by executing the processing. The corresponding processing server is identified from the storage means of the distributed processing device using the arrangement ID as a key, and the data management device connected to the identified processing server is accessed to the data. The distributed processing method according to claim 5, wherein the distributed processing method is performed.
前記分散処理装置の記憶手段には、前記配置IDと前記装置IDとの対応情報として、前記配置IDの始点から終点までの範囲を示す値域に対して、1つの前記装置IDを対応づける値域対応データが格納されており、
前記分散処理装置内に新たな前記処理サーバが追加されるときには、前記値域対応データのうちの1つの値域を選択して、その選択した前記値域対応データの値域を分割して、分割した片方の値域を新たな前記処理サーバの前記装置IDに対応付け、
前記分散処理装置内から前記処理サーバが削除されるときには、前記値域対応データのうちの削除される前記処理サーバに対応する値域を選択して、その選択した前記値域対応データの値域を他の前記処理サーバの値域へと統合することを特徴とする
請求項5ないし請求項7のいずれか1項に記載の分散処理方法。
In the storage unit of the distributed processing device, as the correspondence information between the arrangement ID and the apparatus ID, a value range correspondence that associates one device ID with a value range indicating a range from the start point to the end point of the arrangement ID. Data is stored,
When a new processing server is added to the distributed processing device, one range of the range corresponding data is selected, the range of the selected range corresponding data is divided, and one of the divided ranges Associating a range with the device ID of the new processing server;
When the processing server is deleted from within the distributed processing device, the range corresponding to the processing server to be deleted is selected from the range corresponding data, and the range of the selected range corresponding data is selected as another range. The distributed processing method according to any one of claims 5 to 7, wherein the processing server is integrated into a value range.
JP2011019964A 2011-02-01 2011-02-01 Distributed processing apparatus and distributed processing method Active JP5452516B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011019964A JP5452516B2 (en) 2011-02-01 2011-02-01 Distributed processing apparatus and distributed processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011019964A JP5452516B2 (en) 2011-02-01 2011-02-01 Distributed processing apparatus and distributed processing method

Publications (2)

Publication Number Publication Date
JP2012160075A JP2012160075A (en) 2012-08-23
JP5452516B2 true JP5452516B2 (en) 2014-03-26

Family

ID=46840541

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011019964A Active JP5452516B2 (en) 2011-02-01 2011-02-01 Distributed processing apparatus and distributed processing method

Country Status (1)

Country Link
JP (1) JP5452516B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6093319B2 (en) * 2014-02-27 2017-03-08 日本電信電話株式会社 Cluster system

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0887473A (en) * 1994-09-16 1996-04-02 Toshiba Corp Data processor
JPH09218858A (en) * 1996-02-14 1997-08-19 Hitachi Ltd Distributed type data base control system
JP2005078394A (en) * 2003-09-01 2005-03-24 Nec Corp Non-shared database cluster system, database node and dynamic data re-arrangement method and program
JP4537250B2 (en) * 2005-04-19 2010-09-01 株式会社日立製作所 Gateway device
JP2009259007A (en) * 2008-04-17 2009-11-05 Nippon Telegr & Teleph Corp <Ntt> Distributed storage method, distributed storage system and distributed storage device

Also Published As

Publication number Publication date
JP2012160075A (en) 2012-08-23

Similar Documents

Publication Publication Date Title
CN109343963B (en) Application access method and device for container cluster and related equipment
CN105095317B (en) Distributed data base service management system
US9052962B2 (en) Distributed storage of data in a cloud storage system
US20240176672A1 (en) Systems and methods providing serverless dns integration
US10146848B2 (en) Systems and methods for autonomous, scalable, and distributed database management
CN106817432B (en) Method, system and equipment for elastically stretching virtual resources in cloud computing environment
US20190340171A1 (en) Data Redistribution Method and Apparatus, and Database Cluster
CN111338806B (en) Service control method and device
US9483493B2 (en) Method and system for accessing a distributed file system
JP5352367B2 (en) Virtual machine boot terminal and virtual machine boot program
US11140220B1 (en) Consistent hashing using the power of k choices in server placement
JP2013090072A (en) Service provision system
JP6405255B2 (en) COMMUNICATION SYSTEM, QUEUE MANAGEMENT SERVER, AND COMMUNICATION METHOD
JP2013174945A (en) Thin client system, connection management server, connection management method and connection management program
CN110569302A (en) method and device for physical isolation of distributed cluster based on lucene
US9760370B2 (en) Load balancing using predictable state partitioning
EP4369181A1 (en) Node for running container group, and management system and method of container group
JP5452516B2 (en) Distributed processing apparatus and distributed processing method
WO2016000303A1 (en) Resource allocation method and system, and computer storage medium
CN112422611A (en) Virtual bucket storage processing method and system based on distributed object storage
CN112910796B (en) Traffic management method, apparatus, device, storage medium, and program product
US11310309B1 (en) Arc jump: per-key selection of an alternative server when implemented bounded loads
US20240176762A1 (en) Geographically dispersed hybrid cloud cluster
CN109936672B (en) Online charging method and device
CN114072768A (en) Controller for bridging database architectures

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130204

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20130201

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131128

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131227

R150 Certificate of patent or registration of utility model

Ref document number: 5452516

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350