JP5731332B2 - Apparatus and method for calculating transaction processing time - Google Patents

Apparatus and method for calculating transaction processing time Download PDF

Info

Publication number
JP5731332B2
JP5731332B2 JP2011194732A JP2011194732A JP5731332B2 JP 5731332 B2 JP5731332 B2 JP 5731332B2 JP 2011194732 A JP2011194732 A JP 2011194732A JP 2011194732 A JP2011194732 A JP 2011194732A JP 5731332 B2 JP5731332 B2 JP 5731332B2
Authority
JP
Japan
Prior art keywords
time
rate
record
transaction
lock
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.)
Expired - Fee Related
Application number
JP2011194732A
Other languages
Japanese (ja)
Other versions
JP2013057996A (en
Inventor
大内 二郎
二郎 大内
鈴木 宏一
宏一 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2011194732A priority Critical patent/JP5731332B2/en
Publication of JP2013057996A publication Critical patent/JP2013057996A/en
Application granted granted Critical
Publication of JP5731332B2 publication Critical patent/JP5731332B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、トランザクションの処理時間を算出する装置及び方法に関する。特に、本発明は、目標のトランザクション性能を達成するためのトランザクションのロック待ち時間を除く処理時間を算出する装置及び方法に関する。   The present invention relates to an apparatus and method for calculating transaction processing time. In particular, the present invention relates to an apparatus and method for calculating a processing time excluding a transaction lock waiting time for achieving a target transaction performance.

待ち行列モデルを利用した情報処理技術として、例えば特許文献1〜5の技術がある。
特許文献1の技術では、平均処理時間とデータ件数とに関する条件が設定され、各条件のときに競合回避方式とポインタ方式のいずれのアクセス方式を選択するかが規定されたアクセス制御テーブルを、M/M/1モデルで検証することによって決定する。
As information processing technology using a queue model, for example, there are technologies of Patent Documents 1 to 5.
In the technique of Patent Document 1, conditions relating to the average processing time and the number of data are set, and an access control table that defines which access method of the contention avoidance method and the pointer method is selected for each condition is defined as M Determined by verifying with the / M / 1 model.

特許文献2の技術では、データストリームj中のデータを2次バッファへの退避なしに1次バッファに蓄積するための領域のサイズBjを、多元M/M/1型の近似を行うことで近似表現された、1次バッファから2次バッファへのデータの退避処理における待ち合わせ時間w1jと、2次バッファから1次バッファへのデータの復帰処理における待ち合わせ時間w2jとを用いて、設定する。   In the technique of Patent Document 2, the size Bj of the area for accumulating data in the data stream j in the primary buffer without saving to the secondary buffer is approximated by performing multi-element M / M / 1 type approximation. The expressed waiting time w1j in the data saving process from the primary buffer to the secondary buffer and the waiting time w2j in the data restoration process from the secondary buffer to the primary buffer are set.

特許文献3の技術は、システム内に存在する任意のオブジェクトに対する複製データの一貫性を集中管理する放送局サイトと、任意のオブジェクトに対する複製データをそれぞれ有し、超多地点に分散している複数のDBサイトと、更新を許可するか否かの情報等を放送局サイトから各DBサイトに放送により配信するための衛星とを含む分散型データベースシステムにおいて、M/M/1型待ち行列でモデル化することにより、各DBサイト、放送局サイトおよび衛星間のアクセス動作シーケンスの全処理時間Eallの値を評価することを開示する。   The technique of Patent Document 3 has a broadcasting station site that centrally manages the consistency of replicated data for arbitrary objects existing in the system, and a plurality of distributed data distributed over super multi-points, each having replicated data for arbitrary objects. Model in an M / M / 1 type queue in a distributed database system including a DB site and a satellite for broadcasting information about whether or not to permit updating from the broadcasting station site to each DB site. It is disclosed that the value of the total processing time Eall of the access operation sequence between each DB site, broadcasting station site, and satellite is evaluated.

特許文献4の技術は、負荷発生部が、複数のトランザクションを発生し、トランザクション処理部が、その複数のトランザクションを処理し、コンピュータが、単位時間辺りに発生する割合で各トランザクションの処理要求数を少量から段階的に増加させて処理要求を実行させ、各段階において、トランザクションの処理時間とトランザクションの処理要求数とから待ち行列モデル理論を利用してトランザクションの平均処理待ち時間を計算し、平均処理待ち時間と実際の処理待ち時間の差が大きい場合に、ファイルロックの競合の発生の有無を調べる性能劣化要因検出システムを開示する。   In the technique of Patent Document 4, the load generation unit generates a plurality of transactions, the transaction processing unit processes the plurality of transactions, and the computer calculates the number of processing requests for each transaction at a rate generated per unit time. Process requests are executed in small increments starting from a small amount. At each stage, the average processing wait time of transactions is calculated from the transaction processing time and the number of transaction processing requests using queuing model theory. Disclosed is a performance degradation factor detection system that checks whether or not file lock contention occurs when the difference between the waiting time and the actual processing waiting time is large.

特許文献5の技術では、一方のデータベースが故障した時、他方のデータベースが未だアクティブでなければ、それが直ちにアクティブ状態に再割り当てされ、その故障中の後続の照会及び更新を処理し続ける。その故障したデータベースが修復され再開される時、すべてのレコードがそこからフラッシュされ、その故障したデータベースは、アクティブ・データベースを通した単一パスにおけるインターリーブした複写及び更新オペレーションを使用して再構成される。後続のトランザクション及び複写オペレーションは、後続のトランザクションの数が増加したことに応答して複写オペレーションを抑制するために、待ち行列閾値法に従ってインターリーブされる。トランザクション処理システムは、故障中及び回復活動中の両方とも動作状態のままであり、ダウン時間なしに完全な回復を得る。   In the technique of Patent Document 5, when one database fails, if the other database is not yet active, it is immediately reassigned to the active state and continues to process subsequent queries and updates during that failure. When the failed database is repaired and restarted, all records are flushed from it, and the failed database is reconstructed using interleaved copy and update operations in a single pass through the active database. The Subsequent transactions and copy operations are interleaved according to a queue threshold method to suppress copy operations in response to an increase in the number of subsequent transactions. The transaction processing system remains operational both during failures and recovery activities, and obtains full recovery without downtime.

特開2002−351726号公報JP 2002-351726 A 特開平10−200574号公報Japanese Patent Laid-Open No. 10-200574 特開平11−234269号公報Japanese Patent Laid-Open No. 11-234269 特開2006−252176号公報JP 2006-252176 A 特開平7−262068号公報JP 7-262068 A

ところで、トランザクション処理のスループットを決める大きな要因に、処理の並列度を阻害する特定資源への競合がある。中でも、データベースを更新する際の排他制御によるロック待ちが課題である。例えば、特定人気商品のデータベースレコードにロックが集中する場合、スループットはそのデータベースレコードへのロック競合状態に支配される。また、1つのトランザクションでロックが1つのレコードではなく複数のレコードに集中する場合、スループットを向上させることは更に困難となる。   By the way, a major factor that determines the throughput of transaction processing is competition for specific resources that hinder the parallelism of processing. In particular, waiting for lock by exclusive control when updating a database is a problem. For example, when locks are concentrated on a database record of a specific popular product, the throughput is controlled by a lock contention state on the database record. Further, when locks are concentrated on a plurality of records instead of one record in one transaction, it becomes more difficult to improve the throughput.

このような厳しいロック競合を前提としたシステムにおいて、目標のスループットを満足するためのトランザクションの処理時間を求めるのは容易ではない。1つのレコードでロック競合が起こる場合は、ロック待ち時間を考慮しなければ、単純にスループットの逆数から処理時間の限界値が分かる。例えば1秒当たり50トランザクションのスループットを達成するには、ロック待ち時間を除く処理時間が20ミリ秒を超えないようにすればよい。
これに対し、2つのレコードでロック競合が起こる場合は、一方のレコードのロックを保持しつつ他方のレコードのロック待ちも想定しなければならない。従って、ロック待ち時間を無視した単純計算では処理時間の限界値は求められない。
In a system based on such severe lock contention, it is not easy to obtain the transaction processing time for satisfying the target throughput. If lock contention occurs in one record, the limit value of the processing time can be found from the reciprocal of the throughput without considering the lock waiting time. For example, in order to achieve a throughput of 50 transactions per second, the processing time excluding the lock waiting time should not exceed 20 milliseconds.
On the other hand, when lock contention occurs between two records, it must be assumed that the lock of one record is held while the lock of the other record is held. Therefore, the limit value of the processing time cannot be obtained by simple calculation ignoring the lock waiting time.

ここで、上述したように、情報処理の分野で待ち行列モデルを利用することは既に行われていた。
しかしながら、特許文献1〜5の何れの技術も、1つのトランザクションで2つのレコードのロックが必要な場合において、目標のスループットを満足するためのトランザクションのロック待ち時間を除く処理時間を求める手法を開示するものではない。
Here, as described above, a queuing model has already been used in the field of information processing.
However, any of the techniques disclosed in Patent Documents 1 to 5 discloses a method for obtaining a processing time excluding a transaction lock waiting time for satisfying a target throughput when two records are locked in one transaction. Not what you want.

本発明の目的は、1つのトランザクションで2つのレコードのロックが必要な場合において、目標の性能を達成するためのトランザクションのロック待ち時間を除く処理時間を求めることにある。   An object of the present invention is to obtain a processing time excluding a transaction lock waiting time for achieving a target performance when two records need to be locked in one transaction.

かかる目的のもと、本発明は、目標のトランザクション性能を達成するためのトランザクションのロック待ち時間を除く処理時間を算出する装置であって、第1のレコードを含む少なくとも2つのレコードを更新するトランザクションのレートである第1のレートと、第2のレコードを含む少なくとも2つのレコードを更新するトランザクションのレートである第2のレートと、第1のレコード及び第2のレコードを含む少なくとも2つのレコードを更新するトランザクションのレートである第3のレートとを取得するレート取得部と、トランザクションの目標の応答時間を取得する応答時間取得部と、応答時間取得部により取得された応答時間のうちの第1のレコードのロック待ち時間である第1の待ち時間及び第1のレコードのロック保持時間である第1の保持時間をそれぞれM/M/1待ち行列モデルのサービス待ち時間及びサービス時間として、M/M/1待ち行列モデルの第1段階の適用を行うことにより、レート取得部により取得された第1のレートと、応答時間取得部により取得された応答時間とに基づいて、第1の保持時間を算出する第1の算出部と、第1の算出部により算出された第1の保持時間のうちの第2のレコードのロック待ち時間である第2の待ち時間及び第2のレコードのロック保持時間である第2の保持時間をそれぞれM/M/1待ち行列モデルのサービス待ち時間及びサービス時間として、M/M/1待ち行列モデルの第2段階の適用を行うことにより、レート取得部により取得された第2のレート及び第3のレートと、第1の算出部により算出された第1の保持時間とに基づいて、第2の保持時間を算出する第2の算出部と、第2の算出部により算出された第2の保持時間を出力する出力部とを含む、装置を提供する。   For this purpose, the present invention is an apparatus for calculating a processing time excluding a transaction lock waiting time for achieving a target transaction performance, and is a transaction for updating at least two records including a first record. A first rate that is a rate of the second record, a second rate that is a rate of a transaction that updates at least two records that include the second record, and at least two records that include the first record and the second record. A rate acquisition unit that acquires a third rate that is the rate of the transaction to be updated, a response time acquisition unit that acquires a target response time of the transaction, and a first of the response times acquired by the response time acquisition unit The first waiting time which is the lock waiting time of the record of the first record and the lock keeping of the first record By applying the first stage of the M / M / 1 queuing model with the first holding time being the time as the service waiting time and service time of the M / M / 1 queuing model, respectively, the rate acquisition unit Based on the acquired first rate and the response time acquired by the response time acquisition unit, a first calculation unit that calculates the first holding time, and the first calculation unit calculated by the first calculation unit The second waiting time that is the lock waiting time of the second record and the second holding time that is the lock holding time of the second record in the holding time of the M / M / 1 queue model As the time and service time, the second rate and the third rate acquired by the rate acquisition unit and the first calculation unit are calculated by applying the second stage of the M / M / 1 queuing model. A second calculating unit that calculates a second holding time based on the first holding time and an output unit that outputs the second holding time calculated by the second calculating unit, Providing the device.

ここで、第1の算出部は、式

Figure 0005731332
を用いて、第1の保持時間を算出し、第2の算出部は、式
Figure 0005731332
を用いて、第2の保持時間を算出する、ものであってよい(Raは第1のレートであり、Rbは第2のレートであり、Rabは第3のレートであり、Trespは応答時間であり、Tsaは第1の保持時間であり、Tsbは第2の保持時間である)。 Here, the first calculation unit has the formula
Figure 0005731332
Is used to calculate the first holding time, and the second calculating unit
Figure 0005731332
To calculate the second holding time (Ra is the first rate, Rb is the second rate, Rab is the third rate, and Tresp is the response time. Tsa is the first holding time and Tsb is the second holding time).

また、本発明は、目標のトランザクション性能を達成するためのトランザクションのロック待ち時間を除く処理時間を算出する装置であって、第1のレコードを更新するトランザクションのレートである第1のレートと、第2のレコードを更新するトランザクションのレートである第2のレートと、第1のレコード及び第2のレコードを更新するトランザクションのレートである第3のレートとを取得するレート取得部と、トランザクションの目標の応答時間を取得する応答時間取得部と、第1のレコードのロック待ち時間である第1の待ち時間及び第1のレコードのロック保持時間である第1の保持時間をそれぞれM/M/1待ち行列モデルのサービス待ち時間及びサービス時間として、M/M/1待ち行列モデルの第1段階の適用を行い、第2のレコードのロック待ち時間である第2の待ち時間及び第2のレコードのロック保持時間である第2の保持時間をそれぞれM/M/1待ち行列モデルのサービス待ち時間及びサービス時間として、M/M/1待ち行列モデルの第2段階の適用を行うことにより、レート取得部により取得された第1のレート、第2のレート及び第3のレートと、応答時間取得部により取得された応答時間とに基づいて、第2の保持時間を算出する算出部と、算出部により算出された第2の保持時間を出力する出力部とを含む、装置も提供する。   Further, the present invention is an apparatus for calculating a processing time excluding a transaction lock waiting time for achieving a target transaction performance, wherein a first rate that is a transaction rate for updating a first record; A rate acquisition unit that acquires a second rate that is a transaction rate for updating the second record, and a third rate that is a transaction rate for updating the first record and the second record; A response time acquisition unit that acquires a target response time, a first waiting time that is a lock waiting time of the first record, and a first holding time that is a lock holding time of the first record are M / M / The first stage of the M / M / 1 queuing model is applied as the service waiting time and service time of the one queuing model. The second waiting time that is the lock waiting time of the second record and the second holding time that is the lock holding time of the second record are the service waiting time and service time of the M / M / 1 queue model, respectively. By applying the second stage of the M / M / 1 queuing model, the first rate, the second rate, and the third rate acquired by the rate acquisition unit, and the response time acquisition unit An apparatus is also provided that includes a calculating unit that calculates a second holding time based on the response time, and an output unit that outputs the second holding time calculated by the calculating unit.

ここで、算出部は、式

Figure 0005731332
を用いて、第2の保持時間を算出する、ものであってよい(Raは第1のレートであり、Rbは第2のレートであり、Rabは第3のレートであり、Trespは応答時間であり、Tsbは第2の保持時間である)。 Here, the calculation unit uses the formula
Figure 0005731332
To calculate the second holding time (Ra is the first rate, Rb is the second rate, Rab is the third rate, and Tresp is the response time. And Tsb is the second retention time).

また、算出部は、M/M/1待ち行列モデルの第1段階の適用を行うことにより、レート取得部により取得された第1のレートと、応答時間取得部により取得された応答時間とに基づいて、第1の保持時間を算出する第1の算出部と、M/M/1待ち行列モデルの第2段階の適用を行うことにより、レート取得部により取得された第2のレート及び第3のレートと、第1の算出部により算出された第1の保持時間とに基づいて、第2の保持時間を算出する第2の算出部とを含む、ものであってもよい。   In addition, the calculation unit applies the first stage of the M / M / 1 queuing model to obtain the first rate acquired by the rate acquisition unit and the response time acquired by the response time acquisition unit. Based on the first calculation unit for calculating the first holding time and the second stage of the M / M / 1 queuing model, the second rate acquired by the rate acquisition unit and the second rate And a second calculation unit that calculates the second holding time based on the third rate and the first holding time calculated by the first calculation unit.

或いは、算出部は、M/M/1待ち行列モデルの第1段階の適用を行うことにより、レート取得部により取得された第1のレート及び第3のレートと、応答時間取得部により取得された応答時間とに基づいて、第1の保持時間を算出する第1の算出部と、M/M/1待ち行列モデルの第2段階の適用を行うことにより、レート取得部により取得された第2のレートと、第1の算出部により算出された第1の保持時間とに基づいて、第2の保持時間を算出する第2の算出部とを含む、ものであってもよい。   Alternatively, the calculation unit acquires the first rate and the third rate acquired by the rate acquisition unit and the response time acquisition unit by applying the first stage of the M / M / 1 queue model. Based on the response time obtained, the first calculation unit that calculates the first holding time and the second stage of the M / M / 1 queuing model are applied to obtain the first acquired by the rate acquisition unit. And a second calculation unit that calculates the second holding time based on the second rate and the first holding time calculated by the first calculation unit.

更に、本発明は、コンピュータが、目標のトランザクション性能を達成するためのトランザクションのロック待ち時間を除く処理時間を算出する方法であって、コンピュータが、第1のレコードを更新するトランザクションのレートである第1のレートと、第2のレコードを更新するトランザクションのレートである第2のレートと、第1のレコード及び第2のレコードを更新するトランザクションのレートである第3のレートとを取得するステップと、コンピュータが、トランザクションの目標の応答時間を取得するステップと、コンピュータが、第1のレコードのロック待ち時間である第1の待ち時間及び第1のレコードのロック保持時間である第1の保持時間をそれぞれM/M/1待ち行列モデルのサービス待ち時間及びサービス時間として、M/M/1待ち行列モデルの第1段階の適用を行い、第2のレコードのロック待ち時間である第2の待ち時間及び第2のレコードのロック保持時間である第2の保持時間をそれぞれM/M/1待ち行列モデルのサービス待ち時間及びサービス時間として、M/M/1待ち行列モデルの第2段階の適用を行うことにより、第1のレートと、第2のレートと、第3のレートと、応答時間とに基づいて、第2の保持時間を算出するステップと、コンピュータが、算出された第2の保持時間を出力するステップとを含む、方法も提供する。   Furthermore, the present invention is a method in which a computer calculates a processing time excluding a transaction lock latency time to achieve a target transaction performance, and the computer is a transaction rate at which a first record is updated. Obtaining a first rate, a second rate that is a rate of a transaction for updating the second record, and a third rate that is a rate of a transaction for updating the first record and the second record. And a computer obtaining a target response time of the transaction, and a first hold time that is a lock waiting time of the first record and a lock holding time of the first record. Service waiting time and service time of M / M / 1 queuing model respectively Then, the first stage of the M / M / 1 queuing model is applied, the second waiting time that is the lock waiting time of the second record, and the second holding that is the lock holding time of the second record. By applying the second stage of the M / M / 1 queuing model, where time is the service latency and service time of the M / M / 1 queuing model, respectively, the first rate, the second rate, A method is also provided that includes calculating a second hold time based on the third rate and the response time, and a computer outputting the calculated second hold time.

更にまた、本発明は、目標のトランザクション性能を達成するためのトランザクションのロック待ち時間を除く処理時間を算出する装置としてコンピュータを機能させるプログラムであって、コンピュータを、第1のレコードを更新するトランザクションのレートである第1のレートと、第2のレコードを更新するトランザクションのレートである第2のレートと、第1のレコード及び第2のレコードを更新するトランザクションのレートである第3のレートとを取得するレート取得部と、トランザクションの目標の応答時間を取得する応答時間取得部と、応答時間取得部により取得された応答時間のうちの第1のレコードのロック待ち時間である第1の待ち時間及び第1のレコードのロック保持時間である第1の保持時間をそれぞれM/M/1待ち行列モデルのサービス待ち時間及びサービス時間として、M/M/1待ち行列モデルの第1段階の適用を行うことにより、レート取得部により取得された第1のレートと、応答時間取得部により取得された応答時間とに基づいて、第1の保持時間を算出する第1の算出部と、第1の算出部により算出された第1の保持時間のうちの第2のレコードのロック待ち時間である第2の待ち時間及び第2のレコードのロック保持時間である第2の保持時間をそれぞれM/M/1待ち行列モデルのサービス待ち時間及びサービス時間として、M/M/1待ち行列モデルの第2段階の適用を行うことにより、レート取得部により取得された第2のレート及び第3のレートと、第1の算出部により算出された第1の保持時間とに基づいて、第2の保持時間を算出する第2の算出部と、第2の算出部により算出された第2の保持時間を出力する出力部として機能させる、プログラムも提供する。   Furthermore, the present invention provides a program for causing a computer to function as a device for calculating a processing time excluding a transaction lock waiting time for achieving a target transaction performance, wherein the computer updates a first record. A first rate that is the rate of the second record, a second rate that is the rate of the transaction that updates the second record, and a third rate that is the rate of the transaction that updates the first record and the second record A rate acquisition unit that acquires a response time, a response time acquisition unit that acquires a target response time of a transaction, and a first waiting time that is a lock waiting time of the first record among the response times acquired by the response time acquisition unit The first holding time, which is the time and the lock holding time of the first record, is M / M By applying the first stage of the M / M / 1 queue model as the service waiting time and service time of one queue model, the first rate acquired by the rate acquiring unit and the response time acquiring unit Based on the acquired response time, the first calculation unit that calculates the first holding time, and the lock waiting time of the second record of the first holding time calculated by the first calculation unit M / M / 1 queuing model, where the second waiting time and the second holding time that is the lock holding time of the second record are respectively the service waiting time and service time of the M / M / 1 queue model By applying the second stage, the second rate and the third rate acquired by the rate acquisition unit, and the first holding time calculated by the first calculation unit, the second rate is obtained. Maintenance A second calculation unit for calculating a time to function as an output unit for outputting a second retention time calculated by the second calculation unit, also provides programs.

本発明によれば、1つのトランザクションで2つのレコードのロックが必要な場合において、目標の性能を達成するためのトランザクションのロック待ち時間を除く処理時間を求めることができる。   According to the present invention, when it is necessary to lock two records in one transaction, it is possible to obtain a processing time excluding the transaction lock waiting time for achieving the target performance.

本発明の実施の形態における目標のスループットを満たすためのトランザクション処理時間の算出方法について説明するための図である。It is a figure for demonstrating the calculation method of the transaction processing time for satisfy | filling the target throughput in embodiment of this invention. 本発明の実施の形態における処理時間算出装置の機能構成例を示したブロック図である。It is the block diagram which showed the function structural example of the processing time calculation apparatus in embodiment of this invention. 本発明の実施の形態における処理時間算出装置の動作例を示したフローチャートである。It is the flowchart which showed the operation example of the processing time calculation apparatus in embodiment of this invention. 本発明の実施の形態における処理時間算出装置の処理結果の具体例を示した図である。It is the figure which showed the specific example of the processing result of the processing time calculation apparatus in embodiment of this invention. 本発明の実施の形態を適用可能なコンピュータのハードウェア構成を示した図である。It is the figure which showed the hardware constitutions of the computer which can apply embodiment of this invention.

以下、添付図面を参照して、本発明の実施の形態について詳細に説明する。
本実施の形態では、待ち行列理論におけるサーバ、サービス時間、サービス待ち時間を、それぞれ、ロック競合におけるロック対象レコード、ロック保持時間、ロック待ち時間として、特定レコードを1つのサーバとするM/M/1待ち行列モデル(以下、単に「M/M/1モデル」という)をロック競合に適用する。
具体的には、1つのトランザクションで2つのレコードのロックを保持することが必要となる場合において、1番目のロック及び2番目のロックに2段階にM/M/1モデルを適用する。これにより、与えられたトランザクションスループットを出すためのロック待ち時間を除いた純粋なトランザクション処理時間の上限を求める。
Embodiments of the present invention will be described below in detail with reference to the accompanying drawings.
In this embodiment, the server, service time, and service wait time in the queue theory are used as a lock target record, lock holding time, and lock wait time in lock contention, respectively. A one-queue model (hereinafter simply referred to as “M / M / 1 model”) is applied to lock contention.
Specifically, when it is necessary to hold two record locks in one transaction, the M / M / 1 model is applied to the first lock and the second lock in two stages. Thus, the upper limit of the pure transaction processing time excluding the lock waiting time for obtaining a given transaction throughput is obtained.

そのために、本実施の形態では、まず、トランザクションで更新される2つのレコードがレコードA及びレコードBであるものとし、トランザクションを以下の3つのタイプに分類する。
第1のタイプは、レコードAと、レコードB以外のレコードとを更新するトランザクションのタイプである。本実施の形態では、このタイプのトランザクションを「トランザクション[A−B]」と表記する。
第2のタイプは、レコードAと、レコードBとを更新するトランザクションのタイプである。本実施の形態では、このタイプのトランザクションを「トランザクション[A&B]」と表記する。
第3のタイプは、レコードA以外のレコードと、レコードBとを更新するトランザクションのタイプである。本実施の形態では、このタイプのトランザクションを「トランザクション[B−A]」と表記する。
尚、1つのトランザクション内では、デッドロックの発生を避けるために、2つのレコードをレコードキーが小さい方から更新することにする。例えば、レコードA及びレコードBについては、レコードAの方がレコードキーが小さいものとし、レコードA、レコードBの順番で更新するものとする。
Therefore, in this embodiment, first, two records updated in a transaction are assumed to be a record A and a record B, and the transactions are classified into the following three types.
The first type is a transaction type for updating record A and records other than record B. In the present embodiment, this type of transaction is referred to as “transaction [AB]”.
The second type is a transaction type for updating record A and record B. In this embodiment, this type of transaction is referred to as “transaction [A & B]”.
The third type is a transaction type for updating a record other than the record A and the record B. In this embodiment, this type of transaction is referred to as “transaction [BA]”.
In one transaction, in order to avoid the occurrence of deadlock, two records are updated from the one with the smallest record key. For example, for record A and record B, record A has a smaller record key and is updated in the order of record A and record B.

また、本実施の形態では、レコードA、BのロックをそれぞれロックA、Bとし、以下の要件を与える。
第1の要件は、トランザクションのレスポンスタイムである。これには、ロックAの待ち時間及びロックBの待ち時間が含まれる。本実施の形態では、このトランザクションレスポンスタイムをTrespと表記する。
第2の要件は、ロックAを取得するトランザクションのトランザクションレートである。本実施の形態では、このトランザクションレートをRaと表記する。
第3の要件は、ロックBを取得するトランザクションのトランザクションレートである。本実施の形態では、このトランザクションレートをRbと表記する。
第4の要件は、ロックA及びロックBを取得するトランザクションのトランザクションレートである。本実施の形態では、このトランザクションレートをRabと表記する。
また、第3の要件及び第4の要件から、ロックBを取得するトランザクションのうち、ロックAを取得しないトランザクションの比率を求めておく。本実施の形態では、この比率をrと表記する。比率rは、次の式により算出される。

Figure 0005731332
In this embodiment, the records A and B are locked as locks A and B, respectively, and the following requirements are given.
The first requirement is the transaction response time. This includes lock A latency and lock B latency. In this embodiment, this transaction response time is expressed as Tresp.
The second requirement is the transaction rate of the transaction that acquires lock A. In this embodiment, this transaction rate is expressed as Ra.
The third requirement is the transaction rate of the transaction for acquiring lock B. In this embodiment, this transaction rate is expressed as Rb.
The fourth requirement is the transaction rate of the transaction for acquiring lock A and lock B. In this embodiment, this transaction rate is expressed as Rab.
Further, from the third requirement and the fourth requirement, the ratio of transactions that do not acquire lock A among transactions that acquire lock B is obtained. In this embodiment, this ratio is expressed as r. The ratio r is calculated by the following formula.
Figure 0005731332

図1は、与えられたトランザクションスループットを満たすための純粋なトランザクション処理時間の上限を算出する方法について模式的に示した図である。尚、本実施の形態では、各トランザクションが2つのレコードを更新するものとして説明するが、3つ以上のレコードを更新するものであってもよい。但し、レコードA及びレコードB以外のレコードでは競合が起こらないものとする。   FIG. 1 is a diagram schematically showing a method for calculating an upper limit of a pure transaction processing time for satisfying a given transaction throughput. In this embodiment, each transaction is described as updating two records. However, three or more records may be updated. However, it is assumed that no conflict occurs in records other than record A and record B.

図中、太矢印201は、トランザクション[A−B]がロックAを取得しようとしていることを示す。トランザクション[A−B]のトランザクションレートは、太矢印201内に示すようにRa-Rabである。このトランザクション[A−B]は、破線矢印221で示すように、ロックAの待ち時間Twaだけ処理を待たされた後、細矢印241で示すように、ロックAを取得して、ロックAの保持時間Tsaの間、処理を行う。   In the figure, a thick arrow 201 indicates that transaction [A-B] is about to acquire lock A. The transaction rate of the transaction [A-B] is Ra-Rab as shown in the thick arrow 201. This transaction [A-B] waits for processing for the waiting time Twa of lock A as indicated by a broken line arrow 221, and then acquires lock A and holds lock A as indicated by a thin arrow 241. Process for time Tsa.

また、太矢印202は、トランザクション[A&B]がロックAを取得しようとしていることを示す。トランザクション[A&B]のトランザクションレートは、太矢印202内に示すようにRabである。このトランザクション[A&B]は、破線矢印221で示すように、ロックAの待ち時間Twaだけ処理を待たされた後、ロックAを取得して、ロックAの保持時間Tsaの間、処理を行う。その際、トランザクション[A&B]は、ロックAを取得してから時間tの経過後、細矢印261で示すようにロックBを要求し、破線矢印222で示すようにロックBを待たされた後、細矢印242で示すようにロックBを取得して処理を行う。   A thick arrow 202 indicates that transaction [A & B] is about to acquire lock A. The transaction rate of the transaction [A & B] is Rab as shown in the thick arrow 202. This transaction [A & B] waits for the waiting time Twa of the lock A and then acquires the lock A and performs the processing for the holding time Tsa of the lock A, as indicated by the dashed arrow 221. At that time, the transaction [A & B] requests the lock B as indicated by a thin arrow 261 after waiting for the lock B as indicated by a thin arrow 261 after the elapse of time t after acquiring the lock A, and As indicated by the thin arrow 242, the lock B is acquired and processed.

本実施の形態では、このようなトランザクション[A−B]及びトランザクション[A&B]による処理に対して、M/M/1モデルの第1段階の適用を行う。具体的には、ロックAの待ち時間Twa、ロックAの保持時間Tsa、トランザクションレートRaを、それぞれ、待ち行列理論のサービス待ち時間、サービス時間、到着率に当てはめて、ロックAの保持時間Tsaを算出する。尚、ロックAの保持時間Tsaの算出方法については、後で詳しく述べる。   In the present embodiment, the first stage of the M / M / 1 model is applied to such processing by transaction [AB] and transaction [A & B]. Specifically, the lock A hold time Tsa, the lock A hold time Tsa, and the transaction rate Ra are respectively applied to the service wait time, service time, and arrival rate of the queue theory, and the lock A hold time Tsa is set. calculate. The calculation method of the lock A holding time Tsa will be described in detail later.

一方、図中、太矢印203は、トランザクション[B−A]がロックBを取得しようとしていることを示す。トランザクション[B−A]のトランザクションレートは、太矢印203内に示すようにRb-Rabである。このトランザクション[B−A]は、破線矢印222で示すように、ロックBの待ち時間Twbだけ処理を待たされた後、細矢印242で示すように、ロックBを取得して、ロックBの保持時間Tsbの間、処理を行う。   On the other hand, a thick arrow 203 in the figure indicates that transaction [BA] is trying to acquire lock B. The transaction rate of the transaction [B-A] is Rb-Rab as indicated by the thick arrow 203. This transaction [B-A] waits for the lock B waiting time Twb as indicated by the dashed arrow 222, and then acquires the lock B and holds the lock B as indicated by the thin arrow 242. Processing is performed for time Tsb.

本実施の形態では、このようなトランザクション[B−A]による処理に対して、M/M/1モデルの第2段階の適用を行う。具体的には、ロックBの待ち時間Twb、ロックBの保持時間Tsb、トランザクションレートRb-Rabを、それぞれ、待ち行列理論のサービス待ち時間、サービス時間、到着率に当てはめて、ロックBの保持時間Tsbを算出する。このロックBの保持時間Tsbが、レコードA及びレコードBのロックを取得した後の処理時間であり、ロック待ちを除いた純粋なトランザクション処理時間である。尚、ロックBの保持時間Tsbの算出方法については、後で詳しく述べる。   In the present embodiment, the second stage of the M / M / 1 model is applied to such processing by transaction [BA]. Specifically, the lock B holding time Twb, the lock B holding time Tsb, and the transaction rate Rb-Rab are applied to the queuing theory service waiting time, service time, and arrival rate, respectively. Calculate Tsb. The holding time Tsb of the lock B is a processing time after acquiring the locks of the record A and the record B, and is a pure transaction processing time excluding lock waiting. The method for calculating the lock B holding time Tsb will be described in detail later.

図2は、このような処理時間の算出を行う処理時間算出装置10の機能構成例を示したブロック図である。尚、処理時間算出装置10は、コンピュータのCPU90a(図5参照)が処理時間算出用プログラムを例えば磁気ディスク装置90g(図5参照)からメインメモリ90c(図5参照)に読み込んで実行することによってコンピュータ内に実現されるものである。
図示するように、処理時間算出装置10は、競合要件取得部11と、競合分析部12と、競合分析結果記憶部13と、性能要件取得部14と、第1解析部15と、第1解析結果記憶部16と、第2解析部17と、第2解析結果出力部18とを備える。
FIG. 2 is a block diagram illustrating an example of a functional configuration of the processing time calculation apparatus 10 that calculates the processing time. In the processing time calculation device 10, the CPU 90a (see FIG. 5) of the computer reads the processing time calculation program from, for example, the magnetic disk device 90g (see FIG. 5) into the main memory 90c (see FIG. 5) and executes it. It is realized in a computer.
As illustrated, the processing time calculation device 10 includes a competition requirement acquisition unit 11, a competition analysis unit 12, a competition analysis result storage unit 13, a performance requirement acquisition unit 14, a first analysis unit 15, and a first analysis. The result storage unit 16, the second analysis unit 17, and the second analysis result output unit 18 are provided.

競合要件取得部11は、ロックの競合に関する要件(競合要件)を取得する。具体的には、ロックAを取得するトランザクションのトランザクションレートRa、ロックBを取得するトランザクションのトランザクションレートRb、ロックA及びロックBを取得するトランザクションのトランザクションレートRabを取得する。尚、これらの競合要件は、磁気ディスク装置90g(図5参照)にコンピュータが記憶しておいた情報から取得してもよいし、ユーザがキーボード/マウス90i(図5参照)を用いて入力した情報から取得してもよい。本実施の形態では、第1のレコードを含む少なくとも2つのレコードを更新するトランザクションのレートである第1のレート、第1のレコードを更新するトランザクションのレートである第1のレートの一例として、トランザクションレートRaを用いており、第2のレコードを含む少なくとも2つのレコードを更新するトランザクションのレートである第2のレート、第2のレコードを更新するトランザクションのレートである第2のレートの一例として、トランザクションレートRbを用いており、第1のレコード及び第2のレコードを含む少なくとも2つのレコードを更新するトランザクションのレートである第3のレート、第1のレコード及び第2のレコードを更新するトランザクションのレートである第3のレートの一例として、トランザクションレートRabを用いている。また、第1のレートと第2のレートと第3のレートとを取得するレート取得部の一例として、競合要件取得部11を設けている。   The competition requirement acquisition unit 11 acquires a requirement (contention requirement) regarding lock contention. Specifically, the transaction rate Ra of the transaction for acquiring the lock A, the transaction rate Rb of the transaction for acquiring the lock B, and the transaction rate Rab of the transaction for acquiring the lock A and the lock B are acquired. These competing requirements may be obtained from information stored in the computer in the magnetic disk device 90g (see FIG. 5) or input by the user using the keyboard / mouse 90i (see FIG. 5). You may acquire from information. In the present embodiment, as an example of a first rate that is a transaction rate for updating at least two records including the first record and a first rate that is a transaction rate for updating the first record, a transaction As an example of a second rate that is a rate of a transaction that uses a rate Ra and that updates a transaction that updates at least two records including the second record, and a rate that a transaction updates the second record, A transaction rate Rb is used, and a third rate, which is a transaction rate for updating at least two records including the first record and the second record, and a transaction rate for updating the first record and the second record. As an example of a third rate that is a rate, Transaction rate Rab is used. Moreover, the competition requirement acquisition part 11 is provided as an example of the rate acquisition part which acquires a 1st rate, a 2nd rate, and a 3rd rate.

競合分析部12は、競合要件取得部11が取得したトランザクションレートを受け取り、このトランザクションレートに基づいて、ロックBを取得するトランザクションのうちのロックAを取得しないトランザクションの、ロックBを取得するトランザクションに対する比率rを算出する。
競合分析結果記憶部13は、競合分析部12が受け取ったトランザクションレートと、競合分析部12が算出した比率rとを競合分析結果として記憶する。
The contention analysis unit 12 receives the transaction rate acquired by the contention requirement acquisition unit 11, and of the transactions that do not acquire the lock A among the transactions that acquire the lock B based on the transaction rate, for the transaction that acquires the lock B The ratio r is calculated.
The competition analysis result storage unit 13 stores the transaction rate received by the competition analysis unit 12 and the ratio r calculated by the competition analysis unit 12 as a competition analysis result.

性能要件取得部14は、トランザクションの処理性能に関する要件(性能要件)を取得する。具体的には、トランザクションレスポンスタイムTrespを取得する。尚、この性能要件は、磁気ディスク装置90g(図5参照)にコンピュータが記憶しておいた情報から取得してもよいし、ユーザがキーボード/マウス90i(図5参照)を用いて入力した情報から取得してもよい。本実施の形態では、トランザクションの目標の応答時間の一例として、トランザクションレスポンスタイムTrespを用いている。また、目標の応答時間を取得する応答時間取得部の一例として、性能要件取得部14を設けている。   The performance requirement acquisition unit 14 acquires requirements (performance requirements) related to transaction processing performance. Specifically, the transaction response time Tresp is acquired. This performance requirement may be acquired from information stored in the computer in the magnetic disk device 90g (see FIG. 5), or information input by the user using the keyboard / mouse 90i (see FIG. 5). May be obtained from In the present embodiment, a transaction response time Tresp is used as an example of a target response time of a transaction. Moreover, the performance requirement acquisition part 14 is provided as an example of the response time acquisition part which acquires a target response time.

第1解析部15は、ロックAの待ち時間Twa及びロックAの保持時間TsaをM/M/1モデルのサービス待ち時間及びサービス時間としてM/M/1モデルを適用することにより、第1段階のM/M/1解析処理を行う。具体的には、ロックBの待ち時間を含むロックAの保持時間Tsaを、競合分析結果記憶部13に記憶されたトランザクションレートRaと、性能要件取得部14が取得したトランザクションレスポンスタイムTrespとを用いて、算出する。本実施の形態では、第1のレコードのロック待ち時間である第1の待ち時間の一例として、ロックAの待ち時間Twaを用いており、第1のレコードのロック保持時間である第1の保持時間の一例として、ロックAの保持時間Tsaを用いている。また、第1の保持時間を算出する第1の算出部の一例として、第1解析部15を設けている。   The first analysis unit 15 applies the M / M / 1 model as the M / M / 1 model service waiting time and service time using the lock A waiting time Twa and the lock A holding time Tsa as the first stage. M / M / 1 analysis processing is performed. Specifically, the lock A holding time Tsa including the lock B wait time is used by using the transaction rate Ra stored in the competition analysis result storage unit 13 and the transaction response time Tresp acquired by the performance requirement acquisition unit 14. To calculate. In this embodiment, the lock A wait time Twa is used as an example of the first wait time that is the lock wait time of the first record, and the first hold that is the lock hold time of the first record. As an example of the time, the lock A holding time Tsa is used. Moreover, the 1st analysis part 15 is provided as an example of the 1st calculation part which calculates 1st holding time.

第1解析結果記憶部16は、第1段階のM/M/1解析処理の結果を記憶する。具体的には、第1解析部15が算出したロックAの保持時間Tsaを記憶する。   The first analysis result storage unit 16 stores the result of the first stage M / M / 1 analysis process. Specifically, the lock A holding time Tsa calculated by the first analysis unit 15 is stored.

第2解析部17は、ロックBの待ち時間Twb及びロックBの保持時間TsbをM/M/1モデルのサービス待ち時間及びサービス時間としてM/M/1モデルを適用することにより、第2段階のM/M/1解析処理を行う。具体的には、競合要件取得部11及び性能要件取得部14が取得した要件の下で許容されるロックBの保持時間Tsbを、競合分析結果記憶部13に記憶されたトランザクションレートRb及び比率rと、第1解析結果記憶部16に記憶されたロックAの保持時間Tsaとを用いて、算出する。尚、ロックBの保持時間Tsbを算出する際、ロックAの取得からロックBの要求までの時間tは十分小さいものと考え、t = 0とする。本実施の形態では、第2のレコードのロック待ち時間である第2の待ち時間の一例として、ロックBの待ち時間Twbを用いており、第2のレコードのロック保持時間である第2の保持時間の一例として、ロックBの保持時間Tsbを用いている。また、第2の保持時間を算出する第2の算出部の一例として、第2解析部17を設けている。   The second analysis unit 17 applies the M / M / 1 model as the service waiting time and service time of the M / M / 1 model using the lock B waiting time Twb and the lock B holding time Tsb as the second stage. M / M / 1 analysis processing is performed. Specifically, the lock B holding time Tsb allowed under the requirements acquired by the competition requirement acquisition unit 11 and the performance requirement acquisition unit 14 is set to the transaction rate Rb and the ratio r stored in the competition analysis result storage unit 13. And the lock A holding time Tsa stored in the first analysis result storage unit 16. When calculating the lock B holding time Tsb, it is assumed that the time t from the acquisition of the lock A to the request for the lock B is sufficiently small, and t = 0. In this embodiment, the lock B wait time Twb is used as an example of the second wait time that is the lock wait time of the second record, and the second hold that is the lock hold time of the second record. As an example of the time, the holding time Tsb of the lock B is used. Moreover, the 2nd analysis part 17 is provided as an example of the 2nd calculation part which calculates 2nd holding time.

第2解析結果出力部18は、第2段階のM/M/1解析処理の結果を表示機構90d(図5参照)に出力する。具体的には、第2解析部17が算出したロックBの保持時間Tsbを表示機構90d(図5参照)に出力する。本実施の形態では、第2の保持時間を出力する出力部の一例として、第2解析結果出力部18を設けている。   The second analysis result output unit 18 outputs the result of the second stage M / M / 1 analysis process to the display mechanism 90d (see FIG. 5). Specifically, the lock B holding time Tsb calculated by the second analysis unit 17 is output to the display mechanism 90d (see FIG. 5). In the present embodiment, the second analysis result output unit 18 is provided as an example of an output unit that outputs the second holding time.

図3は、処理時間算出装置10の動作例を示したフローチャートである。
図示するように、処理時間算出装置10では、まず、競合要件取得部11が、競合要件として、ロックAを取得するトランザクションのトランザクションレートRa、ロックBを取得するトランザクションのトランザクションレートRb、ロックA及びロックBを取得するトランザクションのトランザクションレートRabを取得する(ステップ101)。
FIG. 3 is a flowchart illustrating an operation example of the processing time calculation apparatus 10.
As shown in the figure, in the processing time calculation device 10, first, the competition requirement acquisition unit 11 uses, as the competition requirements, the transaction rate Ra of the transaction for acquiring the lock A, the transaction rate Rb of the transaction for acquiring the lock B, the lock A, The transaction rate Rab of the transaction for acquiring the lock B is acquired (step 101).

すると、競合分析部12が、ステップ101で取得されたトランザクションレートRb、Rabに基づいて、ロックBを取得するトランザクションのうちのロックAを取得しないトランザクションの、ロックBを取得するトランザクションに対する比率rを算出する(ステップ102)。具体的には、次の計算を行うことにより、比率rを算出する。

Figure 0005731332
そして、競合分析部12は、ステップ101で取得されたトランザクションレートRa、Rbと、ステップ102で算出された比率rとを、競合分析結果記憶部13に記憶する(ステップ103)。 Then, based on the transaction rates Rb and Rab acquired in step 101, the contention analysis unit 12 calculates a ratio r of transactions that do not acquire lock A among transactions that acquire lock B to transactions that acquire lock B. Calculate (step 102). Specifically, the ratio r is calculated by performing the following calculation.
Figure 0005731332
Then, the competition analysis unit 12 stores the transaction rates Ra and Rb acquired in step 101 and the ratio r calculated in step 102 in the competition analysis result storage unit 13 (step 103).

また、処理時間算出装置10では、性能要件取得部14が、性能要件として、トランザクションレスポンスタイムTrespを取得する(ステップ104)。
すると、第1解析部15が、第1段階のM/M/1解析処理として、ステップ103で記憶されたトランザクションレートRaと、ステップ104で取得されたトランザクションレスポンスタイムTrespとに基づいて、ロックAの保持時間Tsaを算出する処理を行う(ステップ105)。
Moreover, in the processing time calculation apparatus 10, the performance requirement acquisition part 14 acquires transaction response time Tresp as a performance requirement (step 104).
Then, the first analysis unit 15 performs the lock A based on the transaction rate Ra stored in step 103 and the transaction response time Tresp acquired in step 104 as the first stage M / M / 1 analysis process. The holding time Tsa is calculated (step 105).

ここで、ロックAの保持時間Tsaを算出する処理について、詳細に説明する。
まず、M/M/1モデルから、以下の関係が成り立つ(ρaはロックAの利用率)。

Figure 0005731332
これにより、トランザクションレスポンスタイムTrespは、以下のように展開される。
Figure 0005731332
更に式を以下のように展開し、TsaをTrespとRaとから算出する式を求め、この式を用いてロックAの保持時間Tsaを算出する。
Figure 0005731332
Here, the process of calculating the holding time Tsa of the lock A will be described in detail.
First, the following relationship is established from the M / M / 1 model (ρa is the usage rate of lock A).
Figure 0005731332
As a result, the transaction response time Tresp is expanded as follows.
Figure 0005731332
Further, the equation is expanded as follows, an equation for calculating Tsa from Tresp and Ra is obtained, and the holding time Tsa of lock A is calculated using this equation.
Figure 0005731332

そして、第1解析部15は、ステップ105で算出されたロックAの保持時間Tsaを、第1解析結果記憶部16に記憶する(ステップ106)。   The first analysis unit 15 stores the lock A holding time Tsa calculated in step 105 in the first analysis result storage unit 16 (step 106).

更に、処理時間算出装置10では、第2解析部17が、第2段階のM/M/1解析処理として、ステップ103で記憶されたトランザクションレートRb及び比率rと、ステップ106で記憶されたロックAの保持時間Tsaとに基づいて、ロックBの保持時間Tsbを算出する処理を行う(ステップ107)。   Further, in the processing time calculation device 10, the second analysis unit 17 performs the transaction rate Rb and ratio r stored in step 103 and the lock stored in step 106 as the second stage M / M / 1 analysis processing. Based on the holding time Tsa of A, a process of calculating the holding time Tsb of lock B is performed (step 107).

ここで、ロックBの保持時間Tsbを算出する処理について、詳細に説明する。
まず、M/M/1モデルから、以下の関係が成り立つ(ρbはロックBの利用率)。

Figure 0005731332
これにより、ロックAの保持時間Tsaは、以下のように展開される。
Figure 0005731332
更に式を以下のように展開し、TsbをTsaとrとRbとから算出する式を求め、この式を用いてロックBの保持時間Tsbを算出する。
Figure 0005731332
Here, the process of calculating the holding time Tsb of the lock B will be described in detail.
First, the following relationship is established from the M / M / 1 model (ρb is the utilization rate of lock B).
Figure 0005731332
Thereby, the holding time Tsa of the lock A is developed as follows.
Figure 0005731332
Further, the equation is expanded as follows, an equation for calculating Tsb from Tsa, r, and Rb is obtained, and the holding time Tsb of lock B is calculated using this equation.
Figure 0005731332

そして、第2解析結果出力部18は、ステップ107で算出されたロックBの保持時間Tsbを表示機構90d(図5参照)に出力し、表示機構90d(図5参照)が、ロックBの保持時間Tsbを表示する(ステップ108)。   Then, the second analysis result output unit 18 outputs the lock B holding time Tsb calculated in step 107 to the display mechanism 90d (see FIG. 5), and the display mechanism 90d (see FIG. 5) holds the lock B. The time Tsb is displayed (step 108).

ここで、以上の動作を、具体的な数値を用いて説明する。
図4は、このときの各変数に格納される具体的な数値について示したものである。
まず、ステップ101で、競合要件取得部11が、「Ra = 120トランザクション/秒、Rb = 80トランザクション/秒、Rab= 30トランザクション/秒」を、競合要件として取得したとする。
また、ステップ104で、性能要件取得部14が、「Tresp = 1.0秒」を、性能要件として取得したとする。
すると、ステップ105では、次の計算を行うことにより、「第1段階M/M/1解析処理」欄に示すように、「Tresp = 1.0秒」、「Ra = 120トランザクション/秒」から、「Tsa = 8.3ミリ秒」が得られる。

Figure 0005731332
Here, the above operation will be described using specific numerical values.
FIG. 4 shows specific numerical values stored in each variable at this time.
First, in step 101, it is assumed that the competition requirement acquisition unit 11 acquires “Ra = 120 transactions / second, Rb = 80 transactions / second, Rab = 30 transactions / second” as the competition requirements.
In step 104, it is assumed that the performance requirement acquisition unit 14 acquires “Tresp = 1.0 second” as the performance requirement.
Then, in step 105, by performing the following calculation, as shown in the “first stage M / M / 1 analysis process” column, from “Tresp = 1.0 seconds” and “Ra = 120 transactions / second”, “ Tsa = 8.3 milliseconds ".
Figure 0005731332

更に、ステップ107では、次の計算を行うことにより、「第2段階M/M/1解析処理」欄に示すように、「Tsa = 8.3ミリ秒」、「Rb = 80トランザクション/秒」、「Rab= 30トランザクション/秒」から、「Tsb = 5.8ミリ秒」が得られる(図では太線で囲んで示している)。

Figure 0005731332
Further, in step 107, by performing the following calculation, as shown in the “second stage M / M / 1 analysis process” column, “Tsa = 8.3 milliseconds”, “Rb = 80 transactions / second”, “ From “Rab = 30 transactions / second”, “Tsb = 5.8 milliseconds” is obtained (indicated by a bold line in the figure).
Figure 0005731332

以上により、ロック待ちを含まない純粋なトランザクション処理時間が5.8ミリ秒以内であれば、目標のトランザクションスループットを達成できることが分かる。   From the above, it can be seen that the target transaction throughput can be achieved if the pure transaction processing time without lock waiting is within 5.8 milliseconds.

尚、図2及び図3では、ロックAの保持時間TsaからロックBの保持時間Tsbを算出する際に、Rabを、Rb-RabのRbに対する比率rに置き換えて、この比率rを用いたが、これには限らない。即ち、図4に示したように、Rabをそのまま用いてもよい。
その場合、第1解析部15は、比率rに代えて、トランザクションレートRabを第1解析結果記憶部16に記憶し、第2解析部17は、次の式により、ロックBの保持時間Tsbを算出する。

Figure 0005731332
2 and 3, when calculating the holding time Tsb of the lock B from the holding time Tsa of the lock A, Rab is replaced with a ratio r of Rb-Rab to Rb, and this ratio r is used. Not limited to this. That is, as shown in FIG. 4, Rab may be used as it is.
In that case, the first analysis unit 15 stores the transaction rate Rab in the first analysis result storage unit 16 instead of the ratio r, and the second analysis unit 17 calculates the holding time Tsb of the lock B by the following equation. calculate.
Figure 0005731332

また、上記では、トランザクション[A−B]及びトランザクション[A&B]による処理に対して、M/M/1モデルの第1段階の適用を行い、トランザクション[B−A]による処理に対して、M/M/1モデルの第2段階の適用を行った。しかしながら、トランザクション[A−B]による処理に対して、M/M/1モデルの第1段階の適用を行い、トランザクション[B−A]及びトランザクション[A&B]による処理に対して、M/M/1モデルの第2段階の適用を行う、という変形例も考えられる。
その場合、競合分析部12は、ステップ102で、ロックAを取得するトランザクションのうちのロックBを取得しないトランザクションの、ロックAを取得するトランザクションに対する比率r’を、次の計算を行うことにより算出する。

Figure 0005731332
Further, in the above, the first stage of the M / M / 1 model is applied to the processing by the transaction [AB] and the transaction [A & B], and the processing by the transaction [BA] is performed by the M. A second stage application of the / M / 1 model was performed. However, the first stage of the M / M / 1 model is applied to the process by the transaction [AB], and the process by the transaction [BA] and the transaction [A & B] is performed by the M / M / A modification in which the second stage of one model is applied is also conceivable.
In that case, the contention analysis unit 12 calculates the ratio r ′ of transactions that do not acquire lock B out of transactions that acquire lock A to transactions that acquire lock A in step 102 by performing the following calculation. To do.
Figure 0005731332

そして、競合分析部12は、ステップ103で、トランザクションレートRa、Rbと共に、比率r’を競合分析結果記憶部13に記憶する。
また、第1解析部15は、ステップ105で、次の式を用いて、ロックAの保持時間Tsaを算出する。

Figure 0005731332
In step 103, the competition analysis unit 12 stores the ratio r ′ in the competition analysis result storage unit 13 together with the transaction rates Ra and Rb.
In step 105, the first analysis unit 15 calculates the holding time Tsa of the lock A using the following equation.
Figure 0005731332

一方、第2解析部17は、ステップ107で、次の式を用いて、ロックBの保持時間Tsbを算出する。

Figure 0005731332
On the other hand, in Step 107, the second analysis unit 17 calculates the holding time Tsb of the lock B using the following formula.
Figure 0005731332

更に、これまでの説明では、M/M/1モデルの第1段階の適用及びM/M/1モデルの第2段階の適用に対応して、第1段階のM/M/1解析処理及び第2段階のM/M/1解析処理を行うこととしたが、これには限らない。即ち、第1段階のM/M/1解析処理で用いる式と第2段階のM/M/1解析処理で用いる式とから次の式を求め、この式を用いて1回のM/M/1解析処理を行うようにしてもよい。

Figure 0005731332
Furthermore, in the above description, in response to the application of the first stage of the M / M / 1 model and the application of the second stage of the M / M / 1 model, the M / M / 1 analysis process of the first stage and Although the second-stage M / M / 1 analysis process is performed, the present invention is not limited to this. That is, the following expression is obtained from the expression used in the first stage M / M / 1 analysis process and the expression used in the second stage M / M / 1 analysis process, and one M / M is performed using this expression. / 1 analysis processing may be performed.
Figure 0005731332

更にまた、本実施の形態で用いる式はあくまで一例であって、必ずその式を用いなければならないというものではない。同じ入力変数に基づいて同じ出力変数を得る式であって、同様の性質を持つ式であれば、様々に置き換え可能である。   Furthermore, the formula used in the present embodiment is merely an example, and the formula is not necessarily used. Any expression that obtains the same output variable based on the same input variable and has similar properties can be variously replaced.

このように、本実施の形態では、1つのトランザクションで2つのレコードのロックを保持することが必要となる場合において、1番目のロック及び2番目のロックに2段階にM/M/1モデルを適用した。これにより、与えられたトランザクションスループットを出すためのロック待ちを除いた純粋なトランザクション処理時間の上限を求めることが可能となった。   Thus, in this embodiment, when it is necessary to hold two record locks in one transaction, the M / M / 1 model is applied to the first lock and the second lock in two stages. Applied. As a result, it is possible to obtain an upper limit of pure transaction processing time excluding lock waiting for giving a given transaction throughput.

最後に、本実施の形態を適用するのに好適なコンピュータのハードウェア構成について説明する。図5は、このようなコンピュータのハードウェア構成の一例を示した図である。図示するように、コンピュータは、演算手段であるCPU(Central Processing Unit)90aと、M/B(マザーボード)チップセット90bを介してCPU90aに接続されたメインメモリ90cと、同じくM/Bチップセット90bを介してCPU90aに接続された表示機構90dとを備える。また、M/Bチップセット90bには、ブリッジ回路90eを介して、ネットワークインターフェイス90fと、磁気ディスク装置(HDD)90gと、音声機構90hと、キーボード/マウス90iと、フレキシブルディスクドライブ90jとが接続されている。   Finally, a hardware configuration of a computer suitable for applying this embodiment will be described. FIG. 5 is a diagram showing an example of the hardware configuration of such a computer. As shown in the figure, the computer includes a CPU (Central Processing Unit) 90a which is a calculation means, a main memory 90c connected to the CPU 90a via an M / B (motherboard) chip set 90b, and an M / B chip set 90b. And a display mechanism 90d connected to the CPU 90a. Further, a network interface 90f, a magnetic disk device (HDD) 90g, an audio mechanism 90h, a keyboard / mouse 90i, and a flexible disk drive 90j are connected to the M / B chip set 90b via a bridge circuit 90e. Has been.

尚、図5において、各構成要素は、バスを介して接続される。例えば、CPU90aとM/Bチップセット90bの間や、M/Bチップセット90bとメインメモリ90cの間は、CPUバスを介して接続される。また、M/Bチップセット90bと表示機構90dとの間は、AGP(Accelerated Graphics Port)を介して接続されてもよいが、表示機構90dがPCI Express対応のビデオカードを含む場合、M/Bチップセット90bとこのビデオカードの間は、PCI Express(PCIe)バスを介して接続される。また、ブリッジ回路90eと接続する場合、ネットワークインターフェイス90fについては、例えば、PCI Expressを用いることができる。また、磁気ディスク装置90gについては、例えば、シリアルATA(AT Attachment)、パラレル転送のATA、PCI(Peripheral Components Interconnect)を用いることができる。更に、キーボード/マウス90i、及び、フレキシブルディスクドライブ90jについては、USB(Universal Serial Bus)を用いることができる。   In FIG. 5, each component is connected through a bus. For example, the CPU 90a and the M / B chip set 90b, and the M / B chip set 90b and the main memory 90c are connected via a CPU bus. Further, the M / B chipset 90b and the display mechanism 90d may be connected via an AGP (Accelerated Graphics Port). However, if the display mechanism 90d includes a video card compatible with PCI Express, the M / B The chip set 90b and this video card are connected via a PCI Express (PCIe) bus. When connecting to the bridge circuit 90e, for example, PCI Express can be used for the network interface 90f. For the magnetic disk device 90g, for example, serial ATA (AT Attachment), parallel transfer ATA, or PCI (Peripheral Components Interconnect) can be used. Furthermore, USB (Universal Serial Bus) can be used for the keyboard / mouse 90i and the flexible disk drive 90j.

ここで、本発明は、全てハードウェアで実現してもよいし、全てソフトウェアで実現してもよい。また、ハードウェア及びソフトウェアの両方により実現することも可能である。また、本発明は、コンピュータ、データ処理システム、コンピュータプログラムとして実現することができる。このコンピュータプログラムは、コンピュータにより読取り可能な媒体に記憶され、提供され得る。ここで、媒体としては、電子的、磁気的、光学的、電磁的、赤外線又は半導体システム(装置又は機器)、或いは、伝搬媒体が考えられる。また、コンピュータにより読取り可能な媒体としては、半導体、ソリッドステート記憶装置、磁気テープ、取り外し可能なコンピュータディスケット、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、リジッド磁気ディスク、及び光ディスクが例示される。現時点における光ディスクの例には、コンパクトディスク−リードオンリーメモリ(CD−ROM)、コンパクトディスク−リード/ライト(CD−R/W)及びDVDが含まれる。   Here, the present invention may be realized entirely by hardware or entirely by software. It can also be realized by both hardware and software. The present invention can be realized as a computer, a data processing system, and a computer program. This computer program may be stored and provided on a computer readable medium. Here, the medium may be an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system (apparatus or equipment), or a propagation medium. Examples of computer-readable media include semiconductors, solid state storage devices, magnetic tape, removable computer diskettes, random access memory (RAM), read-only memory (ROM), rigid magnetic disks, and optical disks. The Current examples of optical disks include compact disk-read only memory (CD-ROM), compact disk-read / write (CD-R / W) and DVD.

以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態には限定されない。本発明の精神及び範囲から逸脱することなく様々に変更したり代替態様を採用したりすることが可能なことは、当業者に明らかである。   As mentioned above, although this invention was demonstrated using embodiment, the technical scope of this invention is not limited to the said embodiment. It will be apparent to those skilled in the art that various modifications and alternative embodiments can be made without departing from the spirit and scope of the invention.

10…処理時間算出装置、11…競合要件取得部、12…競合分析部、13…競合分析結果記憶部、14…性能要件取得部、15…第1解析部、16…第1解析結果記憶部、17…第2解析部、18…第2解析結果出力部 DESCRIPTION OF SYMBOLS 10 ... Processing time calculation apparatus, 11 ... Competition requirement acquisition part, 12 ... Competition analysis part, 13 ... Competition analysis result storage part, 14 ... Performance requirement acquisition part, 15 ... 1st analysis part, 16 ... 1st analysis result storage part , 17 ... second analysis unit, 18 ... second analysis result output unit

Claims (8)

目標のトランザクション性能を達成するためのトランザクションのロック待ち時間を除く処理時間を算出する装置であって、
第1のレコードを含む少なくとも2つのレコードを更新するトランザクションのレートである第1のレートと、第2のレコードを含む少なくとも2つのレコードを更新するトランザクションのレートである第2のレートと、当該第1のレコード及び当該第2のレコードを含む少なくとも2つのレコードを更新するトランザクションであって、当該第1のレコード及び当該第2のレコードについては、当該第1のレコード、当該第2のレコードの順番で更新するトランザクションのレートである第3のレートとを取得するレート取得部と、
トランザクションの目標の応答時間を取得する応答時間取得部と、
前記応答時間取得部により取得された前記応答時間のうちの前記第1のレコードのロック待ち時間である第1の待ち時間及び前記第1のレコードのロック保持時間である第1の保持時間をそれぞれM/M/1待ち行列モデルのサービス待ち時間及びサービス時間として、M/M/1待ち行列モデルの第1段階の適用を行うことにより、前記レート取得部により取得された前記第1のレートと、前記応答時間取得部により取得された前記応答時間とに基づいて、当該第1の保持時間を算出する第1の算出部と、
前記第1の算出部により算出された前記第1の保持時間のうちの前記第2のレコードのロック待ち時間である第2の待ち時間及び前記第2のレコードのロック保持時間である第2の保持時間をそれぞれM/M/1待ち行列モデルのサービス待ち時間及びサービス時間として、M/M/1待ち行列モデルの第2段階の適用を行うことにより、前記レート取得部により取得された前記第2のレート及び前記第3のレートと、前記第1の算出部により算出された前記第1の保持時間とに基づいて、当該第2の保持時間を算出する第2の算出部と、
前記第2の算出部により算出された前記第2の保持時間を出力する出力部と
を含む、装置。
An apparatus for calculating a processing time excluding a transaction lock waiting time for achieving a target transaction performance,
A first rate is the rate of transaction that updates at least two records containing the first record, the second rate is a rate of a transaction that updates at least two records containing the second record, the first a transaction that updates at least two records that contain one record and said second record, said for the first record and the second record, the order of the first record, the second record A rate acquisition unit that acquires a third rate that is the rate of the transaction to be updated in
A response time acquisition unit for acquiring a target response time of the transaction;
Of the response times acquired by the response time acquisition unit, a first waiting time that is a lock waiting time of the first record and a first holding time that is a lock holding time of the first record, respectively. By applying the first stage of the M / M / 1 queuing model as the service waiting time and service time of the M / M / 1 queuing model, the first rate acquired by the rate acquiring unit and A first calculation unit that calculates the first holding time based on the response time acquired by the response time acquisition unit;
Of the first holding time calculated by the first calculating unit, the second waiting time that is the lock waiting time of the second record and the second holding time that is the lock holding time of the second record By applying the second stage of the M / M / 1 queuing model with the holding time as the service waiting time and service time of the M / M / 1 queuing model, respectively, the first time acquired by the rate acquisition unit A second calculating unit that calculates the second holding time based on the rate of 2 and the third rate, and the first holding time calculated by the first calculating unit;
An output unit that outputs the second holding time calculated by the second calculation unit.
前記第1の算出部は、式
Figure 0005731332
を用いて、前記第1の保持時間を算出し、
前記第2の算出部は、式
Figure 0005731332
を用いて、前記第2の保持時間を算出する、請求項1の装置(Raは前記第1のレートであり、Rbは前記第2のレートであり、Rabは前記第3のレートであり、Trespは前記応答時間であり、Tsaは前記第1の保持時間であり、Tsbは前記第2の保持時間である)。
The first calculation unit has an equation
Figure 0005731332
To calculate the first holding time,
The second calculation unit has the formula
Figure 0005731332
The apparatus of claim 1, wherein Ra is the first rate, Rb is the second rate, and Rab is the third rate. Tresp is the response time, Tsa is the first holding time, and Tsb is the second holding time).
目標のトランザクション性能を達成するためのトランザクションのロック待ち時間を除く処理時間を算出する装置であって、
第1のレコードを更新するトランザクションのレートである第1のレートと、第2のレコードを更新するトランザクションのレートである第2のレートと、当該第1のレコード及び当該第2のレコードを、当該第1のレコード、当該第2のレコードの順番で更新するトランザクションのレートである第3のレートとを取得するレート取得部と、
トランザクションの目標の応答時間を取得する応答時間取得部と、
前記第1のレコードのロック待ち時間である第1の待ち時間及び前記第1のレコードのロック保持時間である第1の保持時間をそれぞれM/M/1待ち行列モデルのサービス待ち時間及びサービス時間として、M/M/1待ち行列モデルの第1段階の適用を行い、前記第2のレコードのロック待ち時間である第2の待ち時間及び前記第2のレコードのロック保持時間である第2の保持時間をそれぞれM/M/1待ち行列モデルのサービス待ち時間及びサービス時間として、M/M/1待ち行列モデルの第2段階の適用を行うことにより、前記レート取得部により取得された前記第1のレート、前記第2のレート及び前記第3のレートと、前記応答時間取得部により取得された前記応答時間とに基づいて、当該第2の保持時間を算出する算出部と、
前記算出部により算出された前記第2の保持時間を出力する出力部と
を含む、装置。
An apparatus for calculating a processing time excluding a transaction lock waiting time for achieving a target transaction performance,
A first rate is the rate of transactions to update the first record, the second rate is a rate of a transaction that updates the second record, the first record and the second record, the A rate acquisition unit that acquires a first rate and a third rate that is a rate of a transaction to be updated in the order of the second record ;
A response time acquisition unit for acquiring a target response time of the transaction;
The first waiting time that is the lock waiting time of the first record and the first holding time that is the lock holding time of the first record are respectively expressed as the service waiting time and service time of the M / M / 1 queue model. The first stage of the M / M / 1 queuing model is applied, and the second waiting time that is the lock waiting time of the second record and the second holding time of the lock of the second record are By applying the second stage of the M / M / 1 queuing model with the holding time as the service waiting time and service time of the M / M / 1 queuing model, respectively, the first time acquired by the rate acquisition unit A calculation unit that calculates the second holding time based on the rate of 1, the second rate, the third rate, and the response time acquired by the response time acquisition unit ,
An output unit that outputs the second holding time calculated by the calculation unit.
前記算出部は、式
Figure 0005731332
を用いて、前記第2の保持時間を算出する、請求項3の装置(Raは前記第1のレートであり、Rbは前記第2のレートであり、Rabは前記第3のレートであり、Trespは前記応答時間であり、Tsbは前記第2の保持時間である)。
The calculation unit has the formula
Figure 0005731332
The apparatus of claim 3, wherein Ra is the first rate, Rb is the second rate, and Rab is the third rate. Tresp is the response time, and Tsb is the second holding time).
前記算出部は、
M/M/1待ち行列モデルの前記第1段階の適用を行うことにより、前記レート取得部により取得された前記第1のレートと、前記応答時間取得部により取得された前記応答時間とに基づいて、前記第1の保持時間を算出する第1の算出部と、
M/M/1待ち行列モデルの前記第2段階の適用を行うことにより、前記レート取得部により取得された前記第2のレート及び前記第3のレートと、前記第1の算出部により算出された前記第1の保持時間とに基づいて、前記第2の保持時間を算出する第2の算出部と
を含む、請求項3又は請求項4の装置。
The calculation unit includes:
Based on the first rate acquired by the rate acquisition unit and the response time acquired by the response time acquisition unit by applying the first stage of the M / M / 1 queue model A first calculation unit for calculating the first holding time;
By applying the second stage of the M / M / 1 queue model, the second rate and the third rate acquired by the rate acquisition unit, and the first calculation unit are calculated. 5. The apparatus according to claim 3, further comprising: a second calculation unit that calculates the second holding time based on the first holding time.
前記算出部は、
M/M/1待ち行列モデルの前記第1段階の適用を行うことにより、前記レート取得部により取得された前記第1のレート及び前記第3のレートと、前記応答時間取得部により取得された前記応答時間とに基づいて、前記第1の保持時間を算出する第1の算出部と、
M/M/1待ち行列モデルの前記第2段階の適用を行うことにより、前記レート取得部により取得された前記第2のレートと、前記第1の算出部により算出された前記第1の保持時間とに基づいて、前記第2の保持時間を算出する第2の算出部と
を含む、請求項3又は請求項4の装置。
The calculation unit includes:
By applying the first stage of the M / M / 1 queuing model, the first rate and the third rate acquired by the rate acquisition unit, and the response time acquisition unit A first calculation unit for calculating the first holding time based on the response time;
By applying the second stage of the M / M / 1 queue model, the second rate acquired by the rate acquisition unit and the first holding calculated by the first calculation unit 5. The apparatus according to claim 3, further comprising: a second calculation unit configured to calculate the second holding time based on time.
コンピュータが、目標のトランザクション性能を達成するためのトランザクションのロック待ち時間を除く処理時間を算出する方法であって、
前記コンピュータが、第1のレコードを更新するトランザクションのレートである第1のレートと、第2のレコードを更新するトランザクションのレートである第2のレートと、当該第1のレコード及び当該第2のレコードを、当該第1のレコード、当該第2のレコードの順番で更新するトランザクションのレートである第3のレートとを取得するステップと、
前記コンピュータが、トランザクションの目標の応答時間を取得するステップと、
前記コンピュータが、前記第1のレコードのロック待ち時間である第1の待ち時間及び前記第1のレコードのロック保持時間である第1の保持時間をそれぞれM/M/1待ち行列モデルのサービス待ち時間及びサービス時間として、M/M/1待ち行列モデルの第1段階の適用を行い、前記第2のレコードのロック待ち時間である第2の待ち時間及び前記第2のレコードのロック保持時間である第2の保持時間をそれぞれM/M/1待ち行列モデルのサービス待ち時間及びサービス時間として、M/M/1待ち行列モデルの第2段階の適用を行うことにより、前記第1のレートと、前記第2のレートと、前記第3のレートと、前記応答時間とに基づいて、当該第2の保持時間を算出するステップと、
前記コンピュータが、算出された前記第2の保持時間を出力するステップと
を含む、方法。
A method in which a computer calculates a processing time excluding a transaction lock latency to achieve a target transaction performance,
Said computer comprises a first rate is the rate of transactions to update the first record, the second rate is a rate of a transaction that updates the second record, the first record and the second Obtaining a third rate that is a rate of a transaction for updating the records in the order of the first record and the second record ;
The computer obtaining a target response time for the transaction;
The computer sets a first waiting time that is the lock waiting time of the first record and a first holding time that is the lock holding time of the first record, respectively, to the service waiting of the M / M / 1 queue model. As the time and service time, the first stage of the M / M / 1 queuing model is applied, and the second waiting time that is the lock waiting time of the second record and the lock holding time of the second record By applying the second stage of the M / M / 1 queuing model with the second holding time as the service waiting time and service time of the M / M / 1 queuing model, respectively, the first rate and Calculating the second holding time based on the second rate, the third rate, and the response time;
And outputting the calculated second hold time of the computer.
目標のトランザクション性能を達成するためのトランザクションのロック待ち時間を除く処理時間を算出する装置としてコンピュータを機能させるプログラムであって、
前記コンピュータを、
第1のレコードを更新するトランザクションのレートである第1のレートと、第2のレコードを更新するトランザクションのレートである第2のレートと、当該第1のレコード及び当該第2のレコードを、当該第1のレコード、当該第2のレコードの順番で更新するトランザクションのレートである第3のレートとを取得するレート取得部と、
トランザクションの目標の応答時間を取得する応答時間取得部と、
前記応答時間取得部により取得された前記応答時間のうちの前記第1のレコードのロック待ち時間である第1の待ち時間及び前記第1のレコードのロック保持時間である第1の保持時間をそれぞれM/M/1待ち行列モデルのサービス待ち時間及びサービス時間として、M/M/1待ち行列モデルの第1段階の適用を行うことにより、前記レート取得部により取得された前記第1のレートと、前記応答時間取得部により取得された前記応答時間とに基づいて、当該第1の保持時間を算出する第1の算出部と、
前記第1の算出部により算出された前記第1の保持時間のうちの前記第2のレコードのロック待ち時間である第2の待ち時間及び前記第2のレコードのロック保持時間である第2の保持時間をそれぞれM/M/1待ち行列モデルのサービス待ち時間及びサービス時間として、M/M/1待ち行列モデルの第2段階の適用を行うことにより、前記レート取得部により取得された前記第2のレート及び前記第3のレートと、前記第1の算出部により算出された前記第1の保持時間とに基づいて、当該第2の保持時間を算出する第2の算出部と、
前記第2の算出部により算出された前記第2の保持時間を出力する出力部と
して機能させる、プログラム。
A program for causing a computer to function as a device for calculating a processing time excluding a transaction lock waiting time for achieving a target transaction performance,
The computer,
A first rate is the rate of transactions to update the first record, the second rate is a rate of a transaction that updates the second record, the first record and the second record, the A rate acquisition unit that acquires a first rate and a third rate that is a rate of a transaction to be updated in the order of the second record ;
A response time acquisition unit for acquiring a target response time of the transaction;
Of the response times acquired by the response time acquisition unit, a first waiting time that is a lock waiting time of the first record and a first holding time that is a lock holding time of the first record, respectively. By applying the first stage of the M / M / 1 queuing model as the service waiting time and service time of the M / M / 1 queuing model, the first rate acquired by the rate acquiring unit and A first calculation unit that calculates the first holding time based on the response time acquired by the response time acquisition unit;
Of the first holding time calculated by the first calculating unit, the second waiting time that is the lock waiting time of the second record and the second holding time that is the lock holding time of the second record By applying the second stage of the M / M / 1 queuing model with the holding time as the service waiting time and service time of the M / M / 1 queuing model, respectively, the first time acquired by the rate acquisition unit A second calculating unit that calculates the second holding time based on the rate of 2 and the third rate, and the first holding time calculated by the first calculating unit;
A program that functions as an output unit that outputs the second holding time calculated by the second calculation unit.
JP2011194732A 2011-09-07 2011-09-07 Apparatus and method for calculating transaction processing time Expired - Fee Related JP5731332B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011194732A JP5731332B2 (en) 2011-09-07 2011-09-07 Apparatus and method for calculating transaction processing time

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011194732A JP5731332B2 (en) 2011-09-07 2011-09-07 Apparatus and method for calculating transaction processing time

Publications (2)

Publication Number Publication Date
JP2013057996A JP2013057996A (en) 2013-03-28
JP5731332B2 true JP5731332B2 (en) 2015-06-10

Family

ID=48133860

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011194732A Expired - Fee Related JP5731332B2 (en) 2011-09-07 2011-09-07 Apparatus and method for calculating transaction processing time

Country Status (1)

Country Link
JP (1) JP5731332B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6848278B2 (en) 2016-09-07 2021-03-24 富士通株式会社 Storage management device, performance adjustment method and performance adjustment program

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5530855A (en) * 1992-10-13 1996-06-25 International Business Machines Corporation Replicating a database by the sequential application of hierarchically sorted log records
US5454108A (en) * 1994-01-26 1995-09-26 International Business Machines Corporation Distributed lock manager using a passive, state-full control-server
US6449614B1 (en) * 1999-03-25 2002-09-10 International Business Machines Corporation Interface system and method for asynchronously updating a share resource with locking facility
US6754333B1 (en) * 2000-04-27 2004-06-22 Avaya Technology Corp. Wait time prediction arrangement for non-real-time customer contacts

Also Published As

Publication number Publication date
JP2013057996A (en) 2013-03-28

Similar Documents

Publication Publication Date Title
CN110741342B (en) Blockchain transaction commit ordering
US9727373B2 (en) Providing resumption data in a distributed processing system
US10126980B2 (en) Managing data operations in a quorum-based data replication system
US20160065663A1 (en) Dynamic load-based merging
US20090192761A1 (en) Performance-testing a system with functional-test software and a transformation-accelerator
CN110413413A (en) A kind of method for writing data, device, equipment and storage medium
JP6256904B2 (en) Apparatus and method for distributing processing requests
CN106599323B (en) Method and device for realizing distributed pipeline in distributed file system
US8375367B2 (en) Tracking database deadlock
JP5731332B2 (en) Apparatus and method for calculating transaction processing time
US20170295221A1 (en) Apparatus and method for processing data
JP2007527582A (en) Optimizing database access for record linking by tiling the space of record pairs
JPWO2008105099A1 (en) Application cooperation control program, application cooperation control method, and application cooperation control apparatus
JP2014078160A (en) Device and method for assisting decision of virtual resource combination
JP5959063B2 (en) Apparatus and method for supporting acquisition of information
JP2016095638A (en) Transaction processor, transaction processing method, and program
US20120246300A1 (en) Analyzing apparatus, method, system, and recording medium of program
US10339462B2 (en) System and method for executing a high bandwidth network activity as a background activity in a virtual desktop environment
US9910893B2 (en) Failover and resume when using ordered sequences in a multi-instance database environment
JP2010152435A (en) Information processing apparatus and method, and program
US20180276028A1 (en) Single-hop two-phase transaction resolution
JP2016103115A (en) System and method for managing database
CN112162988A (en) Distributed transaction processing method and device and electronic equipment
US20110107392A1 (en) Management of observable collections of values
CN111292028A (en) Inventory information processing method and system, computer system and readable storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140409

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141202

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150219

TRDD Decision of grant or rejection written
RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20150317

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150317

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150409

R150 Certificate of patent or registration of utility model

Ref document number: 5731332

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees