JPS6258332A - Optimizing system for partial inquiry of decentralized data base control system - Google Patents
Optimizing system for partial inquiry of decentralized data base control systemInfo
- Publication number
- JPS6258332A JPS6258332A JP60198762A JP19876285A JPS6258332A JP S6258332 A JPS6258332 A JP S6258332A JP 60198762 A JP60198762 A JP 60198762A JP 19876285 A JP19876285 A JP 19876285A JP S6258332 A JPS6258332 A JP S6258332A
- Authority
- JP
- Japan
- Prior art keywords
- computer
- coupling
- join
- semi
- cost
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、分散データベース管理システムにおいて利用
者によって入力された間合せコマンドを各電算機上で処
理される部分間合せに分解する際同時に行なわれる最適
化処理方式に関する。[Detailed Description of the Invention] [Industrial Application Field] The present invention provides a distributed database management system that simultaneously decomposes an alignment command input by a user into partial alignments that are processed on each computer. Regarding optimization processing methods.
データベースを持つ電算機が複数台あり、相互は通信回
線で結ばれ、各々のデータベースを用い”て総合的なデ
ータ処理を行なう分散データベース管理システムでは、
利用者によってシステムに与えられた間合せコマンドを
実行する際、各電算機で実行可能な部分間合せに分解し
、実行するが、その時データ転送量及び電算機内部処理
量などが最小になるような分解方法を考える、つまり最
適化を行なう。In a distributed database management system, there are multiple computers with databases, each connected by a communication line, and each database is used to perform comprehensive data processing.
When executing an alignment command given to the system by a user, it is broken down into partial alignments that can be executed on each computer and executed, but the amount of data transferred and the amount of internal processing of the computer are minimized. Consider a decomposition method, that is, perform optimization.
分散データベース管理システムが行なう処理の主なもの
に、結合および準結合がある。個々の計算機が行なう作
業も、データ伝送、結合、準結合処理が主である。デー
タベースには第6図(alの従業員テーブル、および第
6図1b)の家族テーブルなどがあるが、結合とはこれ
らを突き合わせて(合成して)第7図の如き新しい大き
なテーブルを作る操作をいう。第7図は第6図の従業員
番号に注目し、その氏名、該氏名の従業員の勤務先(こ
れらは従業員テーブルにある)、家族の名前および続柄
(これらは家族テーブルにある)を列挙したものである
。この結合を行なわせるコマンドは、作業員テーブルと
家族テーブルを、従業員番号で結合せよ、である。第6
図(a)にある従業員でも、第6図(b)にない者(家
族のない者)は結合結果のテーブル(第7図)から落さ
れる点が注目される。The main types of processing performed by distributed database management systems are joins and semi-joins. The work performed by individual computers is mainly data transmission, combination, and semi-combination processing. The database includes the employee table in Figure 6 (Al's employee table and the family table in Figure 6 1b), and joining is the operation of matching (combining) these tables to create a new large table as shown in Figure 7. means. Figure 7 focuses on the employee number in Figure 6 and shows the employee's name, place of work (these are in the employee table), family names and relationships (these are in the family table). It is listed. The command to perform this join is "Join the worker table and family table by employee number." 6th
It is noteworthy that even if the employees are in Figure 6(a), those who are not in Figure 6(b) (those without families) are dropped from the join result table (Figure 7).
か\る結合は、家族のある従業員データを求める場合に
有効である。準結合とは、結合した結果をもとのどちら
かのテーブルの項目のみのデータについて抽出する操作
で、第8図がその一例である。Such a combination is effective when obtaining data on employees with family members. A semi-join is an operation in which the result of the join is extracted for only the data of the items in either of the original tables, and FIG. 8 is an example of this.
準結合では注目したフィールドだけ送って結合を行なう
。第8図は第7図の結合結果のうち第6図(a)の項目
群(従業員テーブルの諸項目)を抽出したものである。In a semi-join, only the fields of interest are sent and the join is performed. FIG. 8 shows the item group of FIG. 6(a) (items of the employee table) extracted from the combined result of FIG. 7.
第6図(a)と比べて、家族のない従業員が欠落してい
る点が異なる。結合はユーザがコマンド入力してこれを
行なわせるが、準結合はユーザが指定するものではなく
、ユーザコマンドを実行する過程においてシステムが内
部的に行なう。The difference from Figure 6(a) is that employees without families are missing. Binding is performed by the user inputting a command, but semi-binding is not specified by the user, but is performed internally by the system in the process of executing the user command.
ユーザが結合を指示する(どのテーブルをどの項目につ
いて結合するか指定する)とき、システムはどういう結
合または準結合をどういう順序で行なうかをコストミニ
マムを基準に決定する。この決定に当って従来は常に全
体に注目し、例えば××と××を準結合し、また××と
××を準結合し、最後に××と××を結合して答を得る
スケジュールがあったとすると、そのスケジュール全体
に要するコストを計算し、また組合せを変えた他のスケ
ジュール(一般には複数生じる)全体に要するコストを
計算し、これらを比較し、最良のもの(コスト最低)を
採用し、実行する。しかしこの方式ではコスト計算量が
多く、甚だ厄介である。When a user instructs a join (specifies which tables are to be joined for which items), the system determines what kind of join or semi-join to perform and in what order based on the cost minimum. Conventionally, when making this decision, we always focused on the whole, and for example, we semi-combined XX and XX, then semi-combined XX and XX, and finally, we combined XX and XX to obtain the answer. If there is, calculate the cost required for the entire schedule, calculate the cost required for all other schedules with different combinations (generally, multiple schedules occur), compare these, and choose the best one (lowest cost). Recruit and implement. However, this method requires a large amount of cost calculation and is extremely troublesome.
本発明はこの点を改善し、コスト計算を簡単化しようと
するものである。The present invention aims to improve this point and simplify cost calculation.
本発明は、複数の電算機とこれらを結ぶ通信路ネットワ
ーク上に作成された分散データベース管理システムにお
いて利用者によって入力された、複数のデータベースの
結合を含む問合せを、各電算機上で実行する部分間合せ
群に分解する除行なわれる部分間合せ最適化方式におい
て、各電算機上で実行する部分間合せを、各々データベ
ース又は処理結果を持つ2台の電算機についての(1)
とりあえず結合を省略しておいて、後に結合する、(2
)とりあえず準結合で処理しておいて、後に結合する、
■初めから結合を行なってしまう、のいずれかとしてそ
れぞれのコスト計算をし、コスト最小のものを実行し、
その処理結果を持つ電算機と、他のデータベースを持つ
電算機との間で上記■。The present invention is a distributed database management system created on a plurality of computers and a communication channel network connecting these computers, and a part that executes on each computer a query that is input by a user and includes a combination of a plurality of databases. In the partial alignment optimization method that is divided into alignment groups, the partial alignment executed on each computer is divided into two computers, each with its own database or processing result (1).
Omit the join for now and join later (2
) Process it as a semi-join for now, and then join it later.
■Calculate the cost of each of them, either perform the join from the beginning, and execute the one with the lowest cost.
■ above between the computer that has the processing results and the computer that has other databases.
■、■のケースのコスト計算をし、コスト最小のものを
実行し、以下同様処理を逐次利用者間合せに対する解答
が得られるまで行なうようにすることを特徴とするもの
である。This method is characterized in that costs are calculated for cases (1) and (2), the one with the lowest cost is executed, and the same process is repeated one after another until an answer to the user's arrangement is obtained.
第1図に示すようにテーブルAとテーブルBを結合する
(これはコマンドにより入力される)際、処理方法には
次の3つがある。即ちテーブルAは電算機Aに、テーブ
ルBは電算機Bにあり、結合結果を電算機C上に得ると
して、その■は第2図に示すように当面の結合(計算機
A、B間での結合、準結合)を省略し、テーブルA、B
を原型のまま計算機A、Bから電算機Cに送り、そこで
結合する方式であり、データ転送量はV cA) +
V (B)(こ\でvOはデータの量を示す)、電算機
内部処理量はAとBの結合の分量で、これらの全体がコ
スト計算対象になる。As shown in FIG. 1, when combining table A and table B (this is input by a command), there are the following three processing methods. In other words, table A is on computer A, table B is on computer B, and the join result is obtained on computer C. As shown in Fig. (joins, semi-joins) are omitted, tables A and B
is sent in its original form from computers A and B to computer C, where it is combined, and the amount of data transferred is V cA) +
V (B) (where vO indicates the amount of data), the computer's internal processing amount is the amount of the combination of A and B, and the entire amount is subject to cost calculation.
その■は第3図に示すように、当面の結合を準結合で行
ない、その後テーブルを電算機Cに送って結合し直す方
式であり、データ転送量はV■+V(al+V (BD
(A)、電算機内部処理量はB■Aの計算量とAH(B
IXA)の計算量の和で、これらの全体がコスト計算対
象になる。こ\でXは準結合、Xは結合を示し、aは結
合の際注目する項目を示す。計算機Aから計算機Bへ送
るデータ量はV (a)、計算機Aより計算機Cへ送る
データ量■(A)、計算機Bより計算機Cへ送るのは準
結合結果であって、データ量はV (BKA)である。As shown in FIG.
(A), the computer's internal processing amount is B■A's calculation amount and AH(B
IXA), the total amount of these is the subject of cost calculation. Here, X indicates a semi-bond, X indicates a bond, and a indicates an item to be noted during the bond. The amount of data sent from computer A to computer B is V (a), the amount of data sent from computer A to computer C (A), the result of semi-combination is sent from computer B to computer C, and the amount of data is V ( BKA).
このケース■を第6図〜第8図の例で説明すると、家族
テーブルは計算機Aにあり、従業員テーブルは計算機B
にあるとすると、求める結果は第7図の家族付き従業員
テーブルでこのテーブルでは家族のない従業員は外され
る(対象外)から、電算機Aから電算機Bへ従業員番号
(注目する項目)を送り(これは家族のある者、の情報
であり、伝送データ量はV (a)である)、電算機B
では電算機Aから従業員番号が来た者の欄(従業員番号
、氏名、勤務先)のみ取出しくこれが準結合結果)、こ
れを計算機Cへ送る。計算機Cは計算機Aからは家族テ
ーブルが送られ、これらを突合せて第7図の結合結果を
得る。To explain this case ■ using the example in Figures 6 to 8, the family table is on computer A, and the employee table is on computer B.
, the desired result is the table of employees with families shown in Figure 7.In this table, employees without families are excluded (not targeted), so the employee number (of interest) is transferred from computer A to computer B. item) (this is information about a family member, the amount of data transmitted is V(a)), and computer B
Now, take out only the column (employee number, name, workplace) of the person whose employee number came from computer A (this is the semi-combined result), and send it to computer C. Computer C receives the family table from computer A and compares them to obtain the combined result shown in FIG.
その■は第4図に示すように、初めから結合をすぐ行な
ってしまう方式であり、データ転送量はV (A) +
V (AKB)、電算機内部処理量はAXBの計算量で
、これらの全体がコスト計算対象になる。As shown in Figure 4, the method (■) is a method in which the connection is performed immediately from the beginning, and the amount of data transferred is V (A) +
V (AKB), the computer internal processing amount is the calculation amount of AXB, and the entire amount is subject to cost calculation.
本発明では、2テーブルの結合ならその処理方法には、
第2図、第3図、および第4図の3通りが考えられるの
でこれらについてコスト計算し、どれがコスト最小かに
より選択すべきものを決定する。そして選択したものを
実行し、その結果と次のテーブルとの間で再び■、■、
■のケースをコスト計算し、コストミニマムのものを選
択し、それを実行する。以下同様で、か\る操作を入力
コマンドに対する解答が得られるまで行う。注目する結
合の部分のみに限定してコスト計算を行なうことが特徴
である。これに対し従来方式ではあらゆる組合せにつき
前記コスト計算を行ない、どの組合せがコストミニマム
であるかを求め、コストミニマムの組合せを採用してい
たので、特にテーブルが多数ある場合コスト計算が複雑
で、時間のか\るものであった。In this invention, when joining two tables, the processing method is as follows:
Since there are three possible options shown in FIG. 2, FIG. 3, and FIG. 4, the costs are calculated for these, and the one to be selected is determined based on which one has the lowest cost. Then execute the selected one, and again between the result and the next table ■,■,
■ Calculate the cost of the cases, select the one with the minimum cost, and execute it. In the same manner, the above operations are performed until the answer to the input command is obtained. The feature is that the cost calculation is limited to only the part of the connection of interest. On the other hand, in the conventional method, the cost calculation is performed for every combination, and the combination with the minimum cost is determined, and the combination with the minimum cost is adopted. This makes cost calculation complicated and time-consuming, especially when there are many tables. It was something like that.
本発明方式はテーブルが3つ以上の場合に有効である(
テーブルが2つなら本発明法も従来法も同じ)。テーブ
ルが3つの場合の例を第5図に示す。テーブルA、B、
Cの結合を求めるコマンドが入力されると、システムは
先ず2つのテーブルについて上記3つのケース即ち(1
)とりあえず結合を省略しておいて後に結合する(第2
図)、(2)とりあえず準結合で処理しておいて後に結
合する(第3図)、■初めから結合を行なってしまう(
第4図)、を検討し、コスト最小のものを選ぶ。The method of the present invention is effective when there are three or more tables (
If there are two tables, the method of the present invention and the conventional method are the same). FIG. 5 shows an example where there are three tables. Tables A, B,
When a command to join C is input, the system first performs the above three cases for two tables, namely (1
) For now, omit the join and join later (second
(Figure 3), (2) Process it as a semi-join for now and then combine it later (Figure 3), ■ Perform the join from the beginning (
Figure 4), and select the one with the lowest cost.
第5図ではテーブルAとBを取り上げ(AとC1BとC
を取り上げることも考えられるが、いずれでも同じであ
るから任意の2つを取り上げてよい)、コスト計算した
結果、■のケースがよいと判断されたとしている。次は
準結合結果A (B)とテーブルCについて検討し、こ
れは■のケースがよいと判断され、最後に結合結果A、
C(’B)とテーブルBについて検討し、やはり■のケ
ースがよいと判断されたのでそのようにした、としてい
る。In Figure 5, tables A and B are taken up (A, C1B, and C
(Although it is possible to choose any two as they are the same), as a result of cost calculations, it was determined that case (■) is better. Next, we will consider semi-join result A (B) and table C, and it is determined that case ■ is better, and finally join result A,
After considering C('B) and table B, it was determined that the case of ■ was the best choice, so that was the case.
この場合のデータ転送量はV (A) +V(b)+V
(AKB)+V (C)+V ((AKB)閃C)+V
(B)であり、計算機内部処理量はにl子図2十閃3
である。但し本発明ではこれらの総和は求める必要がな
(、最終結果A、B、Cの結合を求める迄の各ステップ
における2テ一ブル間の結合を■、■、■のどれで行な
うのが最適かを検討するだけである。The amount of data transferred in this case is V (A) + V (b) + V
(AKB)+V (C)+V ((AKB) Flash C)+V
(B), and the amount of internal processing of the computer is
It is. However, in the present invention, it is not necessary to calculate these sums (it is best to use ■, ■, or All you have to do is consider whether or not.
これに対して従来方式では全体について検討するので上
記データ転送量と計算機内部処理量の総和(詳しくはこ
れにデータ入出力に要する処理量も入る)を求め、テー
ブルと部分結果の組合せも各種各様あるのでその組合せ
の全てにつき全体のコスト計算をし、どの組合せが最適
かを決定していた。On the other hand, in the conventional method, the whole is considered, so the sum of the above data transfer amount and the computer's internal processing amount (more specifically, the processing amount required for data input/output is included in this) is calculated, and various combinations of tables and partial results are also used. Since there are various combinations, we calculated the overall cost for all of the combinations and decided which combination was optimal.
以上説明したように本発明では、複数の電算機とそれら
をつなぐ通信路ネットワーク上に作成された分散データ
ベース管理システムにおいて、利用者によって入力され
た問合せを各電算機上で実行される部分間合せ群に分解
する際、最適化として、1つ1つの結合演算を省略する
か、準結合で行なうか、結合で行なうかを決めるのであ
るが、その際、全体的なコスト計算を行なうのではなく
、注目している1つの結合に関与する部分のみを見てコ
スト計算を行なって処理方法を決定するので、コスト計
算が単純になり、処理方法を迅速に決定できる利点があ
る。As explained above, in the present invention, in a distributed database management system created on a plurality of computers and a communication channel network connecting them, a query input by a user is processed by partial matching executed on each computer. When decomposing into groups, the optimization is to decide whether to omit, semi-combine, or combine each join operation, but instead of calculating the overall cost, Since the cost calculation is performed to determine the processing method by looking at only the parts involved in the one connection of interest, there is an advantage that the cost calculation is simple and the processing method can be determined quickly.
第1図〜第5図は本発明の説明図、第6図はテーブルの
例を示す図、第7図は結合の説明図、第8図は準結合の
説明図である。1 to 5 are explanatory diagrams of the present invention, FIG. 6 is a diagram showing an example of a table, FIG. 7 is an explanatory diagram of a join, and FIG. 8 is an explanatory diagram of a semi-join.
Claims (1)
成された分散データベース管理システムにおいて利用者
によって入力された、複数のデータベースの結合を含む
問合せを、各電算機上で実行する部分間合せ群に分解す
る際行なわれる部分間合せ最適化方式において、 各電算機上で実行する部分間合せを、各々データベース
又は処理結果を持つ2台の電算機についての(1)とり
あえず結合を省略しておいて、後に結合する、(2)と
りあえず準結合で処理しておいて、後に結合する、(3
)初めから結合を行なってしまう、のいずれかとしてそ
れぞれのコスト計算をし、コスト最小のものを実行し、 その処理結果を持つ電算機と、他のデータベースを持つ
電算機との間で上記(1)、(2)、(3)のケースの
コスト計算をし、コスト最小のものを実行し、以下同様
処理を逐次利用者問合せに対する解答が得られるまで行
なうようにすることを特徴とする部分間合せ最適化方式
。[Claims] In a distributed database management system created on a plurality of computers and a communication path network connecting them, an inquiry including a combination of a plurality of databases input by a user is executed on each computer. In the sub-alignment optimization method that is used when decomposing the sub-alignments into groups of sub-alignments, the sub-alignments executed on each computer are combined (1) for the time being between two computers, each with its own database or processing results. (2) For now, process it as a semi-join and then combine it later. (3)
) Perform the join from the beginning, calculate the cost of each, execute the one with the lowest cost, and connect the computer with the processing result with the computer with the other database ( The part characterized in that the costs are calculated for the cases 1), (2), and (3), the one with the lowest cost is executed, and the same process is performed sequentially until an answer to the user inquiry is obtained. Time optimization method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60198762A JPS6258332A (en) | 1985-09-09 | 1985-09-09 | Optimizing system for partial inquiry of decentralized data base control system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60198762A JPS6258332A (en) | 1985-09-09 | 1985-09-09 | Optimizing system for partial inquiry of decentralized data base control system |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS6258332A true JPS6258332A (en) | 1987-03-14 |
Family
ID=16396521
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP60198762A Pending JPS6258332A (en) | 1985-09-09 | 1985-09-09 | Optimizing system for partial inquiry of decentralized data base control system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS6258332A (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1040314A (en) * | 1996-07-24 | 1998-02-13 | Nec Corp | Display device for spread sheet |
JP2000112982A (en) * | 1998-10-07 | 2000-04-21 | Ricoh Co Ltd | Different kind of data base integration system |
JP2010176319A (en) * | 2009-01-28 | 2010-08-12 | Toshiba Corp | Structured document-retrieving system, device, and method |
JP2011198320A (en) * | 2010-03-24 | 2011-10-06 | Nec Corp | Data linkage definition creating device |
JP2012113373A (en) * | 2010-11-20 | 2012-06-14 | Nomura Research Institute Ltd | Program development support system and data utilization system |
JP2013003695A (en) * | 2011-06-14 | 2013-01-07 | Toshiba Corp | Distributed database retrieval device, distributed database retrieval method and program |
-
1985
- 1985-09-09 JP JP60198762A patent/JPS6258332A/en active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1040314A (en) * | 1996-07-24 | 1998-02-13 | Nec Corp | Display device for spread sheet |
JP2000112982A (en) * | 1998-10-07 | 2000-04-21 | Ricoh Co Ltd | Different kind of data base integration system |
JP2010176319A (en) * | 2009-01-28 | 2010-08-12 | Toshiba Corp | Structured document-retrieving system, device, and method |
JP2011198320A (en) * | 2010-03-24 | 2011-10-06 | Nec Corp | Data linkage definition creating device |
JP2012113373A (en) * | 2010-11-20 | 2012-06-14 | Nomura Research Institute Ltd | Program development support system and data utilization system |
JP2013003695A (en) * | 2011-06-14 | 2013-01-07 | Toshiba Corp | Distributed database retrieval device, distributed database retrieval method and program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3526585B2 (en) | Query Processing Optimization Method for Distributed Database | |
Pinto et al. | Assembly line balancing with processing alternatives: an application | |
Kumar et al. | Process innovation methods on business process reengineering | |
Kilincci | A Petri net-based heuristic for simple assembly line balancing problem of type 2 | |
US6850927B1 (en) | Evaluating queries with outer joins by categorizing and processing combinations of relationships between table records | |
Fan et al. | Review and classification of hybrid shop scheduling | |
JPS6258332A (en) | Optimizing system for partial inquiry of decentralized data base control system | |
CN110674163A (en) | Heterogeneous data query system and method based on BS framework | |
Göhnert et al. | A workbench to construct and re-use network analysis workflows: Concept, implementation, and example case | |
CN115249123A (en) | Intelligent scheduling method and system for flexible manufacturing system based on hill climbing method | |
Carrie | The layout of multi-product lines | |
JPH05225250A (en) | Table coupling system for relational data base | |
CN109359851A (en) | A kind of task processing method based on micro- assistance the superior and the subordinate office group | |
CN110111203A (en) | Batch process, device and the electronic equipment of business datum | |
Cheng et al. | Single machine group scheduling with two ordered criteria | |
TW200426639A (en) | System and method for electronic case management | |
CN109284935A (en) | A kind of task processing system based on micro- assistance the superior and the subordinate office group | |
JP2001331485A (en) | Distributed data base arithmetic processor | |
Perrizo | A method for processing distributed database queries | |
CN110175813A (en) | A kind of coordinated operation system based on mine Life cycle operation flow | |
JP2880177B2 (en) | Logical communication path control method between programs | |
Chen et al. | Multi-resource constrained scheduling considering process plan flexibility and lot streaming for the CNC machining industry | |
CN117874542B (en) | Big data-based result conversion supply and demand matching method, device, equipment and medium | |
Krishnaiah Chetty et al. | Modelling, simulation and scheduling of flexible assembly systems with coloured Petri nets | |
Trittmann | The organic and the mechanistic form of managing knowledge in software development |