JP2000242620A - Data duplication system and storage medium recording data duplication program - Google Patents

Data duplication system and storage medium recording data duplication program

Info

Publication number
JP2000242620A
JP2000242620A JP11047076A JP4707699A JP2000242620A JP 2000242620 A JP2000242620 A JP 2000242620A JP 11047076 A JP11047076 A JP 11047076A JP 4707699 A JP4707699 A JP 4707699A JP 2000242620 A JP2000242620 A JP 2000242620A
Authority
JP
Japan
Prior art keywords
node
read
data
update
nodes
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
JP11047076A
Other languages
Japanese (ja)
Other versions
JP3421270B2 (en
Inventor
Takao Yamashita
高生 山下
Satoshi Ono
諭 小野
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 JP04707699A priority Critical patent/JP3421270B2/en
Publication of JP2000242620A publication Critical patent/JP2000242620A/en
Application granted granted Critical
Publication of JP3421270B2 publication Critical patent/JP3421270B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To perform application in the case of requesting more than a certain degree of the newness of obtained data. SOLUTION: This data duplication system is provided with plural duplication nodes for managing data, a client node for requesting the updating and read of the data and a front end node for mediating a request from the client node to the duplication node. The duplication nodes constitute one or more groups connected by a logical tree structure for indicating an updating route, and when an updating request is propagated, propagate the updating request to all the nodes other than the node which propagates the updating request. The front end node requests the updating to one duplication node (updating start node 3) in the respective groups for the updating request from the client node, mediates a read request to the plural duplication nodes (read nodes 4), calculates the data of how much recentness can be acquired or the like and returns the obtained data and a scale for indicating how recent the data are to the client node.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、データ複製システ
ムおよびデータ複製プログラムを記録した記録媒体に関
し、特にネットワーク上で使用される判断支援システ
ム、および、判断支援システムと協調して動作するディ
レクトリ・サービス等に適用されるデータ複製システム
およびデータ複製プログラムを記録した記録媒体に関す
るものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data replication system and a recording medium on which a data replication program is recorded, and more particularly to a decision support system used on a network and a directory service operating in cooperation with the decision support system. The present invention relates to a data duplication system and a recording medium that records a data duplication program.

【0002】[0002]

【従来の技術】近年のネットワークの発展に伴う分散環
境の拡大およびノード数の増大によって、ディレクトリ
・サービス、移動端末情報、ネットワーク管理情報、判
断支援システム等のデータ管理が重要となってきてい
る。これらでは、銀行のオンライン処理のように、トラ
ンザクションおよびその構成要素であるオペレーション
の厳密な一貫性制御の重要性が低い反面、各トランザク
ションに対する応答時間やスループットに関する重要性
が高い。
2. Description of the Related Art Data management of directory services, mobile terminal information, network management information, decision support systems and the like has become important due to the expansion of distributed environments and the number of nodes accompanying the recent development of networks. In these, strict consistency control of transactions and their constituent operations, such as online processing of banks, is less important, but the importance of response time and throughput for each transaction is higher.

【0003】このような特性を持つデータでは、(1)
トランザクションを発行するアプリケーションが一貫性
を維持するために必要な処理順序や依存関係を把握して
いる場合、(2)トランザクションの応答および応答結
果を用いたアプリケーションの動作結果によってデータ
の異常が検知できる場合、(3)ほとんどのトランザク
ション間に衝突が無く、衝突があった場合でもアンドゥ
(undo)によって取り消しを行うことが可能である場合
が多い。そこで、このような特性を利用したレイジー
(Lazy)レプリケーション、および、現在の多くのデー
タベース・システムに実装されている非同期更新による
データ・レプリケーション機能により、応答時間、スル
ープットの改善および弱一貫性の制御が行われている。
For data having such characteristics, (1)
If the application that issues the transaction knows the processing order and dependencies required to maintain consistency, (2) a data error can be detected based on the transaction response and the operation result of the application using the response result. In such a case, (3) there is no collision between most transactions, and even if there is a collision, it is often possible to undo by undo. Therefore, Lazy replication using such characteristics and the data replication function using asynchronous update implemented in many current database systems improve response time, throughput, and control weak consistency. Has been done.

【0004】判断支援システム等では、同一内容のデー
タを保持するプロセス間で、データ・レプリケーション
を行った際に、他のデータベースでは更新がすでに行わ
れているが、自データベースではまだ更新されていない
データが存在することがある。単位時間あたりに更新さ
れているデータの個数は、フレッシュネス(freshnes
s)と呼ばれ、システムからみたときのデータの新しさ
を示す。これはクライアント側からみても、取得データ
の新しさを示すことになる。今後の判断支援システム等
においては、このような実際に取得したデータの新しさ
が重要な判断材料になるものと考えられる。
In a decision support system or the like, when data replication is performed between processes holding the same data, other databases have already been updated, but their own databases have not been updated yet. Data may be present. The number of data updated per unit time is the
s), which indicates the freshness of the data as viewed from the system. This shows the freshness of the acquired data from the client's point of view. In future decision support systems and the like, the newness of such actually acquired data is considered to be an important decision material.

【0005】以上の観点から、従来においては以下のよ
うな技術がある。 (1)レイジー・レプリケーション(lazy replicatio
n)(文献:R.Ladin,“Lazy replication:Exploiting th
e semantics of distributed services”,Proceedings
of the Workshop on Management of Replicated Data,p
p.31-34,1990、文献:R.Ladin,“Providing high availa
bility using lazy replication”,ACM Transaction Co
mputer Systems,Vol.10,pp.360-391,November 1992) このレイジー・レプリケーションは、オペレーションの
一貫性として、カジュアル・オペレーション(casual o
peration)、フォースト・オペレーション(forced ope
ration)およびイミディエイト・オペレーション(imme
diate operation)を提供するデータ複製方式である。更
新要求は非同期に複製ノードに伝搬される。
[0005] From the above viewpoints, the following techniques are conventionally available. (1) Lazy replicatio
n) (Reference: R. Ladin, “Lazy replication: Exploiting th
e semantics of distributed services ”, Proceedings
of the Workshop on Management of Replicated Data, p
p.31-34, 1990, Literature: R. Ladin, “Providing high availa
bility using lazy replication ”, ACM Transaction Co
mputer Systems, Vol. 10, pp. 360-391, November 1992) This lazy replication provides casual operation (casual o
peration, forced operation
ration) and immediate operations (imme
This is a data duplication method that provides a date operation. The update request is propagated to the replication node asynchronously.

【0006】(2)ピービー・キャスト(pbcast)(文
献:K.Birman,“BUILDING SECURE ANDRELIABLE NETWORK
APPLICATI0NS”,MANNING Publisher,1996) このピービー・キャストは、メッセージの伝搬方式であ
り、更新要求の伝搬に用いた場合の伝搬方法は以下のよ
うになる。まず、更新要求を受け取ったノードは、「fu
nout」と呼ばれる定数で決まる個数だけ、複製ノードを
ランダムに選択し、更新要求を送信する。すでに同じ更
新要求を受信したノードは、他の複製ノードには、更新
要求を伝搬しない。
(2) Pbcast (Reference: K. Birman, “BUILDING SECURE ANDRELIABLE NETWORK”
APPLICATI0NS ”, MANNING Publisher, 1996) This peacast is a message propagation method, and the propagation method when it is used for propagation of an update request is as follows. fu
The number of replication nodes is randomly selected by the number determined by a constant called "nout", and an update request is transmitted. A node that has already received the same update request does not propagate the update request to other duplicate nodes.

【0007】[0007]

【発明が解決しようとする課題】しかしながら、このよ
うな従来技術を用いた場合、以下のような問題が発生す
る。まず、複製ノードから提供されるデータの新しさ
は、システム的に決っているため、クライアントがある
新しさのデータを取得したい場合に、要求を満足するデ
ータを取得することができない。また、クライアントあ
るいはクライアントを操作する人が、得られたデータを
もとに動作を決定するときに、判断支援システム等で
は、取得したデータの新しさも判断の要素にしたいこと
がある。しかし、従来においては、複製ノードから提供
されるデータの新しさを提供する方法は無く、取得した
データの新しさをクライアントが知ることはできない。
However, when such a conventional technique is used, the following problems occur. First, since the freshness of the data provided from the replica node is determined systematically, when a client wants to acquire data of a certain newness, it cannot acquire data satisfying the request. When the client or a person operating the client determines an operation based on the obtained data, the judgment support system or the like sometimes wants to make the freshness of the acquired data a factor of the judgment. However, conventionally, there is no method for providing the newness of the data provided from the replica node, and the client cannot know the newness of the acquired data.

【0008】本発明は、このような課題を解決するため
のものであり、取得したデータの新しさがある程度以上
であるということが求められる場合に適用可能なデータ
複製システムおよびデータ複製プログラムを記録した記
録媒体を提供することを目的とする。
The present invention is intended to solve such a problem, and records a data duplication system and a data duplication program which can be applied when it is required that acquired data has a certain degree of newness. It is an object of the present invention to provide a recording medium that has been used.

【0009】[0009]

【課題を解決するための手段】このような目的を達成す
るために、本発明に係るデータ複製システムは、通信ネ
ットワークに複数の計算機が接続され、これらの計算機
にはデータを管理するためのプロセスが一以上動作して
おり、上記各プロセスの管理するデータの内容は全て同
一であり、上記データを管理するプロセスは、データの
更新要求を受付けると、自プロセスのデータを変更する
とともに他のプロセスにこの更新要求を伝搬し、データ
の更新が次々に行われるデータ複製システムに関するも
のである。
In order to achieve the above object, a data replication system according to the present invention has a plurality of computers connected to a communication network, and these computers have a process for managing data. Are operating one or more times, and the contents of the data managed by each of the above processes are all the same, and the process of managing the data changes the data of its own process and receives other The present invention relates to a data replication system in which this update request is propagated and data is updated one after another.

【0010】上記データを管理する複数の複製ノード
と、上記データの更新および読み出しを要求するクライ
アント・ノードと、このクライアント・ノードからの要
求を上記複製ノードに対して仲介するフロントエンド・
ノードとを有する。上記複製ノードは、更新経路を示す
論理的な木構造によって接続された一以上のグループを
構成し、更新要求が伝搬されると上記木構造上で隣接す
る複製ノードのうち、上記更新要求を伝搬してきたノー
ド以外の全てのノードに対して更新要求を伝搬する。
[0010] A plurality of replication nodes for managing the data, a client node for requesting updating and reading of the data, and a front-end mediating a request from the client node to the replication node.
And a node. The replica nodes constitute one or more groups connected by a logical tree structure indicating an update path, and when the update request is propagated, propagates the update request among the adjacent duplicate nodes on the tree structure. The update request is propagated to all nodes other than the node that has performed the update.

【0011】上記フロントエンド・ノードは、上記クラ
イアント・ノードからの更新要求に対して、上記各グル
ープ中の1つの複製ノード(以下、更新開始ノードとい
う)に更新要求を行い、上記クライアント・ノードから
の読み出し要求に対して、複数の上記複製ノード(以
下、読み出しノードという)に読み出し要求を仲介し、
読み出された複数のデータのうち最新のデータを上記ク
ライアント・ノードに返答し、どの程度の最近のデータ
を獲得できるかを計算するとともにその計算結果を管理
し、上記クライアント・ノードからの要求に対して、こ
の要求を満たす読み出しノードの組合わせを選択して読
み出し要求を行い、取得したデータとそのデータがどの
程度最近のデータであるかを示す尺度とを上記クライア
ント・ノードに返答する。
[0011] In response to the update request from the client node, the front-end node issues an update request to one copy node (hereinafter, referred to as an update start node) in each of the groups. In response to the read request, the read request is mediated to a plurality of the above-mentioned duplicate nodes (hereinafter, referred to as read nodes)
The latest data among the plurality of read data is returned to the client node to calculate how much recent data can be obtained, manage the calculation result, and respond to the request from the client node. In response, a read request is made by selecting a combination of read nodes satisfying this request, and the obtained data and a measure indicating how recent the data are are returned to the client node.

【0012】また、上記取得したデータがどの程度最近
のデータであるかを示す尺度は、最新度として定義さ
れ、所定の確率pで、現在から時間T前までの更新を反
映しているときに、確率pの最新度はTであると定義さ
れていてもよい。
The scale indicating how recent the acquired data is the latest data is defined as the latest degree. When a predetermined probability p reflects the update from the present to the time T before, , Probability p may be defined as T.

【0013】また、上記各複製ノードは、上記ノードに
接続している論理的リンクを伝搬するときの更新遅れの
統計分布を管理し、上記読み出しノードを含む最小の部
分木(以下、読み出し部分木という)を形成し、この読
み出し部分木に含まれるノードのうち、上記木構造上で
更新開始ノードに最も近いノード(以下、最短ノードと
いう)を選択し、上記更新開始ノードから上記最短ノー
ドまでの経路と読み出し部分木とで構成される部分木に
おいて上記更新開始ノードを根としたときに、上記読み
出し部分木の葉となるノードは、上記ノードに接続され
ているリンクの更新遅れの統計分布を親ノードに送信
し、上記葉となるノード以外の複製ノードは、子ノード
の全てから統計分布を受け取った後、この統計分布を用
いて上記複製ノードから上記複製ノードの子孫となる読
み出しノードまでの更新遅れの最小の統計分布を計算し
てから、この統計分布を上記親ノードに送信し、上記最
短ノードは、計算した統計分布または最新度を上記フロ
ントエンド・ノードに送信し、上記最新度または全ての
更新開始ノードについての更新遅れの統計分布を受信し
たフロントエンド・ノードは、上記最新度または統計分
布をもとにして、同一木構造内の最新度を計算するよう
にしてもよい。
Each of the duplicated nodes manages a statistical distribution of update delays when propagating through a logical link connected to the node, and manages a minimum subtree including the readout node (hereinafter referred to as a readout subtree). Of the read subtree, select a node closest to the update start node on the tree structure (hereinafter, referred to as a shortest node), and select a node from the update start node to the shortest node. In a subtree composed of a path and a read subtree, when the update start node is the root, a node that is a leaf of the read subtree uses the statistical distribution of update delay of a link connected to the node as a parent node. The replica node other than the leaf node receives the statistical distribution from all of the child nodes, and then uses this statistical distribution to After calculating the minimum statistical distribution of the update delay from the read node that is a descendant of the replica node to the replica node, the statistical distribution is transmitted to the parent node, and the shortest node transmits the calculated statistical distribution or the latest degree to the parent node. The front-end node that has transmitted to the front-end node and received the latest degree or the update delay statistical distribution for all update start nodes, based on the latest degree or statistical distribution, The latest degree may be calculated.

【0014】また、上記最短ノードを読み出し部分木と
したときに、先祖に読み出しノードが存在する読み出し
ノードを削除していき、先祖に読み出しノードの存在す
る読み出ノードが無くなった時点で、でき上がった読み
出し部分木を用いてもよい。
Further, when the shortest node is a read subtree, the read nodes in which the read nodes exist in the ancestors are deleted, and the read nodes in which the read nodes exist in the ancestors are deleted. A read subtree may be used.

【0015】一方、本発明に係るデータ複製プログラム
を記録した記録媒体は、通信ネットワークに複数の計算
機が接続され、これらの計算機にはデータを管理するた
めのプロセスが一以上動作しており、上記各プロセスの
管理するデータの内容は全て同一であり、上記データを
管理するプロセスは、データの更新要求を受付けると、
自プロセスのデータを変更するとともに他のプロセスに
この更新要求を伝搬し、データの更新が次々に行われる
データ複製システムに関するものである。
On the other hand, in a recording medium on which a data duplication program according to the present invention is recorded, a plurality of computers are connected to a communication network, and one or more processes for managing data operate on these computers. The contents of the data managed by each process are all the same, and the process managing the data, upon receiving the data update request,
The present invention relates to a data replication system in which data of its own process is changed and this update request is propagated to other processes to update data one after another.

【0016】上記データを管理する複数の複製ノード
と、上記データの更新および読み出しを要求するクライ
アント・ノードと、このクライアント・ノードからの要
求を上記複製ノードに対して仲介するフロントエンド・
ノードとを有する。上記複製ノードは、更新経路を示す
論理的な木構造によって接続された一以上のグループを
構成し、更新要求が伝搬されると上記木構造上で隣接す
る複製ノードのうち、上記更新要求を伝搬してきたノー
ド以外の全てのノードに対して更新要求を伝搬する。
A plurality of replication nodes for managing the data, a client node for requesting updating and reading of the data, and a front-end for mediating a request from the client node to the replication node
And a node. The replica nodes constitute one or more groups connected by a logical tree structure indicating an update path, and when the update request is propagated, propagates the update request among the adjacent duplicate nodes on the tree structure. The update request is propagated to all nodes other than the node that has performed the update.

【0017】上記フロントエンド・ノードは、上記クラ
イアント・ノードからの更新要求に対して、上記各グル
ープ中の1つの複製ノード(以下、更新開始ノードとい
う)に更新要求を行い、上記クライアント・ノードから
の読み出し要求に対して、複数の上記複製ノード(以
下、読み出しノードという)に読み出し要求を仲介し、
読み出された複数のデータのうち最新のデータを上記ク
ライアント・ノードに返答し、どの程度の最近のデータ
を獲得できるかを計算するとともにその計算結果を管理
し、上記クライアント・ノードからの要求に対して、こ
の要求を満たす読み出しノードの組合わせを選択して読
み出し要求を行い、取得したデータとそのデータがどの
程度最近のデータであるかを示す尺度とを上記クライア
ント・ノードに返答する。
In response to the update request from the client node, the front-end node issues an update request to one of the duplicate nodes in each of the groups (hereinafter, referred to as an update start node). In response to the read request, the read request is mediated to a plurality of the above-mentioned duplicate nodes (hereinafter, referred to as read nodes),
The latest data among the plurality of read data is returned to the client node to calculate how much recent data can be obtained, manage the calculation result, and respond to the request from the client node. In response, a read request is made by selecting a combination of read nodes satisfying this request, and the obtained data and a measure indicating how recent the data are are returned to the client node.

【0018】また、上記取得したデータがどの程度最近
のデータであるかを示す尺度は、最新度として定義さ
れ、所定の確率pで、現在から時間T前までの更新を反
映しているときに、確率pの最新度はTであると定義さ
れていてもよい。
The scale indicating how recent the acquired data is is defined as the latest degree. When the update from the present time to the time T before is reflected with a predetermined probability p. , Probability p may be defined as T.

【0019】また、上記各複製ノードは、上記ノードに
接続している論理的リンクを伝搬するときの更新遅れの
統計分布を管理し、上記読み出しノードを含む最小の部
分木(以下、読み出し部分木という)を形成し、この読
み出し部分木に含まれるノードのうち、上記木構造上で
更新開始ノードに最も近いノード(以下、最短ノードと
いう)を選択し、上記更新開始ノードから上記最短ノー
ドまでの経路と読み出し部分木とで構成される部分木に
おいて上記更新開始ノードを根としたときに、上記読み
出し部分木の葉となるノードは、上記ノードに接続され
ているリンクの更新遅れの統計分布を親ノードに送信
し、上記葉となるノード以外の複製ノードは、子ノード
の全てから統計分布を受け取った後、この統計分布を用
いて上記複製ノードから上記複製ノードの子孫となる読
み出しノードまでの更新遅れの最小の統計分布を計算し
てから、この統計分布を上記親ノードに送信し、上記最
短ノードは、計算した統計分布または最新度を上記フロ
ントエンド・ノードに送信し、上記最新度または全ての
更新開始ノードについての更新遅れの統計分布を受信し
たフロントエンド・ノードは、上記最新度または統計分
布をもとにして、同一木構造内の最新度を計算するよう
にしてもよい。
Each of the replica nodes manages a statistical distribution of update delay when propagating through a logical link connected to the node, and manages a minimum subtree including the read node (hereinafter, a read subtree). Of the read subtree, select a node closest to the update start node on the tree structure (hereinafter, referred to as a shortest node), and select a node from the update start node to the shortest node. In a subtree composed of a path and a read subtree, when the update start node is the root, a node that is a leaf of the read subtree uses the statistical distribution of update delay of a link connected to the node as a parent node. The replica node other than the leaf node receives the statistical distribution from all of the child nodes, and then uses this statistical distribution to After calculating the minimum statistical distribution of the update delay from the read node that is a descendant of the replica node to the replica node, the statistical distribution is transmitted to the parent node, and the shortest node transmits the calculated statistical distribution or the latest degree to the parent node. The front-end node that has transmitted to the front-end node and received the latest degree or the update delay statistical distribution for all update start nodes, based on the latest degree or statistical distribution, The latest degree may be calculated.

【0020】また、上記最短ノードを読み出し部分木と
したときに、先祖に読み出しノードが存在する読み出し
ノードを削除していき、先祖に読み出しノードの存在す
る読み出ノードが無くなった時点で、でき上がった読み
出し部分木を用いてもよい。
When the shortest node is a read subtree, the read nodes whose read nodes exist in the ancestors are deleted, and the read nodes are completed when the read nodes whose read nodes exist in the ancestors disappear. A read subtree may be used.

【0021】このように構成することにより、クライア
ント・ノードは、フロントエンド・ノードから必要な新
しさを満たしたデータを取得することができる。また、
取得したデータについては、フロントエンド・ノードが
計算し、クライアントに提供する最新度から新しさを確
認することができる。
With this configuration, the client node can acquire data satisfying the required freshness from the front-end node. Also,
The acquired data can be calculated by the front-end node, and the freshness can be confirmed from the latest degree provided to the client.

【0022】[0022]

【発明の実施の形態】次に、本発明の一つの実施の形態
について図を用いて説明する。
Next, one embodiment of the present invention will be described with reference to the drawings.

【0023】図1は、本発明に係るネットワークおよび
ネットワークに接続された計算機を示す。同図に示すよ
うに、計算機1は、インターフェースを介してネットワ
ーク2に接続され、データの複製等の種々の制御を行う
中央処理装置(CPU)、データおよび本発明に係る通
信制御プログラム等を記憶保持するランダム・アクセス
・メモリ(RAM)およびハードディスク・ドライブ
(HDD)を有する。データ等は複数の計算機1に分散
して記憶保持され、各計算機1には後述の種々のプロセ
スが働いている。
FIG. 1 shows a network according to the present invention and a computer connected to the network. As shown in FIG. 1, a computer 1 is connected to a network 2 via an interface, and stores a central processing unit (CPU) for performing various controls such as data duplication, data, a communication control program according to the present invention, and the like. It has a random access memory (RAM) and a hard disk drive (HDD) to hold. The data and the like are distributed and stored in a plurality of computers 1, and various processes described below operate on each computer 1.

【0024】図2は、ネットワーク上に分散する複数の
プロセスを模式的に示したものである。同図に示すよう
に、各プロセスはその働きに応じて3種類に分類され
る。データを管理するプロセスである複製ノードと、デ
ータの更新およびデータの読み出し要求を行うプロセス
であるクライアント・ノードと、クライアント・ノード
からの要求を仲介して複数の複製ノードに対して要求
(更新要求、読み出し要求等)を出すプロセスであるフ
ロントエンド・ノードとである。
FIG. 2 schematically shows a plurality of processes distributed on a network. As shown in the figure, each process is classified into three types according to its operation. A replication node, which is a process for managing data, a client node, which is a process for requesting data update and data read, and a request (update request) to a plurality of replication nodes via a request from the client node , A read request, etc.).

【0025】複製ノードは、複数が集まって一つのグル
ープを構成し、ネットワーク上には一以上のグループが
存在する。図2は3つのグループがある場合を示す。各
グループに含まれる複製ノードは、更新経路を示す論理
的な木構造によって接続されている。更新要求を受けた
複製ノードは、木構造上で隣接するノードのうち、更新
要求を出したノード以外の全てのノードに対して更新要
求を伝搬する。
A plurality of replication nodes constitute one group by gathering a plurality of nodes, and one or more groups exist on the network. FIG. 2 shows a case where there are three groups. The duplicate nodes included in each group are connected by a logical tree structure indicating an update path. The replicated node that has received the update request propagates the update request to all nodes other than the node that issued the update request among the adjacent nodes on the tree structure.

【0026】フロントエンド・ノードは、クライアント
・ノードからの更新要求に対して、各グループ中の1つ
の複製ノード(以下、更新開始ノード3という)に更新
要求を出し、読み出し要求に対して複数の複製ノードに
読み出し要求を出し、複数の読み出を行った複製ノード
(以下、読み出しノード4という)から読み出しを行っ
たデータに付与されているタイムスタンプ(更新終了時
に添付される時刻に関する情報)を基にして、最新のデ
ータをクライアント・ノードに返答する。さらに、どの
程度最近のデータを獲得できるかを計算し、その結果を
情報として管理し、クライアント・ノードからの要求に
対して、要求を満たす読み出しノード4の組合わせを選
択して読み出要求を行い、取得データとこの取得データ
がどの程度最近ものであるかを示す尺度(以下、最新度
という)をクライアント・ノードに返答する。
In response to an update request from a client node, the front-end node issues an update request to one copy node (hereinafter, referred to as an update start node 3) in each group, and responds to a plurality of read requests with a plurality of update nodes. A read request is issued to the replica node, and the time stamp (information attached at the end of the update) attached to the data read from the replicated node (hereinafter referred to as read node 4) that has performed a plurality of reads is added. Based on this, reply the latest data to the client node. Further, it calculates how recent data can be acquired, manages the result as information, and responds to a request from a client node by selecting a combination of read nodes 4 satisfying the request and issuing a read request. Then, the client node returns the acquired data and a measure indicating how recent the acquired data is (hereinafter, referred to as the latest degree) to the client node.

【0027】なお、フロントエンド・ノードは、複数の
読み出しノード4に対して読み出し操作を行ったときの
最新度の情報を管理し、クライアント・ノードからの最
新度の要求を満たしたノード集合に対して読み出し操作
を行う。また、フロントエンド・ノードは、複製ノード
と連携し、各複製ノードが管理する部分的な更新遅れの
統計分布をもとにして、更新開始ノード3から伝搬して
いく経路によって発生する更新遅れの統計分布を計算す
る。さらに、フロントエンド・ノードは、全ての更新開
始ノードの統計分布または最新度を収集し、この得られ
た最新度の最大値を、グループ(複製ノード)における
最新度とする。複数の更新を開始するノードの更新遅れ
の統計分布をもとにして、全ての更新開始ノードの更新
要求数に対する各ノードの更新要求開始数の割合を求
め、更新遅れ分布の加重平均をとることにより最新度を
計算する。
The front-end node manages the latest information when a read operation is performed on a plurality of read nodes 4, and manages a set of nodes satisfying the latest request from the client node. To perform a read operation. Further, the front-end node cooperates with the duplication nodes, and based on the statistical distribution of the partial update delays managed by each duplication node, updates the update delay generated by the route propagating from the update start node 3. Calculate the statistical distribution. Further, the front-end node collects the statistical distribution or the latest of all the update start nodes, and sets the maximum value of the obtained latest as the latest in the group (replica node). Based on the statistical distribution of update delays of nodes that start multiple updates, calculate the ratio of the number of update requests started by each node to the number of update requests of all update start nodes, and take a weighted average of the update delay distribution To calculate the latest degree.

【0028】次に、本実施の形態の詳細について説明す
る。
Next, the details of this embodiment will be described.

【0029】[最新度の定義]最新度とは、取得したデ
ータがどの程度最近のデータであるかを示す尺度であ
る。すなわち、確率pで、現在から時間T前までの更新
を反映しているとき、確率pの最新度をTと定義する。
[Definition of Latest Level] The latest level is a scale indicating how recent acquired data is. That is, when the update from the present to the time T before is reflected by the probability p, the latest degree of the probability p is defined as T.

【0030】[更新および読み出し操作における各ノー
ドの動作]各ノードの動作は以下のとおりである。 (1)クライアント・ノード 「読み出し要求 」 … フロントエンド・ノードに対
して、読み出しを行いたいデータ・オプジェクトと、必
要とする最新度と、を指定する。 「更新要求 」 … フロントエンド・ノードに対
して、更新したいデータ・オブジェクトと、更新後のデ
ータ・オブジェクトの値と、を指定する。
[Operation of Each Node in Update and Read Operations] The operation of each node is as follows. (1) Client node "read request" ... Specifies the data object to be read and the required latest degree to the front-end node. "Update request" ... A data object to be updated and a value of the updated data object are specified for the front-end node.

【0031】(2)複製ノード 「データ更新操作」 … フロントエンド・ノードまた
は他の複製ノードからの更新要求を受信し、自ノードの
データを更新してから、隣接する複製ノードのうち、更
新要求を送信してきた複製ノード以外のものに対して更
新要求を伝搬する。 「読み出し操作 」 … フロントエンド・ノードから
の読み出し操作に対して・自ノードの管理するデータ
と、そのデータに付与されているタイムスタンプと、を
フロントエンド・ノードに返答する。 「最新度計算 」 … フロントエンド・ノードと協
調して最新度を計算する。詳細については後述する。
(2) Duplicate node "Data update operation": Receives an update request from the front-end node or another duplicate node, updates the data of its own node, and then updates the update request among the adjacent duplicate nodes. Is transmitted to a node other than the replica node that has transmitted the update request. “Read operation”… Responds to a read operation from the front end node to the front end node with data managed by the own node and a time stamp assigned to the data. "Latestness calculation" ... The latestness is calculated in cooperation with the front-end node. Details will be described later.

【0032】(3)フロントエンド・ノード 「データ更新操作」 … クライアント・ノードからの
更新要求を、グループ分けした複製ノードの各グループ
に含まれる1つの複製ノードに対して送信する。 「読み出し操作 」 … 複数の読み出しノードの集合
とその集合から読み出したときの最新度を情報として管
理する。クライアント・ノードからの読み出し要求に指
定された最新度を満たす読み出しノード集合を選択し、
この集合に含まれる各読み出しノードに読み出し要求を
送信し、受信したデータに付与されたタイムスタンプが
最新であるデータと、そのデータのタイムスタンプと、
最新度と、をクライアント・ノードに返答する。 「最新度計算 」 … 複製ノードと協調して最新度
を計算する。詳細については、後述する。
(3) Front-end node "Data update operation" ... An update request from a client node is transmitted to one replication node included in each of the grouped replication nodes. "Read operation" ... manages, as information, a set of a plurality of read nodes and the latest degree when reading from the set. A read node set that satisfies the latest degree specified in the read request from the client node is selected,
A read request is transmitted to each of the read nodes included in this set, and the data with the latest time stamp given to the received data, the time stamp of the data,
Responds to the client node with the latestness. "Latestness calculation" ... The latestness is calculated in cooperation with the replica node. Details will be described later.

【0033】[最新度計算の概要]次に、最新度の計算
について説明する。最新度の計算の概要は以下のとおり
である。 1.各リンクに対して更新遅れ統計分布を割り当てる。 2.読み出し部分木の構築と最短ノードの設定とを行
う。 3.読み出し部分木から、最新度の向上に無関係なノー
ドを削除する。 4.更新遅れの統計分布を計算する。 5.更新遅れの統計分布計算の効率化を行う。 これらの詳細について説明する。
[Summary of Latest Level Calculation] Next, the calculation of the latest level will be described. The outline of the calculation of the latest level is as follows. 1. An update delay statistical distribution is assigned to each link. 2. The read subtree is constructed and the shortest node is set. 3. Nodes irrelevant to the improvement of the latest degree are deleted from the read subtree. 4. Calculate the statistical distribution of update delays. 5. Increase the efficiency of calculating the statistical distribution of update delays. These details will be described.

【0034】[1.各リンクヘの更新遅れ統計分布の割
り当て]更新要求が経路を伝搬していくとき、各複製ノ
ードに更新が伝搬していくまでの遅れの要因は、以下の
4つに分類される。 「din 」 … ノードに更新要求が到着した後、待ち
行列に入ってから処理されるまでの遅延時間。 「dproc」 … ノードでの更新要求の処理時間 「dout 」 … 更新要求を次のノードヘの更新要求メ
ッセージとして送出するために、待ち行列に入ってから
送出されるまでの遅延時間 「dtrans」 … 通信リンク上を伝搬して次のノード
に到着するまでの遅延時間
[1. Assignment of Update Delay Statistical Distribution to Each Link] When an update request propagates along a route, the causes of delay until the update propagates to each replica node are classified into the following four factors. “D in ”: delay time from when an update request arrives at a node to when it is queued and processed. “D proc ”: processing time of the update request in the node “d out ”: the delay time from the time of entering the queue to the time of sending the update request as an update request message to the next node “d trans ” …… Delay time to reach the next node after propagating on the communication link

【0035】今、更新開始ノードを根とし、更新開始ノ
ードから読み出しノードヘの経路で構成される木構造を
考える。この木構造を更新要求が伝搬していくとき、あ
る複製ノードに到着した更新要求は、その子となるノー
ドに伝搬される。すると、更新要求を受け取った複数の
子ノードの更新遅れの要因には、子ノード間で独立であ
るものと独立でないものが存在する。そこで、本実施の
形態においては、複数の読み出しノードにおける統計分
布を計算する際に、各リンクに遅延の統計分布を割り当
てる。ある複製ノードに入射するリンクには、遅れ要因
のうち、兄弟となるノードに独立でない要因を割り当て
る。例えば、各複製ノードが子ノードに同時に更新要求
を送信する場合と各子ノードヘの送信タイミングが同時
でない場合とには、それぞれ各リンクの遅延時間δとし
て、以下のものを用いる。
Now, consider a tree structure composed of a route from the update start node to the readout node with the update start node as a root. When an update request propagates through this tree structure, an update request that has arrived at a certain replicated node is propagated to its child nodes. Then, factors of the update delay of the plurality of child nodes that have received the update request include those that are independent and those that are not independent among the child nodes. Thus, in the present embodiment, when calculating the statistical distribution of a plurality of read nodes, the statistical distribution of delay is assigned to each link. To a link incident on a certain replicated node, among the delay factors, a factor that is not independent of a sibling node is assigned. For example, when each replica node transmits an update request to a child node at the same time and when transmission timing to each child node is not simultaneous, the following is used as the delay time δ of each link.

【0036】 δ=dtrans+din (b)+dproc (b)+dout (b) (1)Δ = d trans + d in (b) + d proc (b) + d out (b) (1)

【0037】 δ=dout (a)+dtrans+din (b)+dproc (b) (2)Δ = d out (a) + d trans + d in (b) + d proc (b) (2)

【0038】なお、上述においては、ノードaを親とし
てその子をノードbとし、d* (a)、d* (b)は、それぞれ
ノードa、ノードbでの遅延時間を示す。これらの遅延
δは、伝搬方向に依存したものとなるため、伝搬方向に
応じて別々に管理する必要がある。
In the above description, node a is a parent and its child is a node b, and d * (a) and d * (b) indicate delay times at the nodes a and b, respectively. Since these delays δ depend on the propagation direction, they need to be separately managed according to the propagation direction.

【0039】[2.読み出し部分木の構築と最短ノード
の設定]フロントエンド・ノードは、読み出しノードを
含む最小の木(以下、読み出し部分木という)を構築す
る。最短ノードの設定は、読み出し部分木に含まれる各
ノードで、以下の何れかの条件を満たすノードを最短ノ
ードとして行う。 条件1 自ノードが更新開始ノードである。 条件2 自ノードから更新開始ノードに至る経路上にお
いて、隣接ノードが読み出し部分木ではない。
[2. Construction of Read Subtree and Setting of Shortest Node] The front-end node constructs a minimum tree including the read node (hereinafter, referred to as a read subtree). The setting of the shortest node is performed by setting a node that satisfies one of the following conditions among the nodes included in the read subtree as the shortest node. Condition 1 The own node is the update start node. Condition 2 On the path from the own node to the update start node, the adjacent node is not a read subtree.

【0040】[3.最新度の向上に無関係なノードの削
除]今、木の上を伝搬していく更新メッセージは、各ノ
ードでデータの更新イベントを引き起こす。この更新イ
ベントの発生タイミングの間には、更新木の接続関係に
基づく半順序関係が存在することになる。2つの更新イ
ベントei およびe j の発生タイミングの関係として、
i の後にej が発生する関係を
[3. Delete nodes that are not relevant to
Exclusion] Now, the update message propagating on the tree
Triggers a data update event in the code. This update
During the occurrence of the vent, the connection
There will be a partial order relation based on them. Two update a
Vent eiAnd e jThe relationship of the occurrence timing
eiAfter ejThe relationship that occurs

【0041】[0041]

【数1】 (Equation 1)

【0042】と定義する。親子関係にあるノード同士に
おいて、更新イベントの親をep 、子をec とすると、
Is defined as Assuming that the parent of the update event is e p and the child is e c between the nodes having a parent-child relationship,

【0043】[0043]

【数2】 (Equation 2)

【0044】である。明らかにこの関係は、推移律の関
係(transitive)であるといえる。よって、あるノード
iとノードnjとがあり、ノードniがノードnjの祖先
であるとすると、
Is as follows. Obviously, this relation can be said to be a transitive relation. Therefore, there is a certain node n i and node n j, the node n i is assumed to be an ancestor of node n j,

【0045】[0045]

【数3】 (Equation 3)

【0046】となる。一般に、あるノードniとノード
jに対する更新遅れが、それぞれdiおよびdjである
事象を、それぞれEiおよびEjとすると、
Is as follows. In general, let E i and E j denote the events whose update delays for a certain node n i and a node n j are d i and d j , respectively.

【0047】[0047]

【数4】 (Equation 4)

【0048】となる。今、ノードniがノードnjの祖先
であり、di<djのとき、P(Ei|Ej)=1であるの
で、
Is as follows. Now, since node n i is an ancestor of node n j and when d i <d j , P (E i | E j ) = 1, so

【0049】[0049]

【数5】 (Equation 5)

【0050】となり、ノードnj は最新度の向上に寄与
しない。また、di≧djのとき、P(Ei|Ej)=0と
なり、
Thus, the node n j does not contribute to the improvement of the latest level. When d i ≧ d j , P (E i | E j ) = 0, and

【0051】[0051]

【数6】 (Equation 6)

【0052】となる。よって、複数の読み出しノードに
おける更新遅れ統計分布の計算において読み出しノード
の子孫が非同期更新木に含まれている場合、この子孫を
全て削除して計算することができる。
Is as follows. Therefore, in the calculation of the update delay statistical distribution at a plurality of read nodes, when the descendants of the read node are included in the asynchronous update tree, all the descendants can be deleted and calculated.

【0053】[4.更新遅れ統計分布の計算]上述の最
新度に無関係なノードの削除を行うと、図3に示す更新
開始ノードを根として更新開始ノードから最短ノードま
での経路と読み出し部分木で構成される更新木とにおい
て、読み出しノードは全て葉となる。ここで、ノードv
r、から発生した更新が、読み出しノードに伝搬すると
き、その伝搬時間の最小値の統計分布として確率密度関
数を求める。ノードvn から送出され、ノードvn の子
孫の読み出しノードに伝搬するまでの更新遅れのうち、
最小の更新遅れの確率密度関数を△nと表し、△i1i2
ijを求める。vi1i2i jとvi1i2j+1とのリンクに割
り当てられた遅れの確率密度関数をδi1i2ij+1とする
と、このリンクとノードvi1i2j+1とその子孫とから
なる部分木における更新遅れの確率密度関数は、
[4. Calculation of Update Delay Statistical Distribution] When the above-mentioned nodes irrelevant to the latest degree are deleted, an update tree composed of a path from the update start node to the shortest node and a read subtree starting from the update start node shown in FIG. In the above, all the read nodes are leaves. Where node v
When the update generated from r , propagates to the read node, the probability density function is obtained as the statistical distribution of the minimum value of the propagation time. Node v n sent from among the update delay until propagated to the read node descendants of node v n,
The minimum update delay probability density function is denoted by △ n, and △ i1i2
Find ij . v i1i2 ... i j and v i1i2 ... If the probability density function of the link assigned delay in the j + 1 and δ i1i2 ... ij + 1, consisting of the links and nodes v i1i2 ... j + 1 and its progeny The probability density function of the update delay in the subtree is

【0054】[0054]

【数7】 (Equation 7)

【0055】となる。ノードvi1i2ijは、その子に向
かう各リンクについて上記の確率密度関数を持つ。この
とき、更新木における更新遅れの確率密度関数△i1i2
ij(t)は、
Is as follows. The nodes v i1i2 ... Ij have the above-mentioned probability density function for each link toward their children. At this time, the probability density function of the update delay in the update tree △ i1i2
ij (t) is

【0056】[0056]

【数8】 (Equation 8)

【0057】で表される。ただし、△(k)=Δi1i2ij
(k)である。式(3)および(4)を繰り返すことによ
って、同一木構造内の全体における確率密度関数を求め
ることができる。
Is represented by Where △ (k) = Δ i1i2ij
(k) . By repeating the equations (3) and (4), the probability density function of the whole in the same tree structure can be obtained.

【0058】[5.複数のノードからの更新における更
新遅れの分布計算の効率化]更新開始ノードおよび読み
出しノードに着目すると、更新経路は、全ての読み出し
ノードに共通の経路、すなわち更新開始ノードから読み
出しノードのLCA(Least Common Ancestor )までの
経路、および、LCAから各ノードへの経路の2つの部
分に分類される。今、複数のノードから更新の開始が行
われる場合、このLCAが共通であるノードについて
は、LCA以下の遅れ確率密度関数は同一になる。そこ
で、本実施の形態では、更新経路を上述の2つの経路に
分割して確率密度関数を計算することにより、複数のノ
ードから更新が開始される場合について、LCAを共通
にするノードの後者の経路についての計算を共通化する
ことができる。
[5. Efficiency of Update Delay Distribution Calculation in Updates from Plural Nodes] Focusing on the update start node and the read node, the update path is a path common to all read nodes, that is, the LCA (Least) of the read node from the update start node. Common Ancestor) and a path from the LCA to each node. Now, when the update is started from a plurality of nodes, the nodes having the same LCA have the same delay probability density function lower than the LCA. Therefore, in the present embodiment, by dividing the update path into the above-described two paths and calculating the probability density function, in the case where the update is started from a plurality of nodes, the latter one of the nodes having the same LCA is used. The calculation for the route can be shared.

【0059】ある更新開始ノードuに対する読み出しノ
ードのLCAは、読み出しノードを含む最小木に含まれ
るノードのうち、更新開始ノードuとの距離が最も近い
ものである。このように、最小木の中の更新遅れの確率
密度関数の計算を共通化することにより、複数のノード
から読み出したときの遅れの確率密度関数を効率化する
ことができる。
The LCA of the read node for a certain update start node u is the one closest to the update start node u among the nodes included in the minimum tree including the read node. In this way, by sharing the calculation of the update delay probability density function in the minimum tree, the delay probability density function when reading from a plurality of nodes can be made more efficient.

【0060】[アルゴリズムの詳細]次に、以上の手順
をプログラム化するためのアルゴリズムについて説明す
る。本アルゴリズムは以下のステップを有する。 ステップ1 読み出し部分木を構築する。 ステップ2 最短ノードを設定する。 ステップ3 読み出し部分木の葉に相当するノードは、
式(3)を用いて確率密度関数を求め、得られた結果を
隣接ノードに送信する。
[Details of Algorithm] Next, an algorithm for programming the above procedure will be described. The algorithm has the following steps. Step 1 Construct a read subtree. Step 2 Set the shortest node. Step 3 The node corresponding to the leaf of the read subtree is
A probability density function is obtained using equation (3), and the obtained result is transmitted to an adjacent node.

【0061】ステップ4 各ノードは、読み出し部分木
上の各隣接ノードsに対して、それ以外の隣接ノードか
らの確率密度関数を受け取っていれば、式(4)を用い
て確率密度関数を求めてノードsに送信する。 ステップ5 最短ノード以外は、読み出し部分木上の、
全ての隣接ノードに確率密度関数を送信して終了する。
最短ノードは、全ての隣接ノードから確率密度関数を受
信した後、まず式(4)を用いて、最短ノードとその子
孫による遅れ確率密度関数を計算する。次に、その計算
した結果と更新開始ノードから最短ノードヘの更新遅れ
確率密度関数との間で式(3)を用いて更新開始ノード
からの更新遅れの確率密度関数を求める。最後に、得ら
れた結果をフロントエンド・ノードに送信して終了す
る。
Step 4 For each adjacent node s on the read subtree, if each node has received the probability density function from the other adjacent node, the node obtains the probability density function using equation (4). To the node s. Step 5 Except for the shortest node,
Transmit the probability density function to all neighboring nodes and end.
After receiving the probability density functions from all adjacent nodes, the shortest node first calculates the delay probability density function of the shortest node and its descendants using Expression (4). Next, a probability density function of the update delay from the update start node is obtained by using Expression (3) between the calculated result and the update delay probability density function from the update start node to the shortest node. Finally, the obtained result is transmitted to the front-end node, and the processing ends.

【0062】各ノードの動作は以下のようになる。 R : 読み出しノードの集合 A : 隣接する(直接リンクを介して接続している)
複製ノードの集合 S : 読み出し部分木上で隣接する複製ノードの集合
(初期値は空集合) N : メッセージを送信しなければならない複製ノー
ドの集合 nexthop(node) : 複製ノード間を接続
する論理的なリンクを用いてあるノード(node)に
送信するときに、メッセージを送信すべき隣接する複製
ノードを計算する関数である。 send(x1,x2,…,xk ij: x1,x2,…,
k を、ノードiがノードjへ送信することを意味す
る。 receive(x1,x2,…,xk ij: x1
2,…,xk を、ノードjがノードiから受信するこ
とを意味する。
The operation of each node is as follows. R: set of read nodes A: adjacent (connected via a direct link)
A set of duplicate nodes S: a set of duplicate nodes adjacent on the read subtree (the initial value is an empty set) N: a set of duplicate nodes that must send a message nexthop (node): a logical connection between duplicate nodes This function calculates an adjacent duplicate node to which a message is to be transmitted when transmitting to a node using a proper link. send (x 1 , x 2 ,..., x k ) ij : x 1 , x 2 ,.
x k means that node i sends to node j. receive (x 1 , x 2 ,..., x k ) ij : x 1 ,
It means that node j receives x 2 ,..., x k from node i.

【0063】図4は、以上のアルゴリズムを図示したも
のであり、フロントエンド・ノードおよび複製ノードの
動作を示す。 (1)フロントエンド・ノードの動作 集合Rに含まれる任意のノードrkに対して、命令「s
end」を実行する。なお、「id」はフロントエンド
・ノードのノード番号を示す。
FIG. 4 illustrates the above algorithm, and shows the operation of the front-end node and the replica node. (1) Operation of Front End Node For any node rk included in the set R, the instruction “s
end ”. “Id” indicates the node number of the front-end node.

【0064】(2)複製ノードの動作 4つの状態out_of_subtree、in_su
btree、subtree_done、calcul
ation_doneを有するとともに、4つの状態遷
移receive(“makeReadSubtre
e”,R,N)j, i ,become_lca、star
t_pdf_calculation、receive
(“PDF”,Pjj,i)を有する。
(2) Operation of Duplicate Node Four States Out_of_subtree, in_su
btree, subtree_done, calcul
ation_done and four state transitions receive (“makeReadSubtre
e ", R, N) j, i , become_lca, star
t_pdf_calculation, receive
(“PDF”, P j ) j, i ).

【0065】なお、makeReadSubtreeは
読み出し部分木構築の開始を指示するための文字列であ
り、PDFはPi が遅延の確率密度関数であることを表
す文字列である。Pi は遅延の確率密度関数である。以
上のアルゴリズムの状態遷移を図示すると、図5のよう
になる。
[0065] Incidentally, MakeReadSubtree is a string for instructing the start of reading partial tree construction, PDF is a character string representing that P i is the probability density function of the delay. Pi is the probability density function of the delay. The state transition of the above algorithm is illustrated in FIG.

【0066】[最新度の計算方法]次に、最新度の計算
方法について説明する。上述の方法によって、フロント
エンド・ノードは、複数の読み出しノードから得られる
データの更新遅れの順序統計量の確率密度関数表現を、
全ての更新開始ノードについて計算することができる。
以下においては、これらの統計分布を順序統計量として
表現し、新たに読み出しを行なったときのデータの確率
的最新度の計算方法について述べる。ここで、順序統計
量とは、任意標本を小さいものから順に並べ、順位をつ
けたものである。
[Method of calculating latest degree] Next, a method of calculating the latest degree will be described. According to the method described above, the front-end node calculates the probability density function expression of the order statistic of the update delay of the data obtained from the plurality of read nodes,
It can be calculated for all update start nodes.
In the following, these statistical distributions are expressed as ordinal statistics, and a method of calculating the stochastic freshness of data when a new read is performed will be described. Here, the order statistics are obtained by arranging arbitrary samples in ascending order and ranking them.

【0067】今、n個の旧標本の順序統計をX(1),X
(2),X(3),…,X(n)として、m個の新標本Y(1),Y
(2),Y(3),…,Y(m)をとり、両標本の全てに順位を
つけたた。新標本の取り方として可能な組合わせは、
n+mnであり、それぞれの生じる確率は、1/
n+mn)である。よって、上述の方法によって計算さ
れた確率密度関数を、順序統計量として表現し、複数の
読み出しノードから読み出しを行なったときの信頼区間
の計算は、次のようになる。異なった2つの読み出しノ
ードヘの更新遅れの確率密度関数のもとになった順序統
計量をX(1) 1,X(2) 1,X(3) 1,…,X(n1) 1
(1) 2,X( 2) 2,X(3) 2,…,X(n2) 2とする。X(i) 1
に対する新標本をY(1) 1,X(i) 2に対する新標本をY
(1) 2とする。
Now, the order statistics of the n old samples are represented by X (1) , X
(2) , X (3) ,..., X (n) , m new samples Y (1) , Y
(2) , Y (3) ,..., Y (m) were taken and all the samples were ranked. Possible combinations for taking new specimens are:
n + m C n and the probability of each occurrence is 1 /
Is a (n + m C n). Therefore, the probability density function calculated by the above method is expressed as an order statistic, and the calculation of the confidence interval when reading is performed from a plurality of read nodes is as follows. X (1) 1 , X (2) 1 , X (3) 1 ,..., X (n1) 1, and X (n1) 1 represent the order statistics based on the probability density function of the update delay to two different read nodes. (1) 2 , X ( 2) 2 , X (3) 2 ,..., X (n2) 2 . X (i) 1
The new sample for Y (1) 1 and the new sample for X (i) 2 are Y
(1) 2 .

【0068】[0068]

【数9】 (Equation 9)

【0069】である確率Pは、X(j) 2≦X(l) 1≦X
(j+1) 2とすると、
The probability P is X (j) 2 ≦ X (l) 1 ≦ X
(j + 1) 2

【0070】 lj/{(n1+1)(n2+1)} ≦ P ≦ l(j+1)/{(n 1 +1)(n2+1)} (5)Lj / {(n1+1) (nTwo+1)} ≦ P ≦ l (j + 1) / {(n 1 +1) (nTwo+1)} (5)

【0071】ここで、n1,n2は、それぞれX(i) 1、X
(j) 2 の個数を意味する。よって、確率P以上の信頼区
間は、
Here, n 1 and n 2 are X (i) 1 and X
(j) means the number of 2 ; Therefore, the confidence interval over the probability P is

【0072】 P≦lj/{(n1+1)(n2+1)} (6)P ≦ lj / {(n 1 +1) (n 2 +1)} (6)

【0073】を満たす最小のX(l) 1となる。これは、上
述の方法によって得られた確率密度関数を順序統計量と
して表し、これをもとに新標本を一つとったときの信頼
区間と一致する。よって、本実施例では、まず単一の更
新開始ノードからの最新度を上述の方法によって得られ
た確率密度関数を順序統計量として表し、これをもとに
新標本を一つとったときの確率Pでの信頼区間として、
各最短ノードで計算する。 次に、複数の更新開始ノー
ドからの最新度を受け取ったフロントエンド・ノード
は、その最悪値として、最も大きい最新度をクライアン
ト・ノードに返答する。
The minimum X (l) 1 that satisfies the above condition. This represents the probability density function obtained by the above-described method as an order statistic, and matches the confidence interval when one new sample is taken based on this. Therefore, in the present embodiment, first, the latest degree from a single update start node is represented as a probability density function obtained by the above method as an order statistic, and when one new sample is taken based on this, As a confidence interval with probability P,
Calculate at each shortest node. Next, the front-end node that has received the latest degrees from the plurality of update start nodes returns the largest latest degree to the client node as its worst value.

【0074】[0074]

【発明の効果】以上説明したとおり本発明は、取得した
データとそのデータがどの程度の最近のデータであるか
を示す尺度を有することにより、クライアントがある新
しさのデータを取得したい場合に、要求を溝足するデー
タを取得することができる。また、得られたデータをも
とに動作を決定するようなシステム、すなわち判断支援
システム等への適用が可能である。
As described above, according to the present invention, when a client wants to acquire data of a certain newness, the acquired data and a scale indicating how recent the data are are provided. It is possible to obtain data that supplements the requirements. Further, the present invention can be applied to a system that determines an operation based on obtained data, that is, a determination support system or the like.

【図面の簡単な説明】[Brief description of the drawings]

【図1】 本発明に係るネットワークおよび計算機を示
すブロック図である。
FIG. 1 is a block diagram showing a network and a computer according to the present invention.

【図2】 更新要求および読み出し要求を受けた際の各
ノードの関係を示す説明図である。
FIG. 2 is an explanatory diagram showing a relationship between each node when receiving an update request and a read request.

【図3】 更新開始ノードを根とし、更新開始ノードか
ら最短ノードまでの経路と、読み出し部分木と、で構成
される更新木を示す説明図である。
FIG. 3 is an explanatory diagram showing an update tree composed of a path from the update start node to the shortest node, and a read subtree, with the update start node as a root.

【図4】 フロントエンド・ノードおよび複製ノードの
動作を実現するプログラムを記載した説明図である。
FIG. 4 is an explanatory diagram describing a program for realizing operations of a front-end node and a replication node.

【図5】 図4に係る状態遷移を示す状態遷移図であ
る。
FIG. 5 is a state transition diagram showing the state transition according to FIG. 4;

【符号の説明】[Explanation of symbols]

1…計算機、2…ネットワーク、3…更新開始ノード、
4…読み出しノード。
1 ... computer, 2 ... network, 3 ... update start node,
4: Read node.

Claims (8)

【特許請求の範囲】[Claims] 【請求項1】 通信ネットワークに複数の計算機が接続
され、これらの計算機にはデータを管理するためのプロ
セスが一以上動作しており、前記各プロセスの管理する
データの内容は全て同一であり、前記データを管理する
プロセスは、データの更新要求を受付けると、自プロセ
スのデータを変更するとともに他のプロセスにこの更新
要求を伝搬し、データの更新が次々に行われるデータ複
製システムにおいて、 前記データを管理する複数の複製ノードと、前記データ
の更新および読み出しを要求するクライアント・ノード
と、このクライアント・ノードからの要求を前記複製ノ
ードに対して仲介するフロントエンド・ノードとを有
し、 (a)前記複製ノードは、 更新経路を示す論理的な木構造によって接続された一以
上のグループを構成し、更新要求が伝搬されると前記木
構造上で隣接する複製ノードのうち、前記更新要求を伝
搬してきたノード以外の全てのノードに対して更新要求
を伝搬し、 (b)前記フロントエンド・ノードは、 前記クライアント・ノードからの更新要求に対して、前
記各グループ中の1つの複製ノード(以下、更新開始ノ
ードという)に更新要求を行い、 前記クライアント・ノードからの読み出し要求に対し
て、複数の前記複製ノード(以下、読み出しノードとい
う)に読み出し要求を仲介し、読み出された複数のデー
タのうち最新のデータを前記クライアント・ノードに返
答し、どの程度の最近のデータを獲得できるかを計算す
るとともにその計算結果を管理し、前記クライアント・
ノードからの要求に対して、この要求を満たす読み出し
ノードの組合わせを選択して読み出し要求を行い、取得
したデータとそのデータがどの程度最近のデータである
かを示す尺度とを前記クライアント・ノードに返答する
ことを特徴とするデータ複製システム。
A plurality of computers are connected to a communication network, and one or more processes for managing data operate on these computers, and the contents of data managed by each of the processes are all the same, The process of managing the data, when receiving a data update request, changes the data of its own process and propagates this update request to other processes, and in a data replication system in which data is updated one after another, , A client node that requests updating and reading of the data, and a front-end node that mediates a request from the client node to the replication node. The replica nodes constitute one or more groups connected by a logical tree structure indicating an update path. When the update request is propagated, the update request is propagated to all nodes other than the node that has propagated the update request among the replica nodes adjacent on the tree structure, and (b) the front-end node Performs an update request to one copy node (hereinafter referred to as an update start node) in each of the groups in response to an update request from the client node; Mediates a read request to the duplicate node (hereinafter, referred to as a read node), returns the latest data among the plurality of read data to the client node, and determines how recent data can be obtained. Calculate and manage the calculation result,
In response to a request from a node, a read request is made by selecting a combination of read nodes that satisfy this request, and the client node determines the acquired data and a measure indicating how recent the data is. A data replication system characterized by responding to
【請求項2】 請求項1において、 前記取得したデータがどの程度最近のデータであるかを
示す尺度は、最新度として定義され、 所定の確率pで、現在から時間T前までの更新を反映し
ているときに、確率pの最新度はTであると定義されて
いることを特徴とするデータ複製システム。
2. The scale according to claim 1, wherein the scale indicating how recent the acquired data is is defined as the latest degree, and reflects a update from the present to a time T before the current time with a predetermined probability p. Wherein the latest degree of the probability p is defined as T.
【請求項3】 請求項2において、 前記各複製ノードは、 前記ノードに接続している論理的リンクを伝搬するとき
の更新遅れの統計分布を管理し、前記読み出しノードを
含む最小の部分木(以下、読み出し部分木という)を形
成し、この読み出し部分木に含まれるノードのうち、前
記木構造上で更新開始ノードに最も近いノード(以下、
最短ノードという)を選択し、 前記更新開始ノードから前記最短ノードまでの経路と読
み出し部分木とで構成される部分木において前記更新開
始ノードを根としたときに、前記読み出し部分木の葉と
なるノードは、前記ノードに接続されているリンクの更
新遅れの統計分布を親ノードに送信し、前記葉となるノ
ード以外の複製ノードは、子ノードの全てから統計分布
を受け取った後、この統計分布を用いて前記複製ノード
から前記複製ノードの子孫となる読み出しノードまでの
更新遅れの最小の統計分布を計算してから、この統計分
布を前記親ノードに送信し、 前記最短ノードは、計算した統計分布または最新度を前
記フロントエンド・ノードに送信し、 前記最新度または全ての更新開始ノードについての更新
遅れの統計分布を受信したフロントエンド・ノードは、
前記最新度または統計分布をもとにして、同一木構造内
の最新度を計算することを特徴とするデータ複製システ
ム。
3. The method according to claim 2, wherein each of the replica nodes manages a statistical distribution of update delays when propagating a logical link connected to the node, and includes a minimum subtree including the read node. Hereinafter, a read subtree is formed, and among nodes included in the read subtree, a node closest to the update start node on the tree structure (hereinafter, referred to as a subtree).
When a subtree composed of a path from the update start node to the shortest node and the read subtree is rooted at the update start node, a node serving as a leaf of the read subtree is Transmitting the update delay statistical distribution of the link connected to the node to the parent node, and the replica node other than the leaf node receives the statistical distribution from all of the child nodes, and then uses this statistical distribution. After calculating the minimum statistical distribution of the update delay from the duplication node to the read node that is a descendant of the duplication node, this statistical distribution is transmitted to the parent node, the shortest node is calculated statistical distribution or The latest degree is transmitted to the front-end node, and the latest degree or the update delay statistical distribution for all update start nodes is received. Ntoendo node,
A data replication system for calculating the latest degree in the same tree structure based on the latest degree or statistical distribution.
【請求項4】 請求項3において、 前記最短ノードを読み出し部分木としたときに、先祖に
読み出しノードが存在する読み出しノードを削除してい
き、 先祖に読み出しノードの存在する読み出しノードが無く
なった時点で、でき上がった読み出し部分木を用いるこ
とを特徴とするデータ複製システム。
4. The read-out node according to claim 3, wherein when the shortest node is a read subtree, read nodes in which read nodes exist in ancestors are deleted, and read nodes in which read nodes exist in ancestors disappear. A data duplication system using the completed read subtree.
【請求項5】 通信ネットワークに複数の計算機が接続
され、これらの計算機にはデータを管理するためのプロ
セスが一以上動作しており、前記各プロセスの管理する
データの内容は全て同一であり、前記データを管理する
プロセスは、データの更新要求を受付けると、自プロセ
スのデータを変更するとともに他のプロセスにこの更新
要求を伝搬し、データの更新が次々に行われるデータ複
製システムにおいて、 前記データを管理する複数の複製ノードと、前記データ
の更新および読み出しを要求するクライアント・ノード
と、このクライアント・ノードからの要求を前記複製ノ
ードに対して仲介するフロントエンド・ノードとを有
し、 (a)前記複製ノードは、 更新経路を示す論理的な木構造によって接続された一以
上のグループを構成し、更新要求が伝搬されると前記木
構造上で隣接する複製ノードのうち、前記更新要求を伝
搬してきたノード以外の全てのノードに対して更新要求
を伝搬し、 (b)前記フロントエンド・ノードは、 前記クライアント・ノードからの更新要求に対して、前
記各グループ中の1つの複製ノード(以下、更新開始ノ
ードという)に更新要求を行い、 前記クライアント・ノードからの読み出し要求に対し
て、複数の前記複製ノード(以下、読み出しノードとい
う)に読み出し要求を仲介し、読み出された複数のデー
タのうち最新のデータを前記クライアント・ノードに返
答し、どの程度の最近のデータを獲得できるかを計算す
るとともにその計算結果を管理し、前記クライアント・
ノードからの要求に対して、この要求を満たす読み出し
ノードの組合わせを選択して読み出し要求を行い、取得
したデータとそのデータがどの程度最近のデータである
かを示す尺度とを前記クライアント・ノードに返答する
プログラムを記録したことを特徴とするデータ複製プロ
グラムを記録した記録媒体。
5. A plurality of computers are connected to a communication network, and one or more processes for managing data operate on these computers, and the contents of data managed by each of the processes are all the same, The process of managing the data, when receiving a data update request, changes the data of its own process and propagates this update request to other processes, and in a data replication system in which data is updated one after another, , A client node that requests updating and reading of the data, and a front-end node that mediates a request from the client node to the replication node. The replica nodes constitute one or more groups connected by a logical tree structure indicating an update path. When the update request is propagated, the update request is propagated to all nodes other than the node that has propagated the update request among the replica nodes adjacent on the tree structure, and (b) the front-end node Performs an update request to one copy node (hereinafter referred to as an update start node) in each of the groups in response to an update request from the client node; Mediates a read request to the duplicate node (hereinafter, referred to as a read node), returns the latest data among the plurality of read data to the client node, and determines how recent data can be obtained. Calculate and manage the calculation result,
In response to a request from a node, a read request is made by selecting a combination of read nodes that satisfy this request, and the client node determines the acquired data and a measure indicating how recent the data is. A recording medium on which a data duplication program is recorded, wherein a program for responding to the data is recorded.
【請求項6】 請求項5において、 前記取得したデータがどの程度最近のデータであるかを
示す尺度は、最新度として定義され、 所定の確率pで、現在から時間T前までの更新を反映し
ているときに、確率pの最新度はTであると定義されて
いることを特徴とするデータ複製プログラムを記録した
記録媒体。
6. The method according to claim 5, wherein the scale indicating how recent the acquired data is is defined as the latest degree, and reflects the update from the present to a time T before the current time with a predetermined probability p. A data duplication program, wherein the latest degree of the probability p is defined as T.
【請求項7】 請求項6において、 前記各複製ノードは、 前記ノードに接続している論理的リンクを伝搬するとき
の更新遅れの統計分布を管理し、前記読み出しノードを
含む最小の部分木(以下、読み出し部分木という)を形
成し、この読み出し部分木に含まれるノードのうち、前
記木構造上で更新開始ノードに最も近いノード(以下、
最短ノードという)を選択し、 前記更新開始ノードから前記最短ノードまでの経路と読
み出し部分木とで構成される部分木において前記更新開
始ノードを根としたときに、前記読み出し部分木の葉と
なるノードは、前記ノードに接続されているリンクの更
新遅れの統計分布を親ノードに送信し、前記葉となるノ
ード以外の複製ノードは、子ノードの全てから統計分布
を受け取った後、この統計分布を用いて前記複製ノード
から前記複製ノードの子孫となる読み出しノードまでの
更新遅れの最小の統計分布を計算してから、この統計分
布を前記親ノードに送信し、 前記最短ノードは、計算した統計分布または最新度を前
記フロントエンド・ノードに送信し、 前記最新度または全ての更新開始ノードについての更新
遅れの統計分布を受信したフロントエンド・ノードは、
前記最新度または統計分布をもとにして、同一木構造内
の最新度を計算することを特徴とするデータ複製プログ
ラムを記録した記録媒体。
7. The method according to claim 6, wherein each of the replica nodes manages a statistical distribution of update delays when propagating a logical link connected to the node, and includes a minimum subtree including the read node. Hereinafter, a read subtree is formed, and among nodes included in the read subtree, a node closest to the update start node on the tree structure (hereinafter, referred to as a subtree).
When a subtree composed of a path from the update start node to the shortest node and the read subtree is rooted at the update start node, a node serving as a leaf of the read subtree is Transmitting the update delay statistical distribution of the link connected to the node to the parent node, and the replica node other than the leaf node receives the statistical distribution from all of the child nodes, and then uses this statistical distribution. After calculating the minimum statistical distribution of the update delay from the duplication node to the read node that is a descendant of the duplication node, this statistical distribution is transmitted to the parent node, the shortest node is calculated statistical distribution or The latest degree is transmitted to the front-end node, and the latest degree or the update delay statistical distribution for all update start nodes is received. Ntoendo nodes,
A recording medium on which a data duplication program is recorded, wherein the latest degree in the same tree structure is calculated based on the latest degree or statistical distribution.
【請求項8】 請求項7において、 前記最短ノードを読み出し部分木としたときに、先祖に
読み出しノードが存在する読み出しノードを削除してい
き、先祖に読み出しノードの存在する読み出しノードが
無くなった時点で、でき上がった読み出し部分木を用い
ることを特徴とするデータ複製プログラムを記録した記
録媒体。
8. The method according to claim 7, wherein when the shortest node is a read subtree, a read node having a read node existing in an ancestor is deleted, and a read node having a read node existing in an ancestor disappears. A recording medium storing a data duplication program, wherein the read subtree is used.
JP04707699A 1999-02-24 1999-02-24 Data replication system and recording medium recording data replication program Expired - Fee Related JP3421270B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP04707699A JP3421270B2 (en) 1999-02-24 1999-02-24 Data replication system and recording medium recording data replication program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP04707699A JP3421270B2 (en) 1999-02-24 1999-02-24 Data replication system and recording medium recording data replication program

Publications (2)

Publication Number Publication Date
JP2000242620A true JP2000242620A (en) 2000-09-08
JP3421270B2 JP3421270B2 (en) 2003-06-30

Family

ID=12765091

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04707699A Expired - Fee Related JP3421270B2 (en) 1999-02-24 1999-02-24 Data replication system and recording medium recording data replication program

Country Status (1)

Country Link
JP (1) JP3421270B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001028594A (en) * 1999-07-14 2001-01-30 Nippon Telegr & Teleph Corp <Ntt> Data copying method and recording medium with data copy program recorded therein
JP2013109600A (en) * 2011-11-21 2013-06-06 Fujitsu Ltd Storage device, storage system, data update method, and data management program
US9418096B2 (en) 2013-03-21 2016-08-16 Fujitsu Limited Control method, and information processing system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0695950A (en) * 1992-09-17 1994-04-08 Nippon Telegr & Teleph Corp <Ntt> File copy generating system
JPH07141242A (en) * 1993-11-15 1995-06-02 Nec Corp Automatic file updating system
JPH07160567A (en) * 1993-12-03 1995-06-23 Toshiba Corp File updating system
JPH0973424A (en) * 1995-09-07 1997-03-18 Mitsubishi Electric Corp Network system
JPH09212405A (en) * 1996-02-05 1997-08-15 Mitsubishi Electric Corp Method and device for file management
JPH09251435A (en) * 1996-03-15 1997-09-22 Nec Corp Data hierarchical distribution processing system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0695950A (en) * 1992-09-17 1994-04-08 Nippon Telegr & Teleph Corp <Ntt> File copy generating system
JPH07141242A (en) * 1993-11-15 1995-06-02 Nec Corp Automatic file updating system
JPH07160567A (en) * 1993-12-03 1995-06-23 Toshiba Corp File updating system
JPH0973424A (en) * 1995-09-07 1997-03-18 Mitsubishi Electric Corp Network system
JPH09212405A (en) * 1996-02-05 1997-08-15 Mitsubishi Electric Corp Method and device for file management
JPH09251435A (en) * 1996-03-15 1997-09-22 Nec Corp Data hierarchical distribution processing system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001028594A (en) * 1999-07-14 2001-01-30 Nippon Telegr & Teleph Corp <Ntt> Data copying method and recording medium with data copy program recorded therein
JP2013109600A (en) * 2011-11-21 2013-06-06 Fujitsu Ltd Storage device, storage system, data update method, and data management program
US9418096B2 (en) 2013-03-21 2016-08-16 Fujitsu Limited Control method, and information processing system

Also Published As

Publication number Publication date
JP3421270B2 (en) 2003-06-30

Similar Documents

Publication Publication Date Title
US11496545B2 (en) Temporal optimization of data operations using distributed search and server management
US20210357408A1 (en) Temporal optimization of data operations using distributed search and server management
AU2022200375A1 (en) Temporal optimization of data operations using distributed search and server management
US8375141B2 (en) Infrastructure to disseminate queries and provide query results
US8554993B2 (en) Distributed content storage and retrieval
JP5411250B2 (en) Data placement according to instructions to redundant data storage system
US7693882B2 (en) Replicating data across the nodes in a cluster environment
US7454408B2 (en) System and method for optimized distributed file transfer
US7783607B2 (en) Decentralized record expiry
CN105808634A (en) Distributed map reduce network
CN109074362A (en) Fractionation and moving range in distributed system
JP2008519372A (en) Object replication using service information quality
CN108616574A (en) Manage storage method, equipment and the storage medium of data
Choi et al. Dynamic hybrid replication effectively combining tree and grid topology
CN109739684A (en) The copy restorative procedure and device of distributed key value database based on vector clock
US7904547B2 (en) Method, system, and program product for optimizing monitoring and discovery services for a grid computing environment
JP4971717B2 (en) Directory distributed storage device and data processing request transfer program
JP3421270B2 (en) Data replication system and recording medium recording data replication program
JP3545267B2 (en) Data duplication method and recording medium recording data duplication program
CN110958666A (en) Network slice resource mapping method based on reinforcement learning
Burger et al. Performance of multiversion and distributed two-phase locking concurrency control mechanisms in distributed database
Hara et al. Database migration: a new architecture for transaction processing in broadband networks
CN115190181B (en) Resource management method and system based on cloud management
JP2000020374A (en) Replication control system
JP7037595B2 (en) Database management system and database management method

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090418

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090418

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100418

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100418

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110418

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120418

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130418

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees