JP2000330959A - Inquiry parallel processing system and machine-readable recording medium where program is recorded - Google Patents

Inquiry parallel processing system and machine-readable recording medium where program is recorded

Info

Publication number
JP2000330959A
JP2000330959A JP11136742A JP13674299A JP2000330959A JP 2000330959 A JP2000330959 A JP 2000330959A JP 11136742 A JP11136742 A JP 11136742A JP 13674299 A JP13674299 A JP 13674299A JP 2000330959 A JP2000330959 A JP 2000330959A
Authority
JP
Japan
Prior art keywords
query
partial
processing
computer
database
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
JP11136742A
Other languages
Japanese (ja)
Other versions
JP3777872B2 (en
Inventor
Yuichi Aiba
雄一 相場
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP13674299A priority Critical patent/JP3777872B2/en
Publication of JP2000330959A publication Critical patent/JP2000330959A/en
Application granted granted Critical
Publication of JP3777872B2 publication Critical patent/JP3777872B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PROBLEM TO BE SOLVED: To increase the total throughput of the inquiry parallel processing system by leveling the loads on respective computer nodes for partial inquiry processing when inquiries are processed in parallel on a cluster system composed of the computer nodes. SOLUTION: An inquiry analyzing means 11 analyzes a received inquiry to derive a processing procedure divided into partial inquiries. An inquiry integrating processing means 14 when distributing the partial inquiries to respective computer nodes 2-1 to 2-n determines the distribution number of partial inquiries to the respective computer nodes 2-1 to 2-n by using a distribution number determining means 13 so that the respective computer nodes are equal in the number of partial inquiries. The computer nodes at distribution destinations process the distributed partial inquiries and send the results back and an inquiry integrating process means 14 on a computer node at a distribution source derives the whole result while merging the returned results of the partial inquiries.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、データベースに対
するデータ検索,グループ化,集計演算などを記述した
問合せ文を、複数の計算機ノードを用いて並列処理する
技術に関し、特に、複数の計算機ノードの処理負荷を均
衡化させることによってシステム全体の性能を向上させ
る問合せ並列処理システムに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a technology for parallel processing of query statements describing data retrieval, grouping, and totaling operations for a database using a plurality of computer nodes, and more particularly, to processing of a plurality of computer nodes. The present invention relates to a query parallel processing system that improves the performance of the entire system by balancing loads.

【0002】[0002]

【従来の技術】データベースに対する問合せを並列に処
理する方式は、過去に多くの研究者によって提案されて
きた("Query Evaluation Techiniques for Large Datab
ases",Goetz Graefe, ACM Computing Surveys, Vol. 2
5, No.2 June 1993 など) 。巨大なデータベースに対す
る問合せの処理は、二次記憶装置からのデータ読み込み
がネックになる。このため、複数の二次記憶装置にデー
タベースを分割して格納し、並列に読み込んで処理する
方式が基本的となっている。
2. Description of the Related Art A method for processing queries to a database in parallel has been proposed by many researchers in the past ("Query Evaluation Techiniques for Large Datab").
ases ", Goetz Graefe, ACM Computing Surveys, Vol. 2
5, No.2 June 1993). Query processing for a huge database is a bottleneck in reading data from the secondary storage device. For this reason, a basic method is to divide and store a database in a plurality of secondary storage devices and read and process the data in parallel.

【0003】1つのデータベースに対し条件を指定して
検索を行い該当レコードを取り出す処理を選択処理と呼
ぶこととする。例えば、銀行の口座データベースに対し
口座番号を指定して残高を照会したり、指紋データベー
スに対し指紋画像を与えて照合する処理が選択処理とな
る。データベースの選択処理は、データベースを複数の
二次記憶装置に分割して格納することによって容易に並
列化できる。この場合、各二次記憶装置に分割格納され
た各部分データベースを各計算機ノードから並列に読み
込んで検索処理を行うことにより並列化する。選択処理
では、インデックスなどのアクセスパスを用いることが
あるが、部分データベース毎に独立にインデックスを作
ることにより、インデックスを用いた選択処理を容易に
並列化できる。これらの並列化の手法は商用のリレーシ
ョナルデータベースシステムにも取り入れられている。
例えば、Oracleなどが挙げられる(「パーティショニン
グ技術のVLDBへの適用」、電子情報通信学会 信学技報
AI97−40,DE97−73、1997−12) 。
[0005] A process of performing a search on one database by designating conditions and extracting a corresponding record is referred to as a selection process. For example, the process of designating an account number in a bank account database to inquire the balance, or giving a fingerprint image to a fingerprint database and collating the same is the selection process. The database selection process can be easily parallelized by dividing and storing the database in a plurality of secondary storage devices. In this case, the respective partial databases divided and stored in the respective secondary storage devices are read in parallel from the respective computer nodes, and are subjected to a search process to be parallelized. In the selection process, an access path such as an index may be used. However, by independently creating an index for each partial database, the selection process using the index can be easily parallelized. These parallelization techniques have also been adopted in commercial relational database systems.
For example, Oracle ("Application of partitioning technology to VLDB", IEICE IEICE Technical Report)
AI97-40, DE97-73, 1997-12).

【0004】データベース中のレコードを、ある属性
(カラム)の値で分類することを分類処理と呼ぶことと
する。例えば、銀行の口座データベース中のレコードを
支店別に分類する処理である。また、レコード数を数え
たり、あるカラムの平均値や最大値を算出するなどの処
理を集計処理と呼び、レコード群を、あるカラムの値で
ソートする処理をソート処理と呼ぶ。
[0004] Classifying records in a database by the value of a certain attribute (column) is called classification processing. For example, a process of classifying records in a bank account database by branch. Also, processing such as counting the number of records or calculating an average value or a maximum value of a certain column is referred to as totaling processing, and processing of sorting a record group by a certain column value is referred to as sorting processing.

【0005】これらの処理を並列化する技術が、特開平
10−97544 号公報に記載されている。この技術では、デ
ータベースを複数の入出力サーバ配下の複数の二次記憶
装置に格納しておき、複数の入出力サーバから並列にデ
ータベース中のレコードを読み出す。読み出されたレコ
ードは入出力サーバによって分類され、複数の集計処理
サーバに分配される。集計処理サーバでは各入出力サー
バからのレコードに集計処理を施して部分集計結果と
し、最後に、部分集計結果をマージする。ここまでの処
理は複数の入出力サーバ、複数の集計処理サーバによっ
て並列に行われる。
A technique for parallelizing these processes is disclosed in
No. 10-97544. In this technique, a database is stored in a plurality of secondary storage devices under a plurality of input / output servers, and records in the database are read from the plurality of input / output servers in parallel. The read records are classified by the input / output server and distributed to a plurality of tallying servers. The tallying server performs tallying processing on records from each input / output server to obtain a partial tally result, and finally merges the partial tally results. The processing up to this point is performed in parallel by a plurality of input / output servers and a plurality of aggregation processing servers.

【0006】このように、データベースに対する問合せ
の並列処理は、データベースを複数の部分データベース
に分割して複数の二次記憶装置に分散格納し、複数の計
算機ノードが各二次記憶装置から並列にデータを読み込
んで処理するということを基本にしている。しかし、デ
ータベースを二次記憶装置に分散格納して各部分データ
ベースに対し並列に検索処理を行う場合、部分データベ
ースを各二次記憶装置に均等に格納したとしても、それ
らを読み込んで処理を行う各計算機ノードの負荷は均等
にならず、それによって、システム全体の処理効率を悪
化させてしまう場合がある。
As described above, in parallel processing of queries to a database, a database is divided into a plurality of partial databases, distributed and stored in a plurality of secondary storage devices, and a plurality of computer nodes transmit data from each secondary storage device in parallel. It is based on reading and processing. However, in the case where the databases are distributed and stored in the secondary storage device and the search processing is performed on each partial database in parallel, even if the partial databases are stored equally in each secondary storage device, each of them is read and processed. The loads on the computer nodes are not equalized, which may degrade the processing efficiency of the entire system.

【0007】このように負荷の不均衡がある場合、共有
メモリ型の並列計算機ならば、CPU数よりも多くのプロ
セスを生成しておけばシステム全体の処理効率悪化を防
げる。なぜなら、プロセス毎の負荷が不均衡になっても
OSのスケジューリングによってプロセスが切り替わり、
CPU が遊ぶことなく問合せの処理を進められるからであ
る。しかし、複数の計算機ノードを用いた並列計算機で
は、プロセスを計算機ノード間で移動できない。システ
ム全体の処理は、最終的には負荷の最も重い計算機ノー
ドの処理終了を待ち合わせるため、負荷の軽かった計算
機ノードが遊んでしまい、システム全体の処理効率が悪
化する。
[0007] In the case of such load imbalance, if a shared memory parallel computer generates more processes than the number of CPUs, it is possible to prevent the processing efficiency of the entire system from deteriorating. Because even if the load of each process becomes unbalanced
The process is switched by OS scheduling,
This is because the CPU can proceed with the query without playing. However, in a parallel computer using a plurality of computer nodes, a process cannot be moved between computer nodes. In the processing of the entire system, finally, the completion of the processing of the computer node with the heaviest load is waited for, so that the computer node with the lightest load idles and the processing efficiency of the entire system deteriorates.

【0008】一方、特開平10−301822号公報には、次の
ような技術が記載されている。データベースに対する問
合せを解析してアクセスパスを生成し、更に、アクセス
パスを複数の部分アクセスパスに分解する。その後、同
時に実行可能な部分アクセスパス群毎に、その群に属す
る部分アクセスパスの内のいくつかを処理コストに従っ
て1つのグループにまとめる。ここで、処理コストと
は、表の行数,列の分布状況,インデックスのヒット率
等の統計情報から算出したものであり、部分アクセスパ
スの実行に要する負荷の度合を数値化したものである。
また、部分アクセスパス群に属するいくつかの部分アク
セスパスを処理コストに従って1つのグループにまとめ
る際には、そのグループの属する部分アクセスパスの処
理コストの合計値が、上記部分アクセスパス群の最大処
理コストを越えないようにする。
On the other hand, Japanese Patent Application Laid-Open No. Hei 10-301822 describes the following technique. An access path is generated by analyzing a query to the database, and the access path is further decomposed into a plurality of partial access paths. Then, for each group of partial access paths that can be executed simultaneously, some of the partial access paths belonging to the group are grouped into one group according to the processing cost. Here, the processing cost is calculated from statistical information such as the number of rows in a table, the distribution of columns, and the hit ratio of an index, and is a numerical value of the degree of load required to execute a partial access path. .
When some partial access paths belonging to the partial access path group are grouped into one group according to the processing cost, the total value of the processing costs of the partial access paths to which the group belongs is determined by the maximum processing cost of the partial access path group. Do not exceed cost.

【0009】[0009]

【発明が解決しようとする課題】上記した特開平10−30
1822号公報に記載されている技術によれば、同時に実行
可能な部分アクセスパス群の属する各グループの処理コ
ストをほぼ等しくすることができる。従って、複数の計
算機ノードに、グループ単位で処理を割り当てるように
することにより、各計算機ノードの負荷をある程度は均
衡化することができる。しかしながら、特開平10−3018
22号公報に記載されている技術は、統計情報という静的
な情報を用いているため、各計算機ノードの動的な負荷
の変動には対処できず、その結果、システム全体の処理
効率を十分に高いものにすることができないという問題
があった。
DISCLOSURE OF THE INVENTION Problems to be Solved by the Invention
According to the technique described in the 1822 publication, the processing cost of each group to which the partial access path group that can be executed simultaneously belongs can be made substantially equal. Therefore, by assigning processes to a plurality of computer nodes in a group unit, the load on each computer node can be balanced to some extent. However, JP-A-10-3018
Since the technology described in Japanese Patent Publication No. 22 uses static information called statistical information, it cannot deal with the dynamic load fluctuation of each computer node, and as a result, the processing efficiency of the entire system can be sufficiently improved. There was a problem that can not be high.

【0010】そこで、本発明の目的は、複数の計算機ノ
ードから構成されるクラスタシステム上で問合せを並列
処理する際、各計算機ノードにおける処理負荷を動的に
均衡化させることにより、システム全体の処理効率を高
めることにある。
An object of the present invention is to dynamically balance the processing load on each computer node when a query is processed in parallel on a cluster system composed of a plurality of computer nodes, so that the processing of the entire system is performed. The goal is to increase efficiency.

【0011】[0011]

【課題を解決するための手段】本発明の問合せ並列処理
システムは、問合せ処理用の計算機ノードで、問合せを
解析して部分問合せに分解し、複数の部分問合せ処理用
の計算機ノードに部分問合せを配布して並列処理を行わ
せ、返却された部分問合せの結果をマージして問合せの
結果とする。この構成は、問合せを並列処理するための
基本構成である。
A query parallel processing system according to the present invention is a query processing computer node which analyzes a query, decomposes the query into partial queries, and sends the partial query to a plurality of partial query processing computer nodes. The distributed partial query is performed, and the result of the returned partial query is merged into a query result. This configuration is a basic configuration for processing queries in parallel.

【0012】本発明の問合せ並列処理システムでは、部
分問合せを部分問合せ処理用の計算機ノードに配布する
際、各計算機ノードへの配布数を随時決めて配布する。
この時、各計算機ノードの負荷を等しく保つために、例
えば、各計算機ノードで処理中になっている部分問合せ
の数が常に等しくなるように配布数を決める。配布数を
越えて余った未配布の部分問合せは、後に、何れかの計
算機ノードが結果を返してきた時などに、その計算機ノ
ードに処理させることになる。つまり、結果を返してき
た計算機ノードに対して、残っている部分問合せを処理
させ、計算機ノードが遊ばないようにする。以上が本発
明における負荷均衡化の基本的な考え方である。
In the query parallel processing system of the present invention, when distributing a partial query to computer nodes for partial query processing, the number of distributions to each computer node is determined and distributed as needed.
At this time, in order to keep the load on each computer node equal, for example, the distribution number is determined so that the number of partial queries being processed in each computer node is always equal. The undistributed partial query that exceeds the number of distributions will be processed by the computer node later when any computer node returns a result. That is, the computer node that has returned the result is processed for the remaining partial query, so that the computer node does not play. The above is the basic concept of load balancing in the present invention.

【0013】また、本発明の問合せ並列処理システムで
は、問合せ処理用の計算機ノードを複数化し、その計算
機ノードがボトルネックになることを防ぐ。この場合、
複数の計算機ノードで別々の問合せを受け、独立して各
問合せの部分問合せ配布処理を行う。この時の配布スト
ラテジは、単独の計算機ノードで問合せを受け付ける場
合と全く同様である。
In the query parallel processing system of the present invention, a plurality of query processing computer nodes are provided to prevent the computer nodes from becoming a bottleneck. in this case,
A plurality of computer nodes receive separate queries and independently perform partial query distribution processing for each query. The distribution strategy at this time is exactly the same as the case where an inquiry is received by a single computer node.

【0014】また、部分問合せ処理用の計算機ノードの
障害時には、その計算機ノードを検出し、その計算機ノ
ードに配布すべき部分問合せを別の部分問合せ処理用の
計算機ノードに配布し処理させる。これにより、部分問
合せ処理用の計算機ノードに障害が発生しても、全ての
部分問合せを処理し、問合せ結果を完全なものにするこ
とができる。
When a computer node for partial query processing fails, the computer node is detected, and a partial query to be distributed to the computer node is distributed to another computer node for partial query processing and processed. Thereby, even if a failure occurs in the computer node for partial query processing, all partial queries can be processed and the query result can be completed.

【0015】無共有型クラスタシステムでは、各部分問
合せ処理用の計算機ノードは自分に接続された二次記憶
装置にしかアクセスできない。従って、その二次記憶装
置に格納された部分データベースしかアクセスできな
い。そこで、各計算機ノードと、それがアクセスできる
部分データベースの対応関係を管理しておく。これによ
り、各計算機ノードに対し、そのノードが処理可能な部
分問合せを配布することができる。
In the non-shared type cluster system, each partial query processing computer node can access only the secondary storage device connected to itself. Therefore, only the partial database stored in the secondary storage device can be accessed. Therefore, the correspondence between each computer node and the partial database to which it can be accessed is managed. Thus, a partial query that can be processed by the node can be distributed to each computer node.

【0016】無共有型クラスタシステムでは、部分デー
タベースの原本と複製を別々の計算機ノード配下の二次
記憶装置に格納する。これによって、同じ部分データベ
ースに対して複数の計算機ノードからアクセス可能とな
る。つまり、同じ部分問合せを複数の計算機ノードで処
理可能となる。このことを利用すると、負荷の軽い側の
計算機ノードに部分問合せを処理させることが可能とな
り、これによって計算機ノードの負荷均衡化を行う。ま
た、これと同時に、計算機ノードの障害時にも、そのノ
ードに配布するべき問合せを別の計算機ノードに処理さ
せることが可能となる。
In the non-shared type cluster system, the original and the copy of the partial database are stored in the secondary storage devices under different computer nodes. As a result, the same partial database can be accessed from a plurality of computer nodes. That is, the same partial query can be processed by a plurality of computer nodes. By utilizing this fact, it becomes possible to cause the computer node on the light load side to process the partial query, thereby performing load balancing of the computer nodes. At the same time, even when a computer node fails, it is possible to cause another computer node to process a query to be distributed to that node.

【0017】[0017]

【発明の実施の形態】次に本発明の実施の形態について
図面を参照して詳細に説明する。
Embodiments of the present invention will now be described in detail with reference to the drawings.

【0018】本発明の第1の実施の形態の例について説
明する。第1の実施の形態は、複数の計算機ノードが二
次記憶装置を共有する共有型クラスタシステムの上で、
二次記憶装置に記録されたデータベースに対する問合せ
を並列に処理する問合せ並列処理システムに関するもの
で、その構成例を図1に示す。
An example of the first embodiment of the present invention will be described. The first embodiment is based on a shared cluster system in which a plurality of computer nodes share a secondary storage device,
FIG. 1 shows an example of the configuration of a query parallel processing system for processing queries to a database recorded in a secondary storage device in parallel.

【0019】図1を参照すると、問合せ処理用の複数の
計算機ノード1−1〜1−m及び部分問合せ処理用の複
数の計算機ノード2−1〜2−nが通信網4で接続さ
れ、計算機ノード間でデータの受け渡しができる。通信
網4としては、Ether やATM のHUB やスイッチ、その
他、専用結合ネットワークを利用することができる。
Referring to FIG. 1, a plurality of computer nodes 1-1 to 1-m for query processing and a plurality of computer nodes 2-1 to 2-n for partial query processing are connected by a communication network 4, and Data can be transferred between nodes. As the communication network 4, a hub or switch of Ether or ATM, or a dedicated connection network can be used.

【0020】問合せ処理用の計算機ノード1−1〜1−
mは、外部通信網5に接続されており、外部通信網5を
介して問合せを受け取ることができる。外部通信網5と
しては、LAN やWAN などを利用する。問合せとしては、
データの集合であるデータベースから、ある条件を与え
て一部のデータを引き出すような要求や、データの値の
平均値や最大値などの集計を行う要求、あるいは、ある
データの値に着目してグループ化したりソートを行う要
求がある。これら要求は、問合せ言語SQL などを使って
記述されて渡されたり、あるいは専用のキーワードのみ
を組み合わせて渡されたりする。
Computer nodes 1-1 to 1- for query processing
m is connected to the external communication network 5 and can receive an inquiry via the external communication network 5. As the external communication network 5, a LAN or WAN is used. As a query,
Focusing on requests to extract some data from a database that is a set of data under certain conditions, requests to aggregate the average or maximum value of data values, or focus on certain data values There are requests to group or sort. These requests are described and passed using a query language SQL or the like, or are passed by combining only dedicated keywords.

【0021】また、部分問合せ処理用の計算機ノード2
−1〜2−nは、二次記憶装置3−1〜3−jを共有す
る記憶装置共有網6に接続されており、これらのいずれ
の計算機ノード2−1〜2−nも二次記憶装置3−1〜
3−jにアクセスすることができる。記憶装置共有網6
としては、SCSIやFibreChanel のHUB やスイッチ、その
他、周辺装置用の専用ネットワークなどが用いられる。
問合せの対象となるデータベースは、複数の部分データ
ベース31に分割され、複数の二次記憶装置3−1〜3−
jに分散して格納される。データベースの分割方法は、
ラウンドロビン式分散配置、ハッシュ分割、キー値分割
等の方法がとられる。
A computer node 2 for partial query processing
-1 to 2-n are connected to a storage device sharing network 6 that shares the secondary storage devices 3-1 to 3-j, and any one of these computer nodes 2-1 to 2-n is also a secondary storage device. Apparatus 3-1
3-j can be accessed. Storage device sharing network 6
These include SCSI and FiberChanel HUBs and switches, as well as dedicated networks for peripheral devices.
The database to be queried is divided into a plurality of partial databases 31, and a plurality of secondary storage devices 3-1 to 3-
j and distributed. How to split the database
Methods such as round robin type distributed arrangement, hash division, and key value division are employed.

【0022】問合せ処理用の計算機ノード1−1〜1−
mは、それぞれ問合せ解析手段11と、障害検出手段12
と、配布数決定手段13と、問合せ統合処理手段14と、記
録媒体K1とを備えている。
Computer nodes 1-1 to 1- for query processing
m is a query analysis unit 11 and a failure detection unit 12
, A distribution number determination unit 13, an inquiry integration processing unit 14, and a recording medium K1.

【0023】問合せ解析手段11は、外部通信網5を介し
て送られてくる自計算機ノード宛の問合せを解析し、こ
の問合せを処理するための処理手順であって、問合せ対
象となるデータベースを構成する各部分データベースに
対する部分問合せ(部分データベースに対する検索要
求)を含む処理手順を導出する機能を有する。
The query analysis means 11 analyzes a query addressed to the own computer node transmitted via the external communication network 5, and is a processing procedure for processing the query. A function for deriving a processing procedure including a partial query (a search request for the partial database) for each partial database to be performed.

【0024】障害検出手段12は、部分問合せ処理用の計
算機ノード2−1〜2−nに障害が発生したことを検出
する機能を有する。
The failure detecting means 12 has a function of detecting that a failure has occurred in the computer nodes 2-1 to 2-n for partial query processing.

【0025】配布数決定手段13は、計算機ノード2−1
〜2−nに配布する部分問合せの数を各計算機ノード2
−1〜2−nの負荷に応じて動的に決定する機能を有す
る。
The number-of-distribution determining means 13 is a computer node 2-1.
2 to the number of partial queries distributed to each computer node 2
It has a function of dynamically determining according to loads of -1 to 2-n.

【0026】問合せ統合処理手段14は、問合せ解析手段
11で導出した処理手順に従って問合せの処理を進め、各
計算機ノード2−1〜2−nに対し部分問合せを配布す
る際には、配布数決定手段13を用いて決定した配布数だ
けの未配布の部分問合せを配布し、部分問合せの結果が
返却された際には、関連する結果をマージしながら問合
せの結果を導出する機能を有する。
The query integration processing means 14 is a query analysis means.
In accordance with the processing procedure derived in step 11, the query processing is advanced, and when distributing the partial query to each of the computer nodes 2-1 to 2-n, the undistributed number of distributions determined by the distribution number determination unit 13 is used. Is distributed, and when the result of the partial query is returned, a function of deriving the result of the query while merging the related results is provided.

【0027】計算機ノード1−1〜1−mが備えている
記録媒体K1は、ディスク,半導体メモリ,その他の記
録媒体であり、計算機ノード1−1〜1−mを問合せ処
理用の計算機ノードとして機能させるためのプログラム
が記録されている。このプログラムは、計算機ノード1
−1〜1−mによって読み取られ、計算機ノード1−1
〜1−mの動作を制御することで、計算機ノード1−1
〜1−m上に、問合せ解析手段11,障害検出手段12,配
布数決定手段13, 問合せ統合処理手段14を実現する。
The recording medium K1 provided in the computer nodes 1-1 to 1-m is a disk, a semiconductor memory, or another recording medium. The computer nodes 1-1 to 1-m are used as computer nodes for query processing. A program for functioning is recorded. This program runs on computer node 1
-1 to 1-m and read by computer node 1-1
1-m, the computer node 1-1
A query analysis unit 11, a failure detection unit 12, a distribution number determination unit 13, and a query integration processing unit 14 are realized on .about.1-m.

【0028】部分問合せ処理用の計算機ノード2−1〜
2−nは、それぞれ部分問合せ処理手段21と、記録媒体
K2とを備えている。
Computer nodes 2-1 to 2-1 for partial query processing
2-n includes a partial inquiry processing means 21 and a recording medium K2.

【0029】部分問合せ処理手段21は、問合せ処理用の
計算機ノード1−1〜1−mから配布された部分問合せ
を受け、その部分問合せの処理を行い、配布元の計算機
ノードに結果を返す機能を有する。
The partial query processing means 21 receives the partial query distributed from the query processing computer nodes 1-1 to 1-m, processes the partial query, and returns the result to the distribution source computer node. Having.

【0030】計算機ノード2−1〜2−nが備えている
記録媒体K2は、ディスク,半導体メモリ,その他の記
録媒体であり、計算機ノード2−1〜2−nを部分問合
せ処理用の計算機ノードとして機能させるためのプログ
ラムが記録されている。このプログラムは、計算機ノー
ド2−1〜2−nによって読み取られ、計算機ノード2
−1〜2−nの動作を制御することで、計算機ノード2
−1〜2−n上に部分問合せ処理手段21を実現する。
The recording medium K2 provided in the computer nodes 2-1 to 2-n is a disk, a semiconductor memory, or another recording medium. The computer nodes 2-1 to 2-n are used as computer nodes for partial query processing. A program for functioning as a program is recorded. This program is read by the computer nodes 2-1 to 2-n,
By controlling the operations of −1 to 2-n, the computer node 2
The partial query processing means 21 is realized on -1 to 2-n.

【0031】次に、本実施の形態の動作について説明す
る。
Next, the operation of this embodiment will be described.

【0032】外部通信網5に接続される計算機ノード1
−k(1≦k≦m)で動作する問合せ解析手段11は、外
部通信網5を介して投入された自計算機ノード宛の問合
せを受け付けると、図2の流れ図に示すように、その意
味を解析し、処理対象となるデータベースに対する処理
ステップを含む、問合せの結果を求めるための処理手順
を導出する(A1)。例えば、図3(a)に示すような
問合せに対し同図(b)に示すような複数のステップか
ら構成されるツリー状の処理手順が求められる。この例
の場合、処理対象となるデータベースが2個であるの
で、データベースに対する処理ステップが2個含まれ
る。同図(b)はあくまで一例であり、A1で導出され
る処理手順は、問合せに応じたものになる。例えば、デ
ータベース1,2から取り出したデータを結合し、グル
ープ化する場合には、同図(b)に示したソート処理の
代わりにグループ化処理を行う処理手順が導出される。
Computer node 1 connected to external communication network 5
When the query analysis means 11 operating at −k (1 ≦ k ≦ m) receives the query addressed to the own computer node input via the external communication network 5, as shown in the flowchart of FIG. An analysis is performed to derive a processing procedure for obtaining a query result, including a processing step for a database to be processed (A1). For example, for a query as shown in FIG. 3A, a tree-like processing procedure including a plurality of steps as shown in FIG. 3B is required. In this example, since there are two databases to be processed, two processing steps for the databases are included. FIG. 8B is merely an example, and the processing procedure derived in A1 is in response to an inquiry. For example, in a case where data extracted from the databases 1 and 2 are combined and grouped, a processing procedure for performing a grouping process instead of the sorting process illustrated in FIG.

【0033】次に、問合せ解析手段11は、各データベー
スに対する処理ステップを、そのデータベースを構成す
る各部分データベースに対する処理ステップ(部分問合
せ)に分割すると共に、同一データベースに対する部分
問合せの集合毎に、部分問合せの結果をマージする処理
ステップを追加する(A2)。ここで、1つのデータベ
ースに対する部分問合せの集合を部分問合せのセットと
呼ぶこととする。処理対象となるデータベースが複数あ
った場合、各データベースについて部分問合せのセット
が1つずつ作成される。例えば、図3(b)に示すよう
な処理手順から同図(c)のような処理手順が作成され
る。この例では、1つの問合せで2つのデータベースを
対象とするため、部分問合せの組が2セット作られてい
る。また、1つの部分問合せのセットに含まれる部分問
合せの数は、部分問合せがデータベースを構成する各デ
ータベース毎に作成されることから、対応するデータベ
ースを構成する部分データベースの数と同じになる。
Next, the query analysis means 11 divides the processing steps for each database into processing steps (partial queries) for each of the partial databases constituting the database, and divides the processing steps for each set of partial queries for the same database. A processing step for merging the results of the query is added (A2). Here, a set of partial queries for one database is called a set of partial queries. When there are a plurality of databases to be processed, one set of partial queries is created for each database. For example, a processing procedure as shown in FIG. 3C is created from a processing procedure as shown in FIG. In this example, two sets of partial queries are created because one query targets two databases. In addition, the number of partial queries included in one set of partial queries is the same as the number of partial databases configuring the corresponding database since the partial queries are created for each database configuring the database.

【0034】問合せ解析手段11において、問合せに対す
る処理手順が導出されると、問合せ統合処理手段14は、
図4の流れ図に示すように、問合せ解析手段11から処理
手順を入手して保存し、その処理手順中に部分問合せの
セットが存在するか否かを判断する(B1,B2)。問
合せ解析手段11から処理手順を入手した時点において
は、部分問合せのセットが存在し、B2の判断結果がy
esとなるので、問合せ統合処理手段14は、B3の処理
を行う。
When the query analysis means 11 derives the processing procedure for the query, the query integration processing means 14
As shown in the flowchart of FIG. 4, the processing procedure is obtained from the query analysis means 11 and stored, and it is determined whether or not a set of partial queries exists in the processing procedure (B1, B2). At the time when the processing procedure is obtained from the query analysis means 11, a set of partial queries exists, and the determination result of B2 is y
Since the answer is es, the query integration processing means 14 performs the process of B3.

【0035】B3において、問合せ統合処理手段14は、
処理手順に含まれている部分問合せのセット間の依存関
係を解析し、配布可能な部分問合せを認識する。例え
ば、2つの部分問合せのセットが存在し、両者が処理の
依存関係のない独立なセットになっている場合は、2つ
のセットに含まれる全ての部分問合せを配布可能な部分
問合せとして認識する。また、例えば、2つの部分問合
せのセットS1,S2が存在し、セットS2の処理には
セットS1の処理結果が必要になるという依存関係が存
在する場合には、セットS1に含まれる部分問合せのみ
を配布可能な部分問合せとして認識する。
In B3, the query integration processing means 14
Analyze dependencies between sets of partial queries included in the processing procedure, and recognize distributable partial queries. For example, if there are two sets of partial queries and they are independent sets with no processing dependency, all partial queries included in the two sets are recognized as distributable partial queries. For example, if there are two sets of partial queries S1 and S2 and there is a dependency relationship that the processing of the set S2 requires the processing result of the set S1, only the partial queries included in the set S1 Is recognized as a distributable partial query.

【0036】その後、問合せ統合処理手段14は、部分問
合せ処理用の計算機ノード2−1〜2−nの内の、ノー
ド番号「0」が付与されている計算機ノードを部分問合
せの配布対象の計算機ノードとする(B4)。尚、本実
施の形態では、計算機ノード2−1〜2−nにそれぞれ
ノード番号「0」〜「n−1」が付与されているものと
する。
Thereafter, the query integration processing means 14 assigns the computer node to which the node number "0" is assigned among the computer nodes 2-1 to 2-n for the partial query processing to the computer to which the partial query is to be distributed. A node (B4). In the present embodiment, it is assumed that the node numbers “0” to “n−1” are assigned to the computer nodes 2-1 to 2-n, respectively.

【0037】次に、問合せ統合処理手段14は、配布数決
定手段13を用いてノード番号「0」の計算機ノード2−
1への部分問合せの配布数を決定する(B6)。その
際、各計算機ノード2−1〜2−nで処理中となる部分
問合せの数が計算機ノード間で等しくなるように配布数
を決定する。
Next, the query integration processing means 14 uses the distribution number determination means 13 to execute the computer node 2 having the node number “0”.
The number of distributions of the partial query to 1 is determined (B6). At this time, the distribution number is determined so that the number of partial queries being processed in each of the computer nodes 2-1 to 2-n is equal among the computer nodes.

【0038】このB6の処理を詳細に説明する。問合せ
統合処理手段14は、計算機ノード2−1への部分問合せ
の配布数を決定する際、配布数決定手段13に対して配布
対象にしている計算機ノード2−1のノード番号「0」
を渡す。
The processing of B6 will be described in detail. When determining the number of partial queries to be distributed to the computer node 2-1, the query integration processing means 14 sends the node number "0" of the computer node 2-1 to be distributed to the number-of-distribution determining means 13.
give.

【0039】配布数決定手段13は、問合せ統合処理手段
14からノード番号「0」が渡されると(図5,C1)、
進捗管理表を参照し、計算機ノード2−1から結果が返
却されていない部分問合せの数(結果未返却数)を取得
する(C2)。
The number-of-distribution determining means 13 is a query integration processing means.
When the node number “0” is passed from 14 (FIG. 5, C1),
Referring to the progress management table, the number of partial queries for which no result has been returned from the computer node 2-1 (the number of results not returned) is acquired (C2).

【0040】進捗管理表は、各計算機ノード2−1〜2
−nの結果未返却数および各計算機ノード2−1〜2−
nから結果が返却されていない配布済みの部分問合せを
管理するものであり、例えば、図6に示す構成を有す
る。この図6に示す進捗管理表には、部分問合せ処理用
の計算機ノード2−1〜2−nのノード番号「0」〜
「n−1」に対応付けて、計算機ノード2−1〜2−n
の結果未返却数と、計算機ノード2−1〜2−nから結
果が返却されていない部分問合せのIDとが登録されて
いる。尚、結果返却数,部分問合せIDは、問合せ統合
処理手段14によって変更されるものである。
The progress management table contains the computer nodes 2-1 to 2
-N result unreturned number and each computer node 2-1 to 2-
It manages distributed partial queries for which no result has been returned from n, and has, for example, the configuration shown in FIG. The progress management table shown in FIG. 6 includes the node numbers “0” to “0” of the computer nodes 2-1 to 2-n for the partial query processing.
In correspondence with “n−1”, the computer nodes 2-1 to 2-n
Are registered, and the IDs of partial queries for which no results have been returned from the computer nodes 2-1 to 2-n are registered. The number of returned results and the partial query ID are changed by the query integration processing means 14.

【0041】C2において、計算機ノード2−1の結果
未返却数を取得すると、配布数決定手段13は、「結果未
返却数<目標配布数」なる条件が満たされているか否か
を判断する(C3)。ここで、目標配布数は、各計算機
ノード2−1〜2−nで処理中の、計算機ノード1−k
からの部分問合せの個数を所定の個数に揃えるために計
算機ノード1−kにおいて設定されている値であり、部
分問合せの個数を例えば2個に揃える場合には、目標配
布数は「2」となる。そして、C3において条件が満た
されていると判断した場合(判断結果がyes)は、
「目標配布数−結果未返却数」なる演算を行って配布数
を求め、求めた配布数を問合せ統合処理手段14に通知す
る(C4)。これに対して、条件が満たされていないと
判断した場合(C3がno)は、配布数=「0」を問合
せ統合処理手段14に通知する(C5)。問合せ統合処理
手段14は、配布数決定手段13から配布数が通知される
と、その値を計算機ノード2−1に対する部分問合せの
配布数と決定する。以上がB6で行う処理である。
In C2, when the number of unreturned results of the computer node 2-1 is acquired, the number-of-distribution determining means 13 determines whether or not the condition of “number of unreturned results <target number of distributions” is satisfied (see FIG. 2). C3). Here, the target number of distributions is the computer node 1-k being processed by each of the computer nodes 2-1 to 2-n.
Is a value set in the computer node 1-k so as to make the number of partial queries from a predetermined number, and when the number of partial queries is made to be, for example, two, the target distribution number is “2”. Become. When it is determined that the condition is satisfied in C3 (the determination result is yes),
The number of distributions is obtained by performing an operation of "target distribution number-result unreturned number", and the obtained distribution number is notified to the inquiry integration processing means 14 (C4). On the other hand, when it is determined that the condition is not satisfied (C3 is no), the number of distributions = “0” is notified to the inquiry integration processing means 14 (C5). When the number of distributions is notified from the number-of-distribution determining means 13, the query integration processing means 14 determines the value as the number of partial queries distributed to the computer node 2-1. The above is the process performed in B6.

【0042】そして、B6で決定した計算機ノード2−
1に対する部分問合せの配布数が「0」よりも大きく、
且つ未配布の配布可能な部分問合せが存在する場合(B
7,B8が共にyes)は、TCP,UDP/IPなどの汎用的な
通信プロトコル、あるいは各種専用通信プロトコルを利
用して、未配布の配布可能な部分問合せの内の1つを計
算機ノード2−1へ配布すると共に、上記配布した部分
問合せを配布可能と認識している部分問合せから除外し
(B10)、更に、配布数を−1すると共に進捗管理表中
の計算機ノード2−1についての管理情報を更新する
(B11)。例えば、進捗管理表が図6に示す構成を有す
る場合は、ノード番号「0」に対応付けて登録されてい
る計算機ノード2−1の結果未返却数を+1すると共
に、今回計算機ノード2−1に配布した部分問合せのI
Dをノード番号「0」に対応付けて登録する。問合せ統
合処理手段14は、B6で決定した数の部分問合せを計算
機ノード2−1に配布するか、或いは未配布の部分問合
せが存在しなくまるまで(B7がnoとなるか、或いは
B8がnoとなるまで)、上記した処理B7〜B11を繰
り返し行う。
Then, the computer node 2- determined in B6
The number of partial queries distributed to 1 is greater than "0",
In addition, when there is an undistributed partial query that can be distributed (B
7 and B8 are both YES), a general-purpose communication protocol such as TCP, UDP / IP, or various dedicated communication protocols is used, and one of the undistributable distributable partial queries is sent to the computer node 2-. 1, the distributed partial query is excluded from the partial queries recognized as being distributable (B10), the number of distributions is reduced by one, and the computer node 2-1 in the progress management table is managed. The information is updated (B11). For example, when the progress management table has the configuration shown in FIG. 6, the number of unreturned results of the computer node 2-1 registered in association with the node number “0” is incremented by one, and the current computer node 2-1 is also updated. I of the partial query distributed to
D is registered in association with the node number “0”. The query integration processing means 14 distributes the number of partial queries determined in B6 to the computer node 2-1, or until the undistributed partial queries no longer exist (B7 becomes no, or B8 becomes no). The above-described processes B7 to B11 are repeated.

【0043】そして、B7或いはB8がnoとなると、
問合せ統合処理手段14は、ノード番号を+1し、計算機
ノード2−2を部分問合せの配布対象の計算機ノードに
する(B9)。以下、問合せ対象統合処理手段14は、
「ノード番号<ノード数」となるまで(B5がnoとな
るまで)、上記した処理B5〜B11を繰り返し行う。
そして、B5の判断結果がnoとなると、問合せ統合処
理手段14は、待ち状態となる。以上の処理により、計算
機ノード1−kから各計算機ノード2−1〜2−nへ、
目標配布数によって示される個数の部分問合せが配布さ
れる。但し、配布可能な部分問合せの数が、「目標配布
数×計算機ノード2−1〜2−nの台数」よりも少ない
場合は、計算機ノード2−1〜2−nの内の、一部の計
算機ノードのみに目標配布数によって示される個数の部
分問合せが配布されることになる。
When B7 or B8 becomes no,
The query integration processing means 14 increments the node number by 1, and sets the computer node 2-2 as the computer node to which the partial query is to be distributed (B9). Hereinafter, the inquiry target integration processing means 14
The above-described processes B5 to B11 are repeated until “node number <number of nodes” (until B5 becomes no).
When the result of the determination at B5 is no, the inquiry integration processing means 14 enters a waiting state. By the above processing, the computer nodes 1-k to each of the computer nodes 2-1 to 2-n
The number of partial queries indicated by the target number of distributions is distributed. However, if the number of partial queries that can be distributed is smaller than “target distribution number × the number of computer nodes 2-1 to 2-n”, some of the computer nodes 2-1 to 2-n The number of partial queries indicated by the target number of distributions is distributed only to the computer nodes.

【0044】一方、計算機ノード2−1〜2−n内の部
分問合せ処理手段21は、計算機ノード1−kから部分問
合せが送られてくると、その部分問合せによって指示さ
れた部分データベース31から、部分問合せによって指定
された条件を満たすデータを取り出し、取り出したデー
タを問合せ元の計算機ノード1−kに返却する。その
際、処理した部分問合せのID及び自計算機ノードのノ
ード番号も併せて返却する。
On the other hand, when a partial query is sent from the computer node 1-k, the partial query processing means 21 in the computer nodes 2-1 to 2-n, based on the partial database 31 designated by the partial query, Data that satisfies the conditions specified by the partial query is extracted, and the extracted data is returned to the query source computer node 1-k. At this time, the ID of the processed partial query and the node number of the own computer node are also returned.

【0045】計算機ノード1−k内の問合せ統合処理手
段14は、計算機ノード2−i(1≦i≦n)から部分問
合せの結果,部分問合せのID及びノード番号が返却さ
れると(図4,B13)、今回返却された結果により、結
果を全て入手したことになる部分問合せのセットが存在
するか否かを調べる(B14)。
The query integration processing means 14 in the computer node 1-k returns the partial query ID and node number as a result of the partial query from the computer node 2-i (1 ≦ i ≦ n) (FIG. 4). , B13), based on the result returned this time, it is checked whether or not there is a partial query set for which all results have been obtained (B14).

【0046】そして、そのような部分問合せのセットが
存在しないと判断した場合(B14がno)は、結果を返
却した計算機ノード2−iのノード番号を取得し、配布
数決定手段13により上記計算機ノード2−iへの部分問
合せの配布数を決定する(B16, B17)。このB17の処
理は、B6と同様の処理である。
If it is determined that such a partial query set does not exist (B14 is no), the node number of the computer node 2-i that has returned the result is obtained, and The number of partial queries distributed to the node 2-i is determined (B16, B17). The processing of B17 is the same processing as B6.

【0047】計算機ノード2−iへの部分問合せの配布
数を決定すると、問合せ統合処理手段14は、B17で決定
した配布数の部分問合せを計算機ノード2−iに配布す
るか、或いは未配布の配布可能な部分問合せが存在しな
くなるまで(B18がnoとなるか、或いはB19がnoと
なるまで)、部分問合せを計算機ノード2−iに配布し
て配布した部分問合せを配布可能と認識している部分問
合せから除外する処理(B20)と、配布数を−1し進捗
管理表を更新する処理(B21)を繰り返し行う。ここ
で、例えば、進捗管理表が図6に示す構成を有する場合
には、計算機ノード2−iのノード番号「i−1」に対
応付けて登録されている結果未返却数を−1する処理お
よびノード番号「i−1」に対応付けて登録されている
部分問合せのIDの内の、計算機2−iから返却された
IDを削除する処理を行う。B18或いはB19の判断結果
がnoとなった場合は、問合せ統合処理手段14は待ち状
態になる。
After determining the number of partial queries to be distributed to the computer node 2-i, the query integration processing means 14 distributes the partial queries with the number of distributions determined in B17 to the computer node 2-i, or Until there is no more partial query that can be distributed (until B18 becomes no or B19 becomes no), the partial query is distributed to the computer node 2-i, and the distributed partial query is recognized as being distributeable. The process (B20) of excluding from the partial queries that are present and the process (B21) of updating the progress management table by subtracting the number of distributions by one are repeated. Here, for example, when the progress management table has the configuration shown in FIG. 6, the process of subtracting -1 from the number of unreturned results registered in association with the node number "i-1" of the computer node 2-i. Then, of the partial query IDs registered in association with the node number “i−1”, the ID returned from the computer 2-i is deleted. If the result of the determination at B18 or B19 is no, the query integration processing means 14 enters a waiting state.

【0048】また、B14において、今回返却された結果
により、結果を全て入手したことになる部分問合せのセ
ットが存在すると判断した場合(判断結果がyes)
は、保存してある処理手順から、結果を全て入手した部
分問合せのセットを除去し(B15)、その後、B2の処
理を行う。
Also, in B14, when it is determined from the result returned this time that there is a set of partial queries for which all results have been obtained (determination result is yes)
Removes the set of partial queries for which all results have been obtained from the stored processing procedure (B15), and then performs the processing of B2.

【0049】そして、B2において、保存してある処理
手順中に部分問合せのセットが存在すると判断した場合
(判断結果がyes)は、B3の処理を行い、部分問合
せのセットが存在しないと判断した場合(判断結果がn
o)は、部分問合せよりルート側の処理をルートに向か
って順次行い、問合せに対する結果を外部通信網5を介
して問合せ元に返却する(B12)。例えば、B1で入
手した処理手順が図3(c)に示すものである場合は、
図7に示すように、2つの部分問合せのセットについて
結果を全て入手したら、各部分問合せのセットについて
結果をマージする処理を行い、更に、マージ結果を結合
する処理,結合結果をソートする処理を順次行う。尚、
本実施の形態では、部分問合せの結果を全て入手してか
らマージを行うようにしたが、結果が返却される毎に1
つずつマージしていく方法もある。例えば、平均値や合
計値などを、問合せに対する結果として求める場合、部
分問合せの結果が戻る度にセット毎に結果を足し込んで
いく。これにより、処理手順の各ステップをパイプライ
ン的に処理していくことになる。
If it is determined in B2 that the set of partial queries exists in the stored processing procedure (the determination result is yes), the process of B3 is performed, and it is determined that the set of partial queries does not exist. Case (judgment result is n
In o), processing on the root side is sequentially performed from the partial inquiry toward the root, and the result of the inquiry is returned to the inquiry source via the external communication network 5 (B12). For example, if the processing procedure obtained in B1 is as shown in FIG.
As shown in FIG. 7, when all the results are obtained for two sets of partial queries, a process for merging the results for each set of partial queries is performed, and a process for combining the merged results and a process for sorting the combined results are performed. Perform sequentially. still,
In the present embodiment, merging is performed after all the results of the partial query are obtained.
There is a way to merge them one by one. For example, when an average value, a total value, or the like is obtained as a result for a query, the result is added for each set each time the result of the partial query returns. As a result, each step of the processing procedure is processed in a pipeline manner.

【0050】以上のように、問合せ統合処理手段14は、
問合せ解析手段11から処理手順を入手した場合(図4,
B1)、予め定められている目標配布数の部分問合せを
各計算機ノード2−1〜2−nに配布し(B5〜B1
1)、残った部分問合せは、未配布としておく。未配布
となった部分問合せは、後に、部分問合せの結果を早く
返却してきた計算機ノードに投げる(B16〜B21)。つ
まり、部分問合せの処理が早く終わって負荷の軽くなっ
た計算機ノードに未配布の部分問合せを配布することに
なる。
As described above, the query integration processing means 14
When the processing procedure is obtained from the query analysis means 11 (FIG. 4,
B1), a partial query of a predetermined target distribution number is distributed to each of the computer nodes 2-1 to 2-n (B5 to B1).
1) The remaining partial queries are not distributed. The non-distributed partial query is later thrown to the computer node that has returned the result of the partial query early (B16 to B21). In other words, the partial query that has not been distributed is distributed to the computer node whose load has been reduced due to the completion of the processing of the partial query.

【0051】以上によって各計算機ノード2−1〜2−
nで処理中の部分問合せの個数は、ある一定個数以下に
保たれる。従って、多数の部分問合せが発生するような
状況では、各計算機ノードで処理中の部分問合せの個数
は、常にある一定個数に保たれる。これによって各計算
機ノードの負荷が均衡化される。
As described above, each of the computer nodes 2-1 to 2-
The number of partial queries being processed at n is kept below a certain number. Therefore, in a situation where a large number of partial queries occur, the number of partial queries being processed in each computer node is always kept at a certain fixed number. As a result, the load on each computer node is balanced.

【0052】次に、各計算機ノード2−1〜2−nで独
立に動作する部分問合せ処理手段21の実施例を図8に示
す。図8(a)に示す実施例では、配布された部分問合
せを溜めておくキューを持ち、そこから1つずつ部分問
合せ処理部に取り出して順番に処理する。処理された部
分問合せの結果は、部分問合せ処理部から配布元の計算
機ノードに返却する。
Next, FIG. 8 shows an embodiment of the partial query processing means 21 which operates independently in each of the computer nodes 2-1 to 2-n. In the embodiment shown in FIG. 8A, there is a queue for storing the distributed partial queries, from which the partial queries are taken out one by one to the partial query processing unit and processed sequentially. The result of the processed partial query is returned from the partial query processing unit to the distribution source computer node.

【0053】これに対し、図8(b)は、複数の部分問
合せを多重的に処理する実施例を示す。マルチスレッド
もしくは、マルチプロセスを利用することにより、部分
問合せ処理部を複数同時に動作させ、配布された各部分
問合せを各部分問合せ処理部に割り付ける。各部分問合
せ処理部は、計算機ノードのOSのスケジューリングに従
い、多重的に動作する。例えば、部分問合せ処理部が、
部分データベースを一定サイズのブロック単位で二次記
憶装置3−1〜3−jから読み出す処理と、読み出した
ブロックのデータに対し検索・演算を施す処理で構成さ
れる場合、複数の部分問合せ処理部は、互いに二次記憶
装置3−1〜3−jの入出力処理と計算機ノードにおけ
るCPU 処理とが時間的に重ねられて処理される。
On the other hand, FIG. 8B shows an embodiment in which a plurality of partial queries are processed in a multiplex manner. By using a multi-thread or a multi-process, a plurality of partial query processing units are simultaneously operated, and each distributed partial query is allocated to each partial query processing unit. Each partial query processing unit operates multiplexly according to the scheduling of the OS of the computer node. For example, the partial query processing unit
In the case where the partial database is composed of a process of reading a partial database from the secondary storage devices 3-1 to 3-j in blocks of a fixed size and a process of performing a search / operation on the data of the read block, a plurality of partial query processing units In this case, the input / output processing of the secondary storage devices 3-1 to 3-j and the CPU processing in the computer node are temporally overlapped and processed.

【0054】部分問合せ処理手段21は、図8(a)にお
けるキューを図8(b)に組み合わせたものも考えられ
る。
The partial inquiry processing means 21 may be a combination of the queue shown in FIG. 8A and the queue shown in FIG. 8B.

【0055】次に、部分問合せ処理用の計算機ノード2
−1〜2−nに障害が発生した場合の動作を説明する。
Next, computer node 2 for partial query processing
The operation when a failure occurs in -1 to 2-n will be described.

【0056】問合せ処理用の計算機ノード1−k内の障
害検出手段12は、部分問合せ処理用の計算機ノード2−
1〜2−nに障害が発生したことを検出するために、図
9に流れ図に示すように、各計算機ノード2−1〜2−
nの状態を監視している(D1)。この監視は、例え
ば、通信網4を介して各計算機ノード2−1〜2−nと
定期的に小さなデータを交換することにより行う。つま
り、データ交換を正常に行うことができた場合は、障害
が発生していないと判断し、データ交換が不能になった
場合は、障害が発生していると判断する。また、計算機
ノード2−1〜2−nにハードウェアによって構成され
る専用の障害診断機構を設け、障害が発生した場合、計
算機2−1〜2−nの障害診断機構が通信網4を介して
障害発生を計算機ノード1−1〜1−nに通知するよう
にしても良い。
The failure detecting means 12 in the query processing computer node 1-k is provided with a partial query processing computer node 2-k.
In order to detect that a failure has occurred in each of the computer nodes 2-1 to 2-n, as shown in the flowchart of FIG.
The state of n is monitored (D1). This monitoring is performed, for example, by periodically exchanging small data with each of the computer nodes 2-1 to 2-n via the communication network 4. That is, when data exchange can be performed normally, it is determined that no failure has occurred, and when data exchange has been disabled, it is determined that a failure has occurred. In addition, a dedicated failure diagnosis mechanism configured by hardware is provided in each of the computer nodes 2-1 to 2-n, and when a failure occurs, the failure diagnosis mechanism of each of the computers 2-1 to 2-n is connected via the communication network 4. The occurrence of a failure may be notified to the computer nodes 1-1 to 1-n.

【0057】計算機ノード1−k内の障害検出手段12
は、例えば、計算機ノード2−1に障害が発生したこと
を検出すると、先ず、計算機ノード2−1のノード番号
「0」を入手する(D2)。その後、障害検出手段12
は、進捗管理表からノード番号「0」の計算機ノード2
−1に配布済みの部分問合せであって、結果が返却され
ていない部分問合せのIDを取得し(D3)、更に、進
捗管理表から障害の発生した計算機ノードのノード番号
「0」の行を削除し、計算機ノード2−1を部分問合せ
の配布対象から除外する(D4)。例えば、進捗管理表
の内容が図6に示すものであった場合、障害検出手段12
は、部分問合せのIDとして「ID1,ID2」を取得
し(D3)、進捗管理表の第1行目を削除する(D
4)。その後、障害検出手段13は、問合せ統合処理手段
14に対してD3で取得した部分問合せのIDを通知する
(D5)。尚、図9の流れ図では、進捗管理表から障害
の発生した計算機ノードのノード番号の行を削除するこ
とにより、障害の発生した計算機ノードを部分問合せの
配布対象から除外するようにしたが、除外を示すマーク
を付けるような方法をとることもできる。
Failure detection means 12 in computer node 1-k
For example, upon detecting that a failure has occurred in the computer node 2-1, first obtains the node number "0" of the computer node 2-1 (D2). Then, the failure detection means 12
Is the computer node 2 with the node number “0” from the progress management table
In step D3, the ID of the partial query that has been distributed to -1 and for which the result has not been returned is acquired. Further, the row of the node number “0” of the failed computer node is obtained from the progress management table. Then, the computer node 2-1 is deleted from the distribution target of the partial query (D4). For example, when the contents of the progress management table are as shown in FIG.
Acquires “ID1, ID2” as the ID of the partial query (D3), and deletes the first line of the progress management table (D
4). After that, the failure detecting means 13
14 is notified of the ID of the partial query acquired in D3 (D5). In the flowchart of FIG. 9, the row of the node number of the failed computer node is deleted from the progress management table, thereby excluding the failed computer node from the distribution target of the partial query. It is also possible to take a method of attaching a mark indicating "."

【0058】問合せ統合処理手段14は、障害検出手段12
から部分問合せのIDが通知されると、その部分問合せ
を未配布の部分問合せとして認識する。このように、障
害の発生した計算機ノードに配布済みの部分問合せであ
って、結果が返却されていない部分問合せを未配布の部
分問合せとして認識することにより、図4のB20にお
いてそれらが障害の発生していない部分問合せ処理用の
計算機ノードの何れかに配布される。二次記憶装置3−
1〜3−jが記憶装置共有網6で接続された共有型クラ
スタシステムでは、各計算機ノード2−1〜2−nは、
記憶装置共有網6を介して何れの部分データベース31に
もアクセス可能なので、ある計算機ノードに配布するこ
とになっていた部分問合せを別の計算機ノードでも処理
できる。従って、障害の起きている計算機ノードに配布
している部分問合せを他の正常な計算機ノードに配布す
ることによって、全ての部分問合せを処理することがで
きる。
The query integration processing means 14 is
Is notified of the ID of the partial query, the partial query is recognized as an undistributed partial query. In this way, by recognizing the partial queries that have been distributed to the failed computer node and have not returned the results as the undistributed partial queries, they are recognized as having failed in B20 in FIG. It is distributed to any of the computer nodes for partial query processing that have not been performed. Secondary storage device 3-
In a shared cluster system in which 1 to 3-j are connected by the storage device shared network 6, each of the computer nodes 2-1 to 2-n
Since any of the partial databases 31 can be accessed via the storage device shared network 6, a partial query to be distributed to a certain computer node can be processed by another computer node. Therefore, all partial queries can be processed by distributing the partial queries distributed to the failed computer node to other normal computer nodes.

【0059】次に、本発明の第2の実施の形態の例につ
いて説明する。第2の実施の形態は、複数の計算機ノー
ドそれぞれにその計算機ノードだけがアクセスできる二
次記憶装置が接続された無共有型クラスタシステムの上
で、二次記憶装置に記録されたデータベースに対する問
合せを並列に処理する問合せ並列処理システムに関する
もので、その構成例を図10に示す。
Next, an example of the second embodiment of the present invention will be described. In the second embodiment, an inquiry to a database recorded in a secondary storage device is performed on a non-shared type cluster system in which a secondary storage device accessible only by the computer node is connected to each of a plurality of computer nodes. FIG. 10 shows an example of the configuration of a query parallel processing system for processing in parallel.

【0060】本実施の形態と図1に示した第1の実施の
形態との相違点は、計算機ノード1−1〜1−mの代わ
りに計算機ノード10−1〜10−mを備えた点と、記憶装
置共有網がなく各計算機ノード2−1〜2−nのそれぞ
れに二次記憶装置30−1〜30−nが直接接続されている
点と、記録媒体K1の代わりに記録媒体K3を備えてい
る点である。
The difference between this embodiment and the first embodiment shown in FIG. 1 is that computer nodes 10-1 to 10-m are provided instead of computer nodes 1-1 to 1-m. And that the secondary storage devices 30-1 to 30-n are directly connected to the respective computer nodes 2-1 to 2-n without the storage device sharing network, and that the storage medium K3 is used instead of the storage medium K1. It is a point that has.

【0061】問合せの対象となるデータベースは、複数
の部分データベース31に分割され、複数の二次記憶装置
30−1〜30−nに分散して格納される。更に、各部分デ
ータベースの複製が、原本と異なる二次記憶装置に分散
して格納される。
The database to be queried is divided into a plurality of partial databases 31 and a plurality of secondary storage devices.
30-1 to 30-n. Further, copies of the respective partial databases are distributed and stored in a secondary storage device different from the original.

【0062】計算機ノード10−1〜10−mは、問合せ統
合処理手段14の代わりに問合せ統合処理手段14aを備え
ている点と、格納状況管理手段15を備えている点が図1
に示した計算機ノード1−1〜1−mと相違している。
Each of the computer nodes 10-1 to 10-m is provided with a query integration processing means 14a instead of the query integration processing means 14 and a storage status management means 15 in FIG.
Are different from the computer nodes 1-1 to 1-m shown in FIG.

【0063】格納状況管理手段15は、部分問合せ処理用
の計算機ノード2−1〜2−nがアクセス可能な部分デ
ータベースのIDを管理し、問合せ統合処理手段14aか
ら計算機ノード2−1〜2−nのノード番号が通知され
た場合、通知されたノード番号の計算機ノードがアクセ
ス可能な部分データベースのIDのリストを返却する機
能を有する。各計算機ノード2−1〜2−nがアクセス
可能な部分データベース31のIDの管理は、例えば、図
11に示すような格納状況管理表を使用して行う。格納
状況管理表には、計算機ノード2−1〜2−nのノード
番号「0」〜「n−1」に対応付けてそのノード番号の
計算機ノードがアクセス可能な部分データベースのID
が登録されている。図11の例は、ノード番号「0」の
計算機ノード2−1は、ID「A−0,A−4,A−
8,B−1,B−5,…」によって示される部分データ
ベースの原本と、ID「A−2,A−6,A−10,B−
0,B−4,…」によって示される部分データベースの
複製をアクセスできること示している。この複製は、ノ
ード番号「1」の計算機ノード2−2がアクセスできる
部分データベースの原本の複製である。また、部分デー
タベースのIDは、A,B等のデータベースのIDと、
その中での部分データベースの順番とを組み合わせたも
のになっている。
The storage status management means 15 manages the IDs of the partial databases accessible by the computer nodes 2-1 to 2-n for the partial query processing. When the node number of n is notified, it has a function of returning a list of IDs of partial databases accessible by the computer node of the notified node number. The management of the ID of the partial database 31 accessible to each of the computer nodes 2-1 to 2-n is performed using, for example, a storage status management table as shown in FIG. In the storage status management table, the IDs of the partial databases that can be accessed by the computer node of the node number in association with the node numbers “0” to “n−1” of the computer nodes 2-1 to 2-n
Is registered. In the example of FIG. 11, the computer node 2-1 having the node number “0” has IDs “A-0, A-4, A-
8, B-1, B-5,..., And IDs “A-2, A-6, A-10, B-
0, B-4,... "Can be accessed. This copy is a copy of the original of the partial database that can be accessed by the computer node 2-2 having the node number “1”. The ID of the partial database is the ID of the database such as A or B,
It is a combination of the order of the partial database in that.

【0064】問合せ統合処理手段14aは、図1に示した
問合せ統合処理手段14が備えている機能に加え、格納状
況管理手段15に部分問合せ処理用の計算機ノードのノー
ド番号を通知する機能や、この通知に応答して格納状況
管理手段15から返却された部分データベースのIDのリ
ストに基づいて配布する部分問合せを決定する機能を備
えている。
The query integration processing means 14a has a function of notifying the storage status management means 15 of the node number of the computer node for partial query processing, in addition to the functions of the query integration processing means 14 shown in FIG. It has a function of determining a partial inquiry to be distributed based on the list of partial database IDs returned from the storage status management means 15 in response to this notification.

【0065】記録媒体K3は、ディスク,半導体メモ
リ,その他の記録媒体であり、計算機ノード10−1〜10
−mを問合せ処理用の計算機ノードとして機能させるた
めのプログラムが記録されている。このプログラムは、
計算機ノード10−1〜10−mによって読み取られ、計算
機ノード10−1〜10−mの動作を制御することで、計算
機ノード10−1〜10−m上に、問合せ解析手段11,障害
検出手段12,配布数決定手段13,問合せ統合処理手段14
a,格納状況管理手段15を実現する。
The recording medium K3 is a disk, a semiconductor memory, or another recording medium, and includes the computer nodes 10-1 to 10-10.
A program for causing −m to function as a computer node for query processing is recorded. This program is
By being read by the computer nodes 10-1 to 10-m and controlling the operations of the computer nodes 10-1 to 10-m, the query analysis unit 11 and the failure detection unit are provided on the computer nodes 10-1 to 10-m. 12, distribution number determination means 13, query integration processing means 14
a, The storage status management means 15 is realized.

【0066】図12は、問合せ統合処理手段14aで行わ
れる処理の内の、図1の問合せ統合処理手段14で行われ
る処理と異なる部分のみを示した流れ図であり、ステッ
プB7,B8の間およびステップB18,B19の間でそれ
ぞれステップE1,E2を行う点、およびステップB1
0,B20の代わりにステップE3,E4を行う点が図4
に示した処理と異なっている。また、図13は格納状況
管理手段15の処理例を示す流れ図である。以下、各図を
参照して本実施の形態の動作を説明する。
FIG. 12 is a flowchart showing only a part of the processing performed by the query integration processing means 14a which is different from the processing performed by the query integration processing means 14 in FIG. Steps E1 and E2 are performed between steps B18 and B19, respectively, and step B1
FIG. 4 shows that steps E3 and E4 are performed in place of 0 and B20.
Is different from the processing shown in FIG. FIG. 13 is a flowchart showing a processing example of the storage status management means 15. Hereinafter, the operation of the present embodiment will be described with reference to the drawings.

【0067】問合せ処理用の計算機ノード10−k内の
問合せ解析手段11は、外部通信網5を介して自計算機ノ
ード宛の問合せを受け付けると、図2のA1,A2に示
す処理を行い、図3(c)に示すような処理手順を導出
する。
When the inquiry analyzing means 11 in the inquiry processing computer node 10-k receives the inquiry addressed to the own computer node via the external communication network 5, it performs the processing shown in A1 and A2 in FIG. A processing procedure as shown in FIG.

【0068】問合せ統合処理手段14aは、問合せ解析手
段11が処理手順を導出すると、図4のB1〜B7と同様
の処理を行い、ノード番号「0」の計算機ノード2−1
へ配布する部分問合せの数を決定する。その後、問合せ
統合処理手段14aは、図12の流れ図に示すように、格
納状況管理手段15を利用して計算機ノード2−1へ配布
する部分問い合わせを1個決定する(E1)。このE1
の処理を詳しく説明すると、次のようになる。
When the query analysis means 11 derives the processing procedure, the query integration processing means 14a performs the same processing as B1 to B7 in FIG. 4, and executes the computer node 2-1 having the node number "0".
Determine the number of partial queries to be distributed to Thereafter, as shown in the flowchart of FIG. 12, the query integration processing means 14a determines one partial query to be distributed to the computer node 2-1 using the storage status management means 15 (E1). This E1
The processing of the above will be described in detail below.

【0069】問合せ統合処理手段14aは、部分問合せの
配布対象にしている計算機ノード2−1のノード番号
「0」を格納状況管理手段15に通知する。
The query integration processing means 14a notifies the storage status management means 15 of the node number "0" of the computer node 2-1 to which the partial query is to be distributed.

【0070】ノード番号「0」が通知されると、格納状
況管理手段15は、図13に示すように格納状況管理表を
参照し、ノード番号「0」の計算機ノード2−1がアク
セス可能な部分データベースのIDのリストを取得し
(F1)、取得したリストを問合せ統合処理手段14aに
返却する(F2)。
When the node number “0” is notified, the storage status management means 15 refers to the storage status management table as shown in FIG. 13 and the computer node 2-1 with the node number “0” can access. A list of partial database IDs is acquired (F1), and the acquired list is returned to the query integration processing means 14a (F2).

【0071】問合せ統合処理手段14aは、リストが返却
されると、配布可能と認識している部分問合せであっ
て、且つ上記リストにIDが登録されている部分データ
ベースに対する部分問合せの内の1つを選択し、それを
配布する部分問合せとする。尚、そのような部分問合せ
が存在しない場合は、配布可能な部分問合せがないと判
断する。以上が、E1で行う処理の詳細である。
When the list is returned, the query integration processing means 14a returns one of the partial queries to the partial database whose ID is registered in the list and which is recognized as being distributable. Is selected as a partial query to distribute it. If there is no such partial query, it is determined that there is no partial query that can be distributed. The above is the details of the processing performed in E1.

【0072】E1で配布する部分問合せが決定され、B
8の判断結果がyesとなると、問合せ統合処理手段14
aは、E1で決定した部分問合せを計算機ノード2−1
に配布すると共に、配布した部分問合せを配布可能と認
識している部分問合せから除外する(E3)。その後、
図4に示したB11と同様の処理が行われる。
The partial query to be distributed is determined in E1, and B
If the result of the determination in step 8 is yes, the query integration processing means 14
a, the partial query determined in E1 is transferred to the computer node 2-1.
And the distributed partial query is excluded from the partial queries recognized as being distributable (E3). afterwards,
The same processing as B11 shown in FIG. 4 is performed.

【0073】また、部分問合せ処理用の計算機ノード2
−iから部分問合せの結果が送られてきた場合は、図4
のB13〜B18と同様の処理を行い、計算機ノード2−i
に配布する部分問合せの数を決定する。その後、問合せ
統合処理手段14aは、格納状況管理手段15を使用して計
算機ノード2−iに配布する部分問合せを1個決定し
(E2)、その部分問合せを計算機ノード2−iに配布
すると共に、配布した部分問合せを配布可能と認識して
いる部分問合せから除外する(E4)。その後、図4に
示したB21と同様の処理が行われる。
Computer node 2 for partial query processing
FIG. 4 shows a case where the result of the partial query is sent from -i.
Of the computer node 2-i
Determine the number of partial queries to be distributed to Thereafter, the query integration processing means 14a uses the storage status management means 15 to determine one partial query to be distributed to the computer node 2-i (E2), distributes the partial query to the computer node 2-i, and Then, the distributed partial query is excluded from the partial queries recognized as being distributable (E4). Thereafter, the same processing as B21 shown in FIG. 4 is performed.

【0074】次に、障害検出手段12によって計算機ノー
ド2−iに障害が発生したことが検出された時の動作を
説明する。
Next, the operation when the failure detecting means 12 detects that a failure has occurred in the computer node 2-i will be described.

【0075】障害検出手段12は、図9の流れ図に示すよ
うに、計算機ノード2−iに障害が発生したことを検出
すると、計算機ノード2−iに配布済みで、且つ結果が
返却されていない部分問合せのIDを進捗管理表から取
得し、それを問合せ統合処理手段14aに通知する。問合
せ統合処理手段14aは、IDが通知された部分問合せを
未配布の部分問合せとして認識する。このように、障害
の発生した計算機ノードに配布済みの部分問合せであっ
て、結果が返却されていない部分問合せを未配布の部分
問合せとして認識することにより、図12のE4におい
て上記した部分問合せが、正常に動作している部分問合
せ処理用の計算機ノードであって、且つ上記した部分問
合せに対応する部分データベースをアクセス可能な計算
機ノードに配布される。
When the failure detecting means 12 detects that a failure has occurred in the computer node 2-i as shown in the flow chart of FIG. 9, the failure has been distributed to the computer node 2-i and no result has been returned. The ID of the partial query is obtained from the progress management table, and is notified to the query integration processing means 14a. The query integration processing means 14a recognizes the partial query for which the ID has been notified as an undistributed partial query. As described above, by recognizing a partial query that has been distributed to the failed computer node and has not returned a result as an undistributed partial query, the partial query described above in E4 of FIG. Are distributed to computer nodes that are operating normally and are capable of accessing the partial database corresponding to the partial query described above.

【0076】[0076]

【発明の効果】以上説明したように、本発明の問合せ並
列処理システムは、複数の部分問合せ処理用の計算機ノ
ードから構成されるクラスタシステム上で問合せを並列
処理する際、各計算機ノードの負荷に応じて動的に配布
すべき部分問合せの数を決定するようにしているので、
各計算機ノードの負荷を動的に均衡化させることができ
る。その結果、問合せ並列処理システム全体の処理効率
を高め、性能改善を図ることが可能になる。
As described above, the query parallel processing system of the present invention reduces the load on each computer node when executing a query in parallel on a cluster system composed of a plurality of computer nodes for partial query processing. Since the number of partial queries to be distributed dynamically is determined accordingly,
The load on each computer node can be dynamically balanced. As a result, the processing efficiency of the entire query parallel processing system can be increased, and the performance can be improved.

【0077】また、本発明の問合せ並列処理システム
は、部分問合せ処理用の計算機ノードに障害が発生した
場合、障害が発生した計算機以外の計算機ノードについ
て、その負荷に応じて動的に配布すべき部分問合せの数
を決定するようにしているので、部分問合せ処理用の計
算機ノードに障害が発生した場合であっても、問合せの
結果を完全なものにすることができる。
Further, in the query parallel processing system of the present invention, when a failure occurs in a computer node for partial query processing, it should be dynamically distributed to computer nodes other than the failed computer node in accordance with the load. Since the number of partial queries is determined, the result of the query can be completed even if a failure occurs in the computer node for processing the partial query.

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

【図1】本発明の第1の実施の形態の構成例を示すブロ
ック図である。
FIG. 1 is a block diagram illustrating a configuration example of a first embodiment of the present invention.

【図2】問合せ解析手段11の処理例を示す流れ図であ
る。
FIG. 2 is a flowchart showing a processing example of a query analysis unit 11;

【図3】問合せ解析手段11の動作を説明するための図で
ある。
FIG. 3 is a diagram for explaining the operation of a query analysis unit 11;

【図4】問合せ統合処理手段14の処理例を示す流れ図で
ある。
FIG. 4 is a flowchart showing a processing example of an inquiry integration processing means 14;

【図5】配布数決定手段13の処理例を示す流れ図であ
る。
FIG. 5 is a flowchart showing a processing example of a distribution number determining unit 13;

【図6】進捗管理表の構成例を示す図である。FIG. 6 is a diagram showing a configuration example of a progress management table.

【図7】問合せ統合処理手段14の処理例を示す流れ図で
ある。
FIG. 7 is a flowchart showing a processing example of the inquiry integration processing means 14;

【図8】部分問合せ処理手段21の実施例を示すブロック
図である。
FIG. 8 is a block diagram showing an embodiment of a partial inquiry processing means 21.

【図9】障害検出手段12の処理例を示す流れ図である。FIG. 9 is a flowchart illustrating a processing example of a failure detection unit 12;

【図10】本発明の第2の実施の形態の構成例を示すブ
ロック図である。
FIG. 10 is a block diagram illustrating a configuration example of a second embodiment of the present invention.

【図11】格納状況管理表の構成例を示す図である。FIG. 11 is a diagram illustrating a configuration example of a storage status management table.

【図12】問合せ統合処理手段14aの処理例の一部を示
す流れ図である。
FIG. 12 is a flowchart showing a part of a processing example of an inquiry integration processing means 14a.

【図13】格納状況管理手段15の処理例を示す流れ図で
ある。
FIG. 13 is a flowchart showing a processing example of the storage status management means 15;

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

1−1〜1−m,10−1〜10−m…問合せ処理用の計
算機ノード 11…問合せ解析手段 12…障害検出手段 13…配布数決定手段 14,14a…問合せ統合処理手段 15…格納状況管理手段 2−1〜2−n…部分問合せ処理用の計算機ノード 21…部分問合せ処理手段 3−1〜3−j,30−1〜30−n…二次記憶装置 31…部分データベース 4…通信網 5…外部通信網 6…記憶装置共有網 K1〜K3…記録媒体
1-1 to 1-m, 10-1 to 10-m ... computer nodes for query processing 11 ... query analysis means 12 ... fault detection means 13 ... number of distribution determination means 14, 14a ... query integration processing means 15 ... storage status Management means 2-1 to 2-n Computer node for partial query processing 21 Partial query processing means 3-1 to 3-j, 30-1 to 30-n Secondary storage device 31 Partial database 4 Communication Network 5: External communication network 6: Storage device sharing network K1 to K3: Recording medium

Claims (14)

【特許請求の範囲】[Claims] 【請求項1】 データベースを複数の部分に分割するこ
とによって作成された複数の部分データベースが分散し
て格納された複数の二次記憶装置を、複数の部分問合せ
処理用の計算機ノードが共有する共有型クラスタシステ
ムの上で、前記データベースに対する問合せを並列に処
理する問合せ並列処理システムであって、 前記データベースに対する問合せを受け付ける1台の問
合せ処理用の計算機ノードを備え、 該問合せ処理用の計算機ノードが、 前記データベースに対する問合せを解析し、この問合せ
を処理する手順であって、問合せ対象となるデータベー
スを構成する各部分データベースに対する部分問合せ
と、部分問合せの結果のマージ処理とを含む処理手順を
導出する問合せ解析手段と、 前記各部分問合せ処理用の計算機ノードについて、その
負荷に応じて動的に配布すべき部分問合せの数を決定す
る配布数決定手段と、 前記問合せ解析手段で導出した処理手順に従って問合せ
の処理を進め、各部分問合せ処理用の計算機ノードに対
し部分問合せを配布する際には、前記配布数決定手段を
用いて決定した配布数だけの未配布の部分問合せを配布
し、部分問合せの結果が返却された際には、関連する結
果をマージしながら問合せの結果を導出する問合せ統合
処理手段とを備え、 前記複数の部分問合せ処理用の計算機ノードが、それぞ
れ、 配布された部分問合せを受け、その部分問合せの処理を
行い、配布元の計算機ノードに結果を返す部分問合せ処
理手段を備えたことを特徴とする問合せ並列処理システ
ム。
A shared storage system in which a plurality of secondary storage devices in which a plurality of partial databases created by dividing a database into a plurality of portions are dispersedly stored are shared by a plurality of computer nodes for partial query processing. A query parallel processing system for processing queries to the database in parallel on a type cluster system, comprising: a query processing computer node that receives a query to the database; and wherein the query processing computer node is A procedure for analyzing a query to the database and processing the query, the procedure including a partial query for each partial database constituting the database to be queried and a merging process of the result of the partial query are derived. Query analysis means, and a computer node for each partial query processing Distribution number determining means for dynamically determining the number of partial queries to be distributed according to the load; and processing of the query in accordance with the processing procedure derived by the query analysis means. When distributing a partial query to the user, distribute the undistributed partial queries for the number of distributions determined using the distribution number determining means, and when the result of the partial query is returned, Query integration processing means for deriving a query result while merging, wherein the plurality of partial query processing computer nodes respectively receive the distributed partial query, process the partial query, A query parallel processing system comprising a partial query processing means for returning a result to a computer node.
【請求項2】 請求項1記載の問合せ並列処理システム
において、 前記配布数決定手段は、前記各部分問合せ処理用の計算
機ノードで処理中となっている部分問合せの数がそれぞ
れ所定数となるように、部分問合せの配布数を決定する
構成を有することを特徴とする問合せ並列処理システ
ム。
2. The query parallel processing system according to claim 1, wherein said distribution number determination means sets a predetermined number of partial queries being processed by each of said partial query processing computer nodes. A query parallel processing system having a configuration for determining the number of partial queries to be distributed.
【請求項3】 請求項1記載の問合せ並列処理システム
において、 前記問合せ処理用の計算機ノードを複数備えたことを特
徴とする問合せ並列処理システム。
3. The query parallel processing system according to claim 1, further comprising a plurality of query processing computer nodes.
【請求項4】 データベースを複数の部分に分割するこ
とによって作成された複数の部分データベースが分散し
て格納された複数の二次記憶装置を、複数の部分問合せ
処理用の計算機ノードが共有する共有型クラスタシステ
ムの上で、前記データベースに対する問合せを並列に処
理する問合せ並列処理システムであって、 前記データベースに対する問合せを受け付ける1台の問
合せ処理用の計算機ノードを備え、 該問合せ処理用の計算機ノードが、 前記データベースに対する問合せを解析し、この問合せ
を処理する手順であって、問合せ対象となるデータベー
スを構成する各部分データベースに対する部分問合せ
と、部分問合せの結果のマージ処理とを含む処理手順を
導出する問合せ解析手段と、 前記部分問合せ処理用の計算機ノードに障害が発生した
ことを検出する障害検出手段と、 前記部分問合せ処理用の計算機ノードの内の、前記障害
検出手段で障害発生が検出された計算機ノード以外の計
算機ノードについて、その負荷に応じて動的に配布すべ
き部分問合せの数を決定する配布数決定手段と、 前記問合せ解析手段で導出した処理手順に従って問合せ
の処理を進め、各部分問合せ処理用の計算機ノードに対
し部分問合せを配布する際には、前記配布数決定手段を
用いて決定した配布数だけの未配布の部分問合せを配布
し、部分問合せの結果が返却された際には、関連する結
果をマージしながら問合せの結果を導出する問合せ統合
処理手段とを備え、 前記複数の部分問合せ処理用の計算機ノードが、それぞ
れ、 配布された部分問合せを受け、その部分問合せの処理を
行い、配布元の計算機ノードに結果を返す部分問合せ処
理手段を備えたことを特徴とする問合せ並列処理システ
ム。
4. A shared storage system in which a plurality of secondary storage devices in which a plurality of partial databases created by dividing a database into a plurality of portions are distributed and stored are shared by a plurality of computer nodes for partial query processing. A query parallel processing system for processing queries to the database in parallel on a type cluster system, comprising: a query processing computer node that receives a query to the database; and wherein the query processing computer node is A procedure for analyzing a query to the database and processing the query, the procedure including a partial query for each partial database constituting the database to be queried and a merging process of the result of the partial query are derived. The query analysis means and the computer node for the partial query processing fail. Failure detection means for detecting that a failure has occurred, and among the computer nodes for partial query processing, of the computer nodes other than the computer node for which the failure detection has been detected by the failure detection means, dynamically responding to the load thereof. A distribution number determining means for determining the number of partial queries to be distributed to the query processing section, and processing of the query in accordance with the processing procedure derived by the query analyzing means, and when distributing the partial query to each of the partial query processing computer nodes, Distributes undistributed partial queries for the number of distributions determined using the distribution number determining means, and derives query results while merging related results when the results of the partial queries are returned. Query integration processing means, wherein each of the plurality of computer nodes for partial query processing receives the distributed partial query, processes the partial query, Contact parallel processing system comprising the partial query processing unit that returns the result to the fabric source computer nodes.
【請求項5】 請求項4記載の問合せ並列処理システム
において、 前記配布数決定手段は、前記部分問合せ処理用の計算機
ノードの内の、前記障害検出手段で障害発生が検出され
た計算機ノード以外の計算機ノードで処理中になってい
る部分問合せの数がそれぞれ所定数となるように、部分
問合せの配布数を決定する構成を有することを特徴とす
る問合せ並列処理システム。
5. The query parallel processing system according to claim 4, wherein the distribution number determining means is a computer node for partial query processing other than a computer node whose failure has been detected by the failure detecting means. A query parallel processing system having a configuration for determining the distribution number of partial queries so that the number of partial queries being processed by a computer node becomes a predetermined number, respectively.
【請求項6】 請求項4記載の問合せ並列処理システム
において、 前記問合せ処理用の計算機ノードを複数備えたことを特
徴とする問合せ並列処理システム。
6. The query parallel processing system according to claim 4, comprising a plurality of computer nodes for said query processing.
【請求項7】 複数の部分問合せ処理用の計算機ノード
それぞれにその計算機ノードだけがアクセスできる二次
記憶装置が接続され、データベースを複数の部分に分割
することによって作成された複数の部分データベースが
前記複数の二次記憶装置に分散して格納された無共有型
クラスタシステムの上で、前記データベースに対する問
合せを並列に処理する問合せ並列処理システムであっ
て、 前記データベースに対する問合せを受け付ける1台の問
合せ処理用の計算機ノードを備え、 該問合せ処理用の計算機ノードが、 前記データベースに対する問合せを解析し、この問合せ
を処理する手順であって、問合せ対象となるデータベー
スを構成する各部分データベースに対する部分問合せ
と、部分問合せの結果のマージ処理とを含む処理手順を
導出する問合せ解析手段と、 前記各部分問合せ処理用の計算機ノードと、その計算機
ノードからアクセス可能な部分データベースとの対応関
係を管理する格納状況管理手段と、 前記各部分問合せ処理用の計算機ノードについて、その
負荷に応じて動的に配布すべき部分問合せの数を決定す
る配布数決定手段と、 前記問合せ解析手段で導出した処理手順に従って問合せ
の処理を進め、部分問合せ処理用の計算機ノードに対し
部分問合せを配布する際には、その計算機ノードがアク
セス可能な部分データベースの全てを前記格納状況管理
手段を用いて認識し、それら部分データベースに対する
部分問合せの中から、前記配布数決定手段を用いて決定
した配布数だけの未配布の部分問合せを配布し、部分問
合せの結果が返却された際には、関連する結果をマージ
しながら問合せの結果を導出する問合せ統合処理手段と
を備え、 前記各部分問合せ処理用の計算機ノードが、それぞれ、 配布された部分問合せを受け、その部分問合せの処理を
行い、配布元の計算機ノードに結果を返す部分問合せ処
理手段を備えたことを特徴とする問合せ並列処理システ
ム。
7. A plurality of partial query processing computer nodes are each connected to a secondary storage device accessible only by the computer node, and the plurality of partial databases created by dividing the database into a plurality of parts are provided. A query parallel processing system for processing queries to the database in parallel on a non-shared cluster system distributed and stored in a plurality of secondary storage devices, wherein one query process for receiving a query to the database A computer node for query processing, wherein the computer node for query processing analyzes the query to the database and processes the query, comprising: a partial query to each partial database constituting the database to be queried; Introduce a processing procedure including merge processing of partial query results. Query analysis means to be issued, a computer node for each of the partial query processing, a storage status management means for managing a correspondence relationship with a partial database accessible from the computer node, and a computer node for each of the partial query processing A distribution number determining unit that dynamically determines the number of partial queries to be distributed according to the load; and a query processing unit that proceeds with the query according to the processing procedure derived by the query analysis unit, and sends the query to a computer node for partial query processing. When distributing the partial query, all the partial databases accessible by the computer node are recognized by using the storage status management unit, and from among the partial queries to those partial databases, the distribution number determining unit is used. The undelivered partial queries for the determined number of distributions are distributed, and when the result of the partial query is returned, the related Query integration processing means for deriving a query result while merging results, wherein the computer nodes for each of the partial query processes receive the distributed partial query, perform the partial query processing, and And a partial query processing means for returning a result to the computer node.
【請求項8】 請求項7記載の問合せ並列処理システム
において、 前記配布数決定手段は、前記各部分問合せ処理用の計算
機ノードで処理中の部分問合せの数がそれぞれ所定数と
なるように、部分問合せの配布数を決定する構成を有す
ることを特徴とする問合せ並列処理システム。
8. The query parallel processing system according to claim 7, wherein said distribution number determining means determines the number of partial queries being processed in each of said partial query processing computer nodes by a predetermined number. A query parallel processing system having a configuration for determining the number of queries to be distributed.
【請求項9】 請求項7記載の問合せ並列処理システム
において、 前記問合せ処理用の計算機ノードを複数備えたことを特
徴とする問合せ並列処理システム。
9. The query parallel processing system according to claim 7, further comprising a plurality of query processing computer nodes.
【請求項10】 複数の部分問合せ処理用の計算機ノー
ドそれぞれにその計算機ノードだけがアクセスできる二
次記憶装置が接続され、データベースを複数の部分に分
割することによって作成された複数の部分データベース
が前記複数の二次記憶装置に分散して格納され、更に前
記各部分データベースの複製がその原本とは異なる二次
記憶装置に格納された無共有型クラスタシステムの上
で、前記データベースに対する問合せを並列に処理する
問合せ並列処理システムであって、 前記データベースに対する問合せを受け付ける1台の問
合せ処理用の計算機ノードを備え、 該問合せ処理用の計算機ノードが、 前記データベースに対する問合せを解析し、この問合せ
を処理する手順であって、問合せ対象となるデータベー
スを構成する各部分データベースに対する部分問合せ
と、部分問合せの結果のマージ処理とを含む処理手順を
導出する問合せ解析手段と、 前記部分問合せ処理用の計算機ノードに障害が発生した
ことを検出する障害検出手段と、 前記部分問合せ処理用の計算機ノードの内の、前記障害
検出手段で障害発生が検出された計算機ノード以外の計
算機ノードについて、その負荷に応じて動的に配布すべ
き部分問合せの数を決定する配布数決定手段と、 前記各部分問合せ処理用の計算機ノードと、その計算機
ノードからアクセス可能な部分データベースの原本,複
製との対応関係を管理する格納状況管理手段と、 前記問合せ解析手段で導出した処理手順に従って問合せ
の処理を進め、部分問合せ処理用の計算機ノードに対し
部分問合せを配布する際には、その計算機ノードがアク
セス可能な部分データベースの全てを前記格納状況管理
手段を用いて認識し、それら部分データベースに対する
部分問合せの中から、前記配布数決定手段を用いて決定
した配布数だけの未配布の部分問合せを配布し、部分問
合せの結果が返却された際には、関連する結果をマージ
しながら問合せの結果を導出する問合せ統合処理手段と
を備え、 前記部分問合せ処理用の計算機ノードが、それぞれ、 配布された部分問合せを受け、その部分問合せの処理を
行い、配布元の計算機ノードに結果を返す部分問合せ処
理手段を備えたことを特徴とする問合せ並列処理システ
ム。
10. A plurality of partial query processing computer nodes are each connected to a secondary storage device accessible only by the computer node, and the plurality of partial databases created by dividing the database into a plurality of parts are provided. On a non-shared cluster system in which a copy of each of the partial databases is stored in a secondary storage device different from the original, the queries for the databases are distributed and stored in a plurality of secondary storage devices, and queries to the databases are performed in parallel. A query parallel processing system for processing, comprising one query processing computer node for receiving a query to the database, wherein the query processing computer node analyzes the query to the database and processes the query. This is a procedure, and each partial data constituting the database to be queried is A query analysis unit that derives a processing procedure including a partial query to the database and a merge process of the result of the partial query; a failure detection unit that detects that a failure has occurred in the computer node for the partial query processing; For the computer nodes for query processing, of the computer nodes other than the computer node for which the failure detection is detected by the failure detecting means, the distribution number determination for dynamically determining the number of partial queries to be distributed according to the load. Means, a computer node for each of the partial query processing, a storage status managing means for managing a correspondence relationship between an original and a copy of a partial database accessible from the computer node, and a processing procedure derived by the query analyzing means. When processing the query and distributing the partial query to the computer node for partial query processing, Recognize all of the accessible partial databases using the storage status management means, and among the partial queries for those partial databases, extract undistributed partial queries for the number of distributions determined by the distribution number determination means. And query integration processing means for deriving the result of the query while merging the related results when the result of the partial query is returned. The computer nodes for the partial query processing are distributed, respectively. A query parallel processing system comprising: a partial query processing unit that receives a partial query, processes the partial query, and returns a result to a distribution source computer node.
【請求項11】 請求項10記載の問合せ並列処理シス
テムにおいて、 前記配布数決定手段は、前記各部分問合せ処理用の計算
機ノードの内の、前記障害検出手段によって障害発生が
検出された計算機ノード以外の計算機ノードで処理中の
部分問合せの数がそれぞれ所定数となるように、部分問
合せの配布数を決定する構成を有することを特徴とする
問合せ並列処理システム。
11. The query parallel processing system according to claim 10, wherein said distribution number determining means is a computer node for which said failure detecting means detects a failure among said computer nodes for said partial query processing. A query parallel processing system characterized in that the number of partial queries distributed is determined so that the number of partial queries being processed by the computer nodes becomes a predetermined number.
【請求項12】 請求項10記載の問合せ並列処理シス
テムにおいて、 前記問合せ処理用の計算機ノードを複数備えたことを特
徴とする問合せ並列処理システム。
12. The query parallel processing system according to claim 10, further comprising a plurality of query processing computer nodes.
【請求項13】 データベースを複数の部分に分割する
ことによって作成された複数の部分データベースが分散
して格納された複数の二次記憶装置を、複数の部分問合
せ処理用の計算機ノードが共有する共有型クラスタシス
テムの上で、前記データベースに対する問合せを並列に
処理する問合せ並列処理システムを、複数台の部分問合
せ処理用の計算機ノードと1台の問合せ処理用の計算機
ノードとによって実現するためのプログラムを記録した
機械読み取り可能な記録媒体であって、 前記問合せ処理用の計算機ノードを、 前記データベースに対する問合せを解析し、この問合せ
を処理する手順であって、問合せ対象となるデータベー
スを構成する各部分データベースに対する部分問合せ
と、部分問合せの結果のマージ処理とを含む処理手順を
導出する問合せ解析手段、 前記各部分問合せ処理用の計算機ノードについて、その
負荷に応じて動的に配布すべき部分問合せの数を決定す
る配布数決定手段、 前記問合せ解析手段で導出した処理手順に従って問合せ
の処理を進め、各部分問合せ処理用の計算機ノードに対
し部分問合せを配布する際には、前記配布数決定手段を
用いて決定した配布数だけの未配布の部分問合せを配布
し、部分問合せの結果が返却された際には、関連する結
果をマージしながら問合せの結果を導出する問合せ統合
処理手段として機能させるためのプログラムと、 前記各部分問合せ処理用の計算機ノードを、 配布された部分問合せを受け、その部分問合せの処理を
行い、配布元の計算機ノードに結果を返す部分問合せ処
理手段として機能させるためのプログラムとを記録し
た、プログラムを記録した機械読み取り可能な記録媒
体。
13. A shared configuration in which a plurality of secondary storage devices in which a plurality of partial databases created by dividing a database into a plurality of portions are distributed and stored are shared by a plurality of computer nodes for partial query processing. A program for realizing a query parallel processing system for processing queries to the database in parallel on the type cluster system by a plurality of computer nodes for partial query processing and one computer node for query processing A computer-readable recording medium on which the computer node for query processing is analyzed, and a query for the database is processed, and the query is processed. Processing procedure including a partial query for, and a merge process of the result of the partial query Query analysis means to be derived, distribution number determination means for dynamically determining the number of partial queries to be distributed according to the load, for each of the partial query processing computer nodes, according to the processing procedure derived by the query analysis means When a query is advanced and a partial query is distributed to each partial query processing computer node, undistributed partial queries corresponding to the distribution number determined by using the distribution number determining means are distributed, and the partial query is distributed. When the result is returned, a program for functioning as a query integration processing means for deriving a query result while merging related results, and a computer node for each of the partial query processing, A program for functioning as a partial query processing means that receives a query, processes the partial query, and returns a result to the distribution source computer node. Was recorded bets, machine-readable recording medium recording a program.
【請求項14】 複数の部分問合せ処理用の計算機ノー
ドそれぞれにその計算機ノードだけがアクセスできる二
次記憶装置が接続され、データベースを複数の部分に分
割することによって作成された複数の部分データベース
が前記複数の二次記憶装置に分散して格納された無共有
型クラスタシステムの上で、前記データベースに対する
問合せを並列に処理する問合せ並列処理システムを、複
数の部分問合せ処理用の計算機ノードと1台の問合せ処
理用の計算機ノードとによって実現するためのプログラ
ムを記録した機械読み取り可能な記録媒体であって、 前記問合せ処理用の計算機ノードを、 前記データベースに対する問合せを解析し、この問合せ
を処理する手順であって、問合せ対象となるデータベー
スを構成する各部分データベースに対する部分問合せ
と、部分問合せの結果のマージ処理とを含む処理手順を
導出する問合せ解析手段、 前記各部分問合せ処理用の計算機ノードと、その計算機
ノードからアクセス可能な部分データベースとの対応関
係を管理する格納状況管理手段、 前記各部分問合せ処理用の計算機ノードについて、その
負荷に応じて配布するべき部分問合せの数を決定する配
布数決定手段、 前記問合せ解析手段で導出した処理手順に従って問合せ
の処理を進め、各部分問合せ処理用の計算機ノードに対
し部分問合せを配布する際には、各計算機ノードがアク
セス可能な部分データベースの全てを前記格納状況管理
手段を用いて認識し、それら部分データベースに対する
部分問合せの中から、前記配布数決定手段を用いて決定
した配布数だけの未配布の部分問合せを配布し、部分問
合せの結果が返却された際には、関連する結果をマージ
しながら問合せの結果を導出する問合せ統合処理手段と
して機能させるためのプログラムと、 前記各部分問合せ処理用の計算機ノードを、 配布された部分問合せを受け、その部分問合せの処理を
行い、配布元の計算機ノードに結果を返す部分問合せ処
理手段として機能させるためのプログラムとを記録し
た、プログラムを記録した機械読み取り可能な記録媒
体。
14. A plurality of partial query processing computer nodes are each connected to a secondary storage device accessible only by the computer node, and the plurality of partial databases created by dividing the database into a plurality of parts are provided. On a non-shared cluster system distributed and stored in a plurality of secondary storage devices, a query parallel processing system for processing queries to the database in parallel is provided with a plurality of computer nodes for partial query processing and one computer A computer-readable recording medium that records a program to be realized by an inquiry processing computer node, wherein the inquiry processing computer node analyzes an inquiry to the database and processes the inquiry. Each database that composes the database to be queried Query analysis means for deriving a processing procedure including a partial query to be performed and a merge process of a result of the partial query, and manages a correspondence relationship between the computer nodes for each of the partial query processes and a partial database accessible from the computer node. Storage status management means, distribution number determination means for determining the number of partial queries to be distributed according to the load for each of the partial query processing computer nodes, processing of queries according to the processing procedure derived by the query analysis means When distributing the partial query to the computer nodes for processing the partial queries, all the partial databases accessible by the computer nodes are recognized using the storage status management means, and the partial From the queries, undistributed partial queries for the number of distributions determined using the distribution number determination means And, when the result of the partial query is returned, a program for functioning as query integration processing means for deriving the result of the query while merging the related results, and a computer node for the partial query processing A program for functioning as a partial query processing means for receiving the distributed partial query, processing the partial query, and returning a result to the distribution source computer node; recoding media.
JP13674299A 1999-05-18 1999-05-18 Query parallel processing system and machine-readable recording medium recording program Expired - Fee Related JP3777872B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP13674299A JP3777872B2 (en) 1999-05-18 1999-05-18 Query parallel processing system and machine-readable recording medium recording program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13674299A JP3777872B2 (en) 1999-05-18 1999-05-18 Query parallel processing system and machine-readable recording medium recording program

Publications (2)

Publication Number Publication Date
JP2000330959A true JP2000330959A (en) 2000-11-30
JP3777872B2 JP3777872B2 (en) 2006-05-24

Family

ID=15182453

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13674299A Expired - Fee Related JP3777872B2 (en) 1999-05-18 1999-05-18 Query parallel processing system and machine-readable recording medium recording program

Country Status (1)

Country Link
JP (1) JP3777872B2 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006196003A (en) * 2005-01-13 2006-07-27 Korg Inc Voice processing method, audio processor, voice processing program, and storage medium storing it
JP2006268104A (en) * 2005-03-22 2006-10-05 Nec Corp Fingerprint verification system, and fingerprint verification processing device and method
JP2007199804A (en) * 2006-01-24 2007-08-09 Hitachi Ltd Database management method, database management program, database management device, and database management system
JP2009086741A (en) * 2007-09-27 2009-04-23 Hitachi Ltd Distributed processing control method in heterogeneous node existing distributed environment and its system and its program
WO2011151852A1 (en) 2010-05-31 2011-12-08 Hitachi, Ltd. Data processing method and computer system
JP2014112385A (en) * 2013-12-24 2014-06-19 Nomura Research Institute Ltd Data utilization system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07141394A (en) * 1993-11-16 1995-06-02 Hitachi Ltd Data base division management method and parallel data base system
JPH08320849A (en) * 1995-05-26 1996-12-03 Nippon Telegr & Teleph Corp <Ntt> Distributed system control method
JPH10326216A (en) * 1998-06-22 1998-12-08 Hitachi Ltd Data base management system and inquiry processing method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07141394A (en) * 1993-11-16 1995-06-02 Hitachi Ltd Data base division management method and parallel data base system
JPH08320849A (en) * 1995-05-26 1996-12-03 Nippon Telegr & Teleph Corp <Ntt> Distributed system control method
JPH10326216A (en) * 1998-06-22 1998-12-08 Hitachi Ltd Data base management system and inquiry processing method

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006196003A (en) * 2005-01-13 2006-07-27 Korg Inc Voice processing method, audio processor, voice processing program, and storage medium storing it
JP2006268104A (en) * 2005-03-22 2006-10-05 Nec Corp Fingerprint verification system, and fingerprint verification processing device and method
JP2007199804A (en) * 2006-01-24 2007-08-09 Hitachi Ltd Database management method, database management program, database management device, and database management system
JP2009086741A (en) * 2007-09-27 2009-04-23 Hitachi Ltd Distributed processing control method in heterogeneous node existing distributed environment and its system and its program
WO2011151852A1 (en) 2010-05-31 2011-12-08 Hitachi, Ltd. Data processing method and computer system
US8583757B2 (en) 2010-05-31 2013-11-12 Hitachi, Ltd. Data processing method and computer system
JP2014112385A (en) * 2013-12-24 2014-06-19 Nomura Research Institute Ltd Data utilization system

Also Published As

Publication number Publication date
JP3777872B2 (en) 2006-05-24

Similar Documents

Publication Publication Date Title
US8943103B2 (en) Improvements to query execution in a parallel elastic database management system
US10885012B2 (en) System and method for large-scale data processing using an application-independent framework
KR101259557B1 (en) Cluster data management system and method for data recovery using parallel processing in cluster data management system
US7457835B2 (en) Movement of data in a distributed database system to a storage location closest to a center of activity for the data
US8676951B2 (en) Traffic reduction method for distributed key-value store
US7870230B2 (en) Policy-based cluster quorum determination
JP5765416B2 (en) Distributed storage system and method
JP4614956B2 (en) Dynamic reassignment of data ownership
US20090254523A1 (en) Hybrid term and document-based indexing for search query resolution
US10866970B1 (en) Range query capacity allocation
US20140108001A1 (en) Emulating an environment of a target database system
US20100082546A1 (en) Storage Tiers for Database Server System
WO2016191995A1 (en) Method and device for partitioning association table in distributed database
US7769732B2 (en) Apparatus and method for streamlining index updates in a shared-nothing architecture
CN111752945B (en) Time sequence database data interaction method and system based on container and hierarchical model
Davoudian et al. A workload-adaptive streaming partitioner for distributed graph stores
JP3777872B2 (en) Query parallel processing system and machine-readable recording medium recording program
CN109962951B (en) Cloud platform monitoring data system
CN112507026A (en) Distributed high-speed storage method based on key value model, document model and graph model data
CN116244610A (en) Distributed query system based on machine learning and optimization method thereof
CN108363761A (en) Hadoop awr automatic loads analyze information bank, analysis method and storage medium
CN109918410B (en) Spark platform based distributed big data function dependency discovery method
Zhang et al. Scalable Online Interval Join on Modern Multicore Processors in OpenMLDB
US9183255B1 (en) Spool management and checkpointing in a multi-database system
JP7468651B2 (en) SERVER GROUP SELECTION SYSTEM, SERVER GROUP SELECTION METHOD, AND PROGRAM

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20031224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041130

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060207

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060220

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100310

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100310

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110310

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110310

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120310

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120310

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130310

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130310

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20140310

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees