JPH10289187A - Parallel data transfer method - Google Patents

Parallel data transfer method

Info

Publication number
JPH10289187A
JPH10289187A JP9100000A JP10000097A JPH10289187A JP H10289187 A JPH10289187 A JP H10289187A JP 9100000 A JP9100000 A JP 9100000A JP 10000097 A JP10000097 A JP 10000097A JP H10289187 A JPH10289187 A JP H10289187A
Authority
JP
Japan
Prior art keywords
data
server
client
communication
servers
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.)
Pending
Application number
JP9100000A
Other languages
Japanese (ja)
Inventor
Kenichi Soejima
健一 副島
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP9100000A priority Critical patent/JPH10289187A/en
Publication of JPH10289187A publication Critical patent/JPH10289187A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To accelerate data transfer between a client and a server when one or more servers hold a part or all of data required by the client and are connected by the communication paths respectively different in communication cost. SOLUTION: The client 1000 and the server 1002, the server 1004 and the server 1006 are respectively connected by communication channels and are capable of communication respectively by the communication path 1100, the communication path 1102 and the communication path 1104. Also, the respective servers hold a part or all of the same data respectively as the data 1202, the data 1204 and the data 1206. At the time, when the client 1000 issues a request for obtaining the data held by the servers as the data 1200, the communication costs of the communication paths between the respective servers and the client are taken into consideration, the data are divided and a part each of the data is respectively parallelly gathered from the respective servers, combined and obtained as the result of the request.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は一般にコンピュータ
システムに関し、詳細には通信コストが不均一な計算機
ネットワーク上に存在する、データの取得要求や保存要
求を発生させるクライアント計算機と、前記要求を処理
するサーバ計算機の間のデータの転送方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention generally relates to a computer system, and more particularly, to a client computer that generates a data acquisition request or a storage request on a computer network having uneven communication costs, and processes the request. The present invention relates to a method for transferring data between server computers.

【0002】[0002]

【従来の技術】従来のクライアントサーバシステムで
は、1つのデータに対して、いずれか1つのサーバがマ
スタデータを保持し、他のいくつかのサーバがレプリカ
やキャッシュとして、前記データの複製を持つ。そして
クライアントはデータが必要になると、マスタデータを
持つサーバもしくはその複製を持つサーバに対して、デ
ータ転送要求を発行し、そのサーバから1つの通信路を
使用して必要なデータを全て受けとる(前川守、所真理
雄、清水謙多郎編:「分散オペレーティングシステム−
UNIXの次にくるもの−」、共立出版、1.3なぜ分
散処理か)。
2. Description of the Related Art In a conventional client server system, one server holds master data for one data, and some other servers have a replica of the data as a replica or a cache. Then, when the client needs the data, it issues a data transfer request to the server having the master data or the server having the copy, and receives all the necessary data from the server using one communication path (Maekawa Mamoru, Mario Tokoro, Kentaro Shimizu: "Distributed Operating System-
What comes after UNIX-", Kyoritsu Publishing, 1.3 Why distributed processing?).

【0003】一方、ディスクアレイやストライピングフ
ァイルシステムでは、データを複数のブロックに分け、
各ブロックを別々のディスクに格納し、データを読みだ
す時には、前記格納したデータを並列に読み出すことで
入出力の高速化を図る(前川守、所真理雄、清水謙多郎
編:「分散オペレーティングシステム−UNIXの次に
くるもの−」、共立出版、6.3.1ファイルサーバの
実現技術)。
On the other hand, in a disk array or a striping file system, data is divided into a plurality of blocks.
When each block is stored on a separate disk and data is read, the speed of input / output is increased by reading the stored data in parallel (Mori Maekawa, Mario Tokoro, Kentaro Shimizu: "Distributed Operating System-UNIX"Next,-", Kyoritsu Shuppan, 6.3.1 File Server Implementation Technology).

【0004】[0004]

【発明が解決しようとする課題】複数のサーバから1つ
を選択して必要なデータを全て前記サーバから取得する
方法では、必要なデータをもっているサーバが他にも存
在するにもかかわらず、1つのサーバから1つの通信路
を使用してシリアルにデータ転送を行なうため、データ
量と使用する通信路の速度により転送処理に要する時間
は制限され、それ以上の大幅な高速化は望めない。
In the method of selecting one from a plurality of servers and acquiring all necessary data from the server, the method of selecting one from a plurality of servers, despite the fact that there are other servers having the necessary data, is also difficult. Since data is serially transferred from one server using one communication path, the time required for the transfer processing is limited by the amount of data and the speed of the communication path to be used, and further higher speed cannot be expected.

【0005】また、前述のディスクアレイやストライピ
ングファイルシステムでは、データを分割して並列に入
出力を行なうことでデータ転送の高速化を図っている
が、実際の計算機同士を接続したネットワークでは、通
信路毎に通信速度にばらつきがあるため、前記技術をそ
のまま適用しても、低速回線も高速回線も同じ量のデー
タを転送することになり、必ずしも効率のよいデータ転
送が行なえるとは限らない。
In the above-described disk array and striping file system, data transfer is speeded up by dividing data and performing input / output in parallel. However, in a network in which actual computers are connected, communication is not performed. Since the communication speed varies among the roads, even if the above technology is applied as it is, both the low-speed line and the high-speed line will transfer the same amount of data, so that efficient data transfer cannot always be performed. .

【0006】本発明の目的は、実際の通信コストが不均
一な計算機ネットワーク上で、より並列性の高いデータ
転送を実現し、クライアントとサーバの間のデータ転送
を高速化することを目的とする。
An object of the present invention is to realize data transfer with higher parallelism on a computer network where actual communication costs are not uniform, and to speed up data transfer between a client and a server. .

【0007】[0007]

【課題を解決するための手段】本発明における並列デー
タ転送方法では、クライアントが要求するデータを保持
している2つ以上のサーバに、前記データの一部分ずつ
を要求して並列にデータ転送を行なうことで、クライア
ントとサーバの間のデータ転送の高速化を実現する。
According to the parallel data transfer method of the present invention, data is transferred in parallel by requesting a part of the data to two or more servers holding the data requested by the client. This realizes high-speed data transfer between the client and the server.

【0008】また、サーバとクライアント間の通信路の
コストを考慮して、各サーバに転送要求するデータの範
囲と前記サーバへの同時要求数を決定することで、より
並列性の高いデータ転送を行ない、データ転送処理時間
の短縮を図る。
Further, by determining the range of data to be transferred to each server and the number of simultaneous requests to the server in consideration of the cost of the communication path between the server and the client, data transfer with higher parallelism can be performed. To reduce the data transfer processing time.

【0009】[0009]

【発明の実施の形態】システム構成の例を図1に示す。FIG. 1 shows an example of a system configuration.

【0010】クライアント1000とサーバ1002、
サーバ1004およびサーバ1006はそれぞれ通信回
線で接続されており、通信路1100、通信路1102
および通信路1104で通信可能である。さらに前記サ
ーバは同じデータ1002、データ1004およびデー
タ1006の一部もしくは全てを保持している。
[0010] Client 1000 and server 1002,
The server 1004 and the server 1006 are connected by a communication line, respectively, and a communication path 1100 and a communication path 1102
And a communication path 1104. Further, the server holds some or all of the same data 1002, data 1004, and data 1006.

【0011】クライアント1000が、前記サーバで管
理されているデータ1202、データ1204およびデ
ータ1206と同じデータ1200を前記サーバ群から
取得する際、前記通信路1100、通信路1102およ
び通信路1104を使用した際のデータ転送の通信コス
トを考慮して、サーバ1002からはデータ1212
を、サーバ1004からはデータ1214およびデータ
1215を、サーバ1006からはデータ1216をそ
れぞれ並列に収集する。なお、サーバ1004から取得
するデータ1214、データ1215は、通信路110
2をさらに多重化して並列にデータを転送する。
When the client 1000 obtains from the server group the same data 1200 as the data 1202, 1204, and 1206 managed by the server, the client 1000 uses the communication path 1100, the communication path 1102, and the communication path 1104. In consideration of the communication cost of the data transfer at the time of
, Data 1214 and data 1215 from the server 1004, and data 1216 from the server 1006, respectively. The data 1214 and data 1215 acquired from the server 1004 are
2 are further multiplexed and data is transferred in parallel.

【0012】図1におけるクライアント1000内のデ
ータ取得要求処理部の構成を図2に示す。
FIG. 2 shows the configuration of the data acquisition request processing section in the client 1000 shown in FIG.

【0013】要求受信部2000は、図1におけるデー
タ1200の取得要求を受信してデータ保守情報収集部
2006に渡す。前記データ保守情報収集部2006
は、サーバ通信部2010を使用して、図1におけるサ
ーバ1002やサーバ1004、サーバ1006と通信
して、前記各サーバが保持する、前記要求されたデータ
の保持情報を収集して、前記サーバと通信するのに必要
な通信コストと共に、サーバデータ及びデータ管理情報
2008として記録する。また、要求先サーバ及び同時
要求数決定部2004は、前記サーバデータ及びデータ
管理情報2008を元にして、前記サーバのうち要求さ
れたデータのどの部分をどのサーバに要求し、前記要求
を同時に幾つかに分けて前記サーバに要求するかを決定
する。そして、データ収集及び結合部2002は前記決
定に従いサーバ通信部2010を通して前記サーバ10
02、サーバ1004、サーバ1006と通信しなが
ら、要求されたデータを収集し結合して要求受信部20
00に返す。
The request receiving unit 2000 receives the request for acquiring the data 1200 in FIG. 1 and passes it to the data maintenance information collecting unit 2006. The data maintenance information collection unit 2006
Communicates with the server 1002, the server 1004, and the server 1006 in FIG. 1 using the server communication unit 2010, and collects the holding information of the requested data held by each server, and communicates with the server. It is recorded as server data and data management information 2008 together with the communication cost required for communication. Further, the request destination server and the simultaneous request number determination unit 2004 request which part of the requested data among the servers to which server based on the server data and the data management information 2008, and how many requests are made at the same time. Then, it is determined whether to request the server. Then, the data collecting and combining unit 2002 transmits the server 10 through the server communication unit 2010 according to the determination.
02, while collecting and combining requested data while communicating with the server 1004 and the server 1006, the request receiving unit 20
Return to 00.

【0014】図2におけるサーバデータ及びデータ管理
情報2008の保持情報の例を図3に示す。
FIG. 3 shows an example of information held in the server data and the data management information 2008 in FIG.

【0015】図3の表は、データ毎に1つずつ存在し、
一行でエントリとなっている。すなわち、行3000、
行3002、行3004、行3006がそれぞれエント
リである。列3100はエントリのサーバ識別子であ
り、列3012は前記識別子で示すサーバが、データの
どの部分を保持しているかを示す情報である。また、列
3104は、前記サーバ識別子で示されるサーバとクラ
イアントが通信する際の通信コストを示す値である。こ
こでは通信コストとして、クライアントとサーバとの間
のパケットの往復時間を使用するが、他に、通信回線の
回線速度、データ通信にかかる費用、過去の通信記録に
よる平均通信速度、管理者が決定する固定の値等が使用
できる。
The table in FIG. 3 exists one for each data.
One line is an entry. That is, row 3000,
Rows 3002, 3004, and 3006 are entries. Column 3100 is the server identifier of the entry, and column 3012 is information indicating which part of the data the server indicated by the identifier holds. A column 3104 is a value indicating a communication cost when the server and the client indicated by the server identifier communicate with each other. Here, the round trip time of the packet between the client and the server is used as the communication cost, but in addition, the line speed of the communication line, the cost of data communication, the average communication speed based on past communication records, and the administrator determine A fixed value can be used.

【0016】図2におけるデータ受信要求の処理の流れ
を、図4に示す。
FIG. 4 shows a flow of processing of the data reception request in FIG.

【0017】クライアントの図1に示すデータ1200
の読み込み要求が発生すると(4002)、前記データ
を保持するサーバと前記サーバが保持するデータの範囲
を図2に示す2006が収集し(4004)、その結果
から、転送要求を出すサーバと前記サーバへの同時要求
数を図2における要求先サーバ及び同時要求数決定部2
004にて決定し(4006)、前記決定を元に、図2
におけるデータ収集及び結合部2002で、各サーバに
データ転送要求を並列に送信して(4008)、データ
が全てそろうまで(4010)、データを受信し(40
12)、収集した結果を結合して(4014)、前記4
002において発生したデータ読み込み要求の結果とす
る。なお、前記データを保持するサーバと前記サーバが
保持するデータの範囲を収集する処理4004は、予め
前記データを持つサーバや持っているデータの範囲がわ
かっている場合は、特に処理は行なわない。
Data 1200 of the client shown in FIG.
When a read request is generated (4002), the server holding the data and the range of data held by the server are collected by 2006 shown in FIG. 2 (4004), and based on the result, the server issuing the transfer request and the server The request destination server and the simultaneous request number determination unit 2 in FIG.
004 (4006), and based on the determination, FIG.
In the data collection and combination unit 2002, the data transfer request is transmitted to each server in parallel (4008), and the data is received (4010) until all the data are collected (4010).
12) Combining the collected results (4014),
002 is the result of the data read request generated. If the server holding the data and the range of the data held by the server are collected 4004, the process is not particularly performed if the server holding the data or the range of the data held is known in advance.

【0018】図4における、データ転送要求及び前記サ
ーバへの同時要求数を決定する処理4006の処理の流
れを図5に示す。
FIG. 5 shows the flow of the processing 4006 in FIG. 4 for determining the data transfer request and the number of simultaneous requests to the server.

【0019】まず、収集するデータを1つ以上の範囲に
分割し(5002)、全ての範囲の取得先サーバを決定
するまで(5004)、各範囲について(5006)、
前記範囲を管理するサーバのうち最も通信コストがかか
らないサーバを前記範囲を要求先のサーバとして選択す
る(5008)。全ての範囲の取得先サーバが決定する
と、次は全ての範囲の同時要求数を決定するまで(50
10)、全ての範囲について(5012)、前記範囲が
他の範囲の2倍以上のデータ量がある(5014)、も
しくは前記範囲を取得するのに他の範囲のデータを取得
する際に比べて2倍以上の通信コストがかかる(501
6)サーバについては、前記サーバに対して前記範囲の
転送要求を発行する際に分割して要求する数を増やす
(5018)。
First, the data to be collected is divided into one or more ranges (5002), and the acquisition destination servers of all ranges are determined (5004).
The server that has the lowest communication cost among the servers that manage the range is selected as the request destination server (5008). Once the acquisition destination servers of all ranges are determined, the next time the number of simultaneous requests of all ranges is determined (50
10) For the entire range (5012), the range has a data amount that is twice or more as large as the other range (5014), or the range is obtained as compared with the case of obtaining data in another range. More than twice the communication cost (501)
6) For the server, when issuing a transfer request in the range to the server, the number of requests is increased by dividing the request (5018).

【0020】図4における、データ転送要求及び前記サ
ーバへの同時要求数を決定する処理4006の図5で示
した方式とは別の方式の処理の流れを図6に示す。
FIG. 6 shows a processing flow of a method 4006 in FIG. 4 which is different from the method shown in FIG. 5 of the processing 4006 for determining the number of data transfer requests and the number of simultaneous requests to the server.

【0021】まず転送要求が発行されたデータの範囲を
1つ以上の範囲に分割し(6002)、全ての範囲の要
求転送先のサーバが決定するまで(6004)、データ
を保持するサーバが最も少ない範囲を選択して前記範囲
のデータの要求先サーバとし(6006)、前記範囲を
除いて既に割り当てられた範囲を全て転送するのに最も
コストのかからないサーバを選択して前記範囲の要求転
送先として割り当てる(6008)。
First, the range of the data for which the transfer request has been issued is divided into one or more ranges (6002), and the server holding the data is the most until the server of the request transfer destination in all ranges is determined (6004). A small range is selected to be a request destination server of the data in the range (6006), and a server which is least costly to transfer all the allocated ranges except the range is selected and a request destination of the range is selected. (6008).

【0022】図4における、目的のデータを保持するサ
ーバと、前記サーバが保持するデータの範囲を収集する
処理4004の処理の流れを図7に示す。
FIG. 7 shows a process flow of a server 400 holding target data and a process 4004 for collecting a range of data held by the server in FIG.

【0023】まず取得するデータを保持していると思わ
れるサーバに目的のデータの保持情報取得要求を送信し
(7002)、前記要求のリプライが全て返ってくるま
で(7004)、受信した各リプライについて(700
6)、前記要求送信時からリプライが返ってくるまでに
かかった時間と(7008)、リプライ中の前記データ
の保持情報を取りだして(7010)、図3に示したサ
ーバデータ及びデータ管理情報の、経過時間は通信コス
トとして図3の列3104に、保持情報は各サーバが管
理するサーバの範囲として図3の列3102にそれぞれ
格納する(7012)。
First, a request for obtaining information of holding the target data is transmitted to a server that is thought to hold the data to be obtained (7002), and until all the replies of the request are returned (7004), each received reply is received. About (700
6), the time taken from when the request was sent to when the reply was returned (7008), and the holding information of the data in the reply is taken out (7010), and the server data and the data management information shown in FIG. The elapsed time is stored in the column 3104 of FIG. 3 as the communication cost, and the held information is stored in the column 3102 of FIG. 3 as the range of the server managed by each server (7012).

【0024】図1において、クライアント1000にあ
るデータ1200を、サーバ1002、サーバ1004
およびサーバ1006のデータ1202、データ120
4およびデータ1206に書き込む時の処理の流れを図
8に示す。
In FIG. 1, data 1200 stored in a client 1000 is stored in a server 1002 and a server 1004.
And data 1202 and data 120 of the server 1006
FIG. 8 shows the flow of the process when writing the data No. 4 and the data 1206.

【0025】図1におけるクライアント1000でデー
タ1200の保存要求が発生すると(8000)、各サ
ーバとの通信にかかる通信コストを考慮してデータの範
囲を分割し(8002)、前記データを保存するサーバ
に並列にデータを転送し(8004)、全て転送処理が
終了するまで待つ(8006)。転送処理時にエラーが
発生していると(8008)、再度前記転送時にエラー
が発生したサーバ以外のサーバに対して、保存先を決定
する処理8002から前記転送に失敗したデータについ
てのみ再度処理する。
When a request to save data 1200 is issued by the client 1000 in FIG. 1 (8000), the data range is divided in consideration of the communication cost required for communication with each server (8002), and the server for storing the data is divided. Are transferred in parallel to each other (8004), and the process waits until the transfer process is completed (8006). If an error has occurred during the transfer process (8008), the server other than the server in which the error occurred during the transfer is re-processed from the process 8002 for determining the storage destination only for the data for which the transfer failed.

【0026】クライアントとサーバが通信する際に2つ
以上の通信路を使用して並列にデータ転送を行なう様子
を図9に示す。
FIG. 9 shows how data is transferred in parallel using two or more communication paths when a client and a server communicate.

【0027】図9で、クライアント9100はサーバ9
102と通信路9200、通信路9202および通信路
9204で接続されている。このとき、サーバ9102
にあるデータ9002をクライアント9100にデータ
9000として転送するとき、前記通信路のうち1つで
前記データ9002を全て転送するのではなく、通信路
9200、通信路9202、通信路9204の通信コス
トを考慮して、データ9002を、データ9004、デ
ータ9006およびデータ9008に分割し、データ9
002は通信路9200で、データ9006は通信路9
202で、データ9008は通信路9204でそれぞれ
並列に転送し、クライアント9100で前記転送したデ
ータを結合してデータ9000とする。
In FIG. 9, a client 9100 is a server 9
The communication path 102 is connected to a communication path 9200, a communication path 9202, and a communication path 9204. At this time, the server 9102
When the data 9002 in the data path 900 is transferred to the client 9100 as data 9000, the communication cost of the communication path 9200, the communication path 9202, and the communication path 9204 is considered instead of transferring the entire data 9002 in one of the communication paths. Then, the data 9002 is divided into data 9004, data 9006, and data 9008,
002 is a communication path 9200, and data 9006 is a communication path 9
At 202, the data 9008 is transferred in parallel over the communication path 9204, and the client 9100 combines the transferred data to form data 9000.

【0028】[0028]

【発明の効果】本発明を利用すると、通信速度が不均一
な計算機ネットワークにおいて、クライアントとサーバ
の間のデータ転送を効率よく並列化し高速に転送処理が
行なえる。
According to the present invention, data transfer between a client and a server can be efficiently parallelized and a high-speed transfer process can be performed in a computer network having an uneven communication speed.

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

【図1】システム構成である。FIG. 1 is a system configuration.

【図2】クライアント内データ取得要求処理部構成であ
る。
FIG. 2 shows a configuration of a client data acquisition request processing unit.

【図3】サーバデータ及びデータ管理情報である。FIG. 3 shows server data and data management information.

【図4】データ取得要求処理部の処理の流れである。FIG. 4 is a flowchart of a process performed by a data acquisition request processing unit.

【図5】データ転送要求及び前記サーバへの同時要求数
決定処理の流れ1である。
FIG. 5 is a flowchart 1 of a data transfer request and a process of determining the number of simultaneous requests to the server.

【図6】データ転送要求及び前記サーバへの同時要求数
決定処理の流れ2である。
FIG. 6 shows a flow 2 of a data transfer request and a process of determining the number of simultaneous requests to the server.

【図7】データ管理サーバ及び保持データ範囲情報収集
方法である。
FIG. 7 shows a data management server and a retained data range information collection method.

【図8】データ保存要求処理時の処理の流れである。FIG. 8 is a flow of a process at the time of data storage request processing.

【図9】多重通信路による並列データ転送である。FIG. 9 shows parallel data transfer using a multiplex communication path.

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

1000…クライアント、 1100…通信路、
1200…データ。
1000: client, 1100: communication channel,
1200 data.

Claims (6)

【特許請求の範囲】[Claims] 【請求項1】要求に応じてデータの保存や読み出しを行
なう計算機であるサーバと、前記サーバに対してデータ
の保存要求や読み出し要求を送る計算機であるクライア
ントがそれぞれ1つ以上ずつ存在し、 前記各クライアントと前記サーバ群のうちの1つ以上の
サーバがそれぞれ通信路で接続され、 ソフトウェアにより通信路を多重化した仮想通信路によ
り、前記クライアントと前記サーバが前記通信路上で同
時に1つ以上の通信が行なえるクライアントサーバシス
テムにおいて、 前記サーバ群のうち1つ以上のサーバがそれぞれ前記ク
ライアントが要求するデータを保持する時、 前記クライアントが前記データの一部もしくは全ての転
送要求を発行すると、 前記各サーバと前記クライアントとの間の通信路のコス
トを考慮して、 前記各サーバに要求するデータの範囲と前記各サーバと
の通信時に同時に使用する仮想通信路数を決定し、 前記各サーバからそれぞれ前記決定したデータの範囲を
並列に転送する並列データ転送方法。
1. A server which is a computer for storing and reading data in response to a request, and a client which is a computer for sending a request for storing and reading data to and from the server. Each client and one or more servers in the server group are connected by a communication path, respectively, and the client and the server are simultaneously connected on the communication path by one or more virtual communication paths multiplexed by software. In a client-server system capable of performing communication, when one or more servers in the server group respectively hold data requested by the client, the client issues a transfer request for a part or all of the data, In consideration of the cost of the communication path between each server and the client, Parallel data transfer method of determining a virtual channel number, and transfers the range of data that the determined respectively from the respective servers in parallel to use the range of data when communicating with each server simultaneously Request over server.
【請求項2】要求に応じてデータの保存や読み出しを行
なう計算機であるサーバと、前記サーバに対してデータ
の保存要求や読み出し要求を送る計算機であるクライア
ントがそれぞれ1つ以上ずつ存在し、 前記各クライアントと前記サーバ群のうちの1つ以上の
サーバがそれぞれ通信路で接続され、 ソフトウェアにより通信路を多重化した仮想通信路によ
り、前記クライアントと前記サーバが前記通信路上で同
時に1つ以上の通信が行なえるクライアントサーバシス
テムにおいて、 前記サーバ群のうち1つ以上のサーバがそれぞれ前記ク
ライアントが要求するデータの一部もしくは全てを保持
する時、 前記クライアントが前記データの一部もしくは全ての転
送要求を発行すると、 前記各サーバがそれぞれ前記データのうちどの部分を保
持するかの情報を取得し、 前記各サーバと前記クライアントとの間の通信路のコス
トを考慮して、 要求した前記データの一部を保持するサーバのうち、前
記各サーバ計算機に要求する前記データの範囲と前記サ
ーバ毎の通信時に同時に使用する仮想通信路数を決定
し、 前記各サーバからそれぞれ前記決定したデータの範囲を
並列に転送する並列データ転送方法。
2. A server, which is a computer for saving and reading data in response to a request, and one or more clients, each being a computer for sending a request to save or read data to the server, Each client and one or more servers in the server group are connected by a communication path, respectively, and the client and the server are simultaneously connected on the communication path by one or more virtual communication paths multiplexed by software. In a client-server system capable of performing communication, when one or more servers in the server group respectively hold a part or all of data requested by the client, the client requests a transfer of part or all of the data. Issue, each server holds which part of the data Or information obtained from the server computer, among the servers holding a part of the requested data in consideration of the cost of the communication path between each server and the client, And a number of virtual communication paths to be used simultaneously at the time of communication for each server, and a parallel data transfer method for transferring the determined range of data from each server in parallel.
【請求項3】請求項1または請求項2における並列デー
タ転送方法において、 前記クライアントが要求する前記データを1つ以上の範
囲に分割し、 前記データの範囲を保持するサーバ群のうち最も通信コ
ストがかからないサーバを選択する処理を前記データの
全ての範囲について繰り返し、 前記各サーバのうち、転送するデータの範囲が広いもし
くはデータ転送に時間がかかると予測されるサーバにつ
いては同時に使用する仮想通信路数を増やして、 前記各サーバに要求する前記データの範囲と前記各サー
バ毎の通信時に同時に使用する仮想通信路数を決定する
並列データ転送方法。
3. The parallel data transfer method according to claim 1, wherein the data requested by the client is divided into one or more ranges, and the communication cost is the lowest among a group of servers holding the range of the data. The process of selecting a server that does not cost is repeated for the entire range of the data, and among the servers, a virtual communication path that is used simultaneously for servers that have a wide range of data to be transferred or that are expected to take a long time for data transfer A parallel data transfer method for increasing the number of data to determine the range of the data requested from each server and the number of virtual communication paths to be used simultaneously during communication for each server.
【請求項4】請求項1または請求項2における並列デー
タ転送方法において、 前記データを1つ以上の範囲に分け、 前記範囲のそれぞれについて、保持するサーバが少ない
範囲から順に、 前記範囲を保持するサーバ群のうち、既に割り当てられ
ているデータの範囲を全て転送するのに必要な通信コス
トの少ないサーバ程広い範囲が割り当てられるように前
記データの範囲を転送するサーバを決定していき、 前記データの全ての範囲について転送要求を処理するサ
ーバが決定すると、 前記各サーバからそれぞれ前記決定した範囲のデータを
並列に転送する並列データ転送方法。
4. The parallel data transfer method according to claim 1, wherein the data is divided into one or more ranges, and each of the ranges is stored in order from a server having a smaller number of servers. From among the server group, the server that transfers the data range is determined so that a server with a lower communication cost necessary to transfer the entire data range already allocated is allocated a wider range, When a server that processes a transfer request is determined for all of the ranges, a parallel data transfer method of transferring data in the determined range from each of the servers in parallel.
【請求項5】要求に応じてデータの保存や読み出しを行
なう計算機であるサーバと、前記サーバに対してデータ
の保存要求や読み出し要求を送る計算機であるクライア
ントがそれぞれ1つ以上ずつ存在し、 前記各クライアントと前記サーバ群のうちの1つ以上の
サーバがそれぞれ通信路で接続され、 ソフトウェアにより通信路を多重化した仮想通信路によ
り、前記クライアントと前記サーバが前記通信路上で同
時に1つ以上の通信が行なえるクライアントサーバシス
テムにおいて、 前記サーバのうち2つ以上のサーバに対して前記クライ
アント計算機がデータの保存要求を発行する際、 前記サーバ群のうち前記データの保存要求を処理するサ
ーバ群を決定し、 前記各サーバと前記クライアントとの間の通信路のコス
トを考慮して、 前記サーバのそれぞれに転送するデータの範囲を決定
し、 前記サーバに前記決定したデータの範囲を並列に転送す
る並列データ転送方法。
5. A server, which is a computer for storing and reading data in response to a request, and one or more clients, each being a computer for sending a data storage request or a read request to the server, Each client and one or more servers in the server group are connected by a communication path, respectively, and the client and the server are simultaneously connected on the communication path by one or more virtual communication paths multiplexed by software. In a client-server system capable of performing communication, when the client computer issues a data storage request to two or more of the servers, a server group that processes the data storage request among the server groups And considering the cost of the communication path between each server and the client, Parallel data transfer method to determine the range of data to be transferred to each server, and transfers the range of data that the determined to the server in parallel.
【請求項6】請求項1または請求項2または請求項5に
おける並列データ転送方法において、 前記サーバと前記クライアントの間の通信路が2つ以上
存在する場合、 前記サーバと前記クライアントの間で転送するデータ
を、 前記各通信路の通信コストを考慮して、前記各通信路で
転送するデータの範囲と前記各通信路の通信時に同時に
使用する仮想通信路数を決定し、 前記通信路を使用して前記データを並列に転送する並列
データ転送方法。
6. The parallel data transfer method according to claim 1, wherein when there are two or more communication paths between the server and the client, the data is transferred between the server and the client. The data to be transferred is determined in consideration of the communication cost of each of the communication paths, and a range of data to be transferred on each of the communication paths and the number of virtual communication paths to be used simultaneously during communication of each of the communication paths are determined. And transferring the data in parallel.
JP9100000A 1997-04-17 1997-04-17 Parallel data transfer method Pending JPH10289187A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9100000A JPH10289187A (en) 1997-04-17 1997-04-17 Parallel data transfer method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9100000A JPH10289187A (en) 1997-04-17 1997-04-17 Parallel data transfer method

Publications (1)

Publication Number Publication Date
JPH10289187A true JPH10289187A (en) 1998-10-27

Family

ID=14262340

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9100000A Pending JPH10289187A (en) 1997-04-17 1997-04-17 Parallel data transfer method

Country Status (1)

Country Link
JP (1) JPH10289187A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002032280A (en) * 2000-07-13 2002-01-31 Ism Consulting Firm Kk Service system and method for distributing contents and software via distributed server and information storage medium
KR20030019900A (en) * 2001-08-28 2003-03-07 문의선 Parallel information delivery method based on peer-to-peer enabled distributed computing technology and the system thereof
JP2007080161A (en) * 2005-09-16 2007-03-29 Nec Personal Products Co Ltd Data distribution system, partial content storing server, method and program for increasing response speed
JP2007286946A (en) * 2006-04-18 2007-11-01 Hitachi Ltd Computer system, access control method and management computer
JP2009217836A (en) * 2000-02-07 2009-09-24 Netli Inc High-performance delivery method of web content

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009217836A (en) * 2000-02-07 2009-09-24 Netli Inc High-performance delivery method of web content
JP2002032280A (en) * 2000-07-13 2002-01-31 Ism Consulting Firm Kk Service system and method for distributing contents and software via distributed server and information storage medium
KR20030019900A (en) * 2001-08-28 2003-03-07 문의선 Parallel information delivery method based on peer-to-peer enabled distributed computing technology and the system thereof
JP2007080161A (en) * 2005-09-16 2007-03-29 Nec Personal Products Co Ltd Data distribution system, partial content storing server, method and program for increasing response speed
JP2007286946A (en) * 2006-04-18 2007-11-01 Hitachi Ltd Computer system, access control method and management computer
US8127097B2 (en) 2006-04-18 2012-02-28 Hitachi, Ltd. Dual writing device and its control method
US8332603B2 (en) 2006-04-18 2012-12-11 Hitachi, Ltd. Dual writing device and its control method

Similar Documents

Publication Publication Date Title
JP4068473B2 (en) Storage device, assignment range determination method and program
JPH06332782A (en) File server system and file access controlling method therefor
US8578053B2 (en) NAS load balancing system
US7899851B2 (en) Indexing method of database management system
US8127092B2 (en) Migration management based on destination performance information
WO2014157275A1 (en) Storage system, control program for information processing device, and control method for storage system
US20020165964A1 (en) Method and apparatus for providing a single system image in a clustered environment
CN104412263B (en) The distributing device of web content
CN109388590B (en) Dynamic cache block management method and device for improving multichannel DMA (direct memory access) access performance
WO2005066830A1 (en) A shared storage network system and a method for operating a shared storage network system
MXPA04003956A (en) Aggregate system resource analysis including correlation matrix and metric-based analysis.
CN108881348A (en) Method for controlling quality of service, device and storage server
CN102209087A (en) Method and system for MapReduce data transmission in data center having SAN
CN103297490B (en) Information processing apparatus, distributed processing system, and distributed processing method
CN100414936C (en) Method for balancing load between multi network cards of network file system server
US20020078461A1 (en) Incasting for downloading files on distributed networks
CN107329704A (en) One kind caching mirror method and controller
JPH10289187A (en) Parallel data transfer method
CN1494693A (en) Group access privatization in clustered computer system
CN105978744B (en) A kind of resource allocation methods, apparatus and system
WO2016092604A1 (en) Data processing system and data access method
GB2489735A (en) Cache system
JPH0981491A (en) Network video server, client device and multimedia information providing method
CN1228726C (en) Massive memory system based on multi-channel memory equipment and its control method
US6615284B2 (en) Method and apparatus for performing input/output operations between a requesting device and responding device