(57)【要約】【課題】開発環境でのＳＱＬ文による検索所要時間をもとに、ハードウェア性能などが異なった環境でのＳＱＬ文によるデータベースの検索所要時間を予測することができる方法及びプログラムを提供すること。【解決手段】開発環境のシステムにおいて検索所要時間予測対象のＳＱＬ文を実行し、当該ＳＱＬ文が使用した全てのテーブル及び各テーブルのデータレコード件数及び１レコード長の情報を取得する。また、前記ＳＱＬ文を開発環境のシステムで実行した時の実行計画、解析時間、実行時間、データ読み出し時間、データ読み出しサイズ、検索結果行数に関する情報を取得する。さらに、新たな環境のシステムと開発環境のハードウェア性能比を取得する。これらの情報により、前記ＳＱＬ文による前記新たな環境のシステムにおけるデータベースの検索所要時間を予め設定した予測計算式に従って算出して出力する。【選択図】  図１
2007172516.tif 000002
【特許請求の範囲】
【請求項１】
開発環境のシステムにおいて検索所要時間予測対象のＳＱＬ文を実行し、当該ＳＱＬ文が使用した全てのテーブル及び各テーブルのデータレコード件数及び１レコード長の情報を取得し、第１の記憶手段に記憶する第１のステップと、前記ＳＱＬ文を開発環境のシステムで実行した時の実行計画、解析時間、実行時間、データ読み出し時間、データ読み出しサイズ、検索結果行数に関する情報を取得し、第２の記憶手段に記憶する第２のステップと、検索所要時間の予測対象の新たな環境のシステムと開発環境のシステムとのメモリ転送速度比、ディスク転送速度比、ＣＰＵクロック数比、新たな環境でのデータキャッシュサイズ、ソートキャッシュサイズ、ディスクＩ／Ｏ速度に関する情報を取得して第３の記憶手段に記憶する第３のステップと、前記第１〜第３の記憶手段に記憶された情報を読み出し、前記ＳＱＬ文による前記新たな環境のシステムにおけるデータベースの検索所要時間を予め設定した予測計算式に従って算出して出力する第４のステップとを備えることを特徴とするＳＱＬ文によるデータベースの検索所要時間予測方法。
【請求項２】
第１の記憶手段から、開発環境のシステムにおける検索所要時間予測対象のＳＱＬ文を実行結果によって収集された当該ＳＱＬ文が使用した全てのテーブル及び各テーブルのデータレコード件数及び１レコード長の情報を読出す第１のステップと、第２の記憶手段から、前記ＳＱＬ文を開発環境のシステムで実行した時の実行計画、解析時間、実行時間、データ読み出し時間、データ読み出しサイズ、検索結果行数に関する情報を読出す第２のステップと、第３の記憶手段から、検索所要時間の予測対象の新たな環境のシステムと開発環境のシステムとのメモリ転送速度比、ディスク転送速度比、ＣＰＵクロック数比、新たな環境でのデータキャッシュサイズ、ソートキャッシュサイズ、ディスクＩ／Ｏ速度に関する情報を読出す第３のステップと、これら第１〜第３の記憶手段からの読出し情報に基づき、前記ＳＱＬ文による前記新たな環境のシステムにおけるデータベースの検索所要時間を予め設定した予測計算式に従って算出して出力する第４のステップとをコンピュータに実行させることを特徴とするＳＱＬ文によるデータベースの検索所要時間予測プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＤＢＭＳ（DataBase Management System：データベース管理システム）において、ＳＱＬ文（Structured Query Language：構造化問合せ言語）によるデータベースの検索所要時間を予測する方法及びプログラムに関するものである。
【背景技術】
【０００２】
顧客情報や営業情報の履歴を管理するＣＲＭシステム等のデータベースには、膨大な件数のデータが格納されている。
図１３は、従来におけるＣＲＭシステムの概要を示すシステム構成図であり、クライアント１３０１のクライアントアプリケーション１３０２からの検索要求に対し、サーバ１３０３にはデータベース１３０６の顧客情報履歴１３０７や営業情報履歴１３０８を検索するサーバアプリケーション１３０４、１３０５が実装されており、これらサーバアプリケーション１３０４，１３０５はＳＱＬ文によってデータベース１３０６を検索し、検索結果を要求元のクライアントアプリケーション１３０２に返すようになっている。
このようなシステムにあっては、サーバアプリケーション１３０４，１３０５から実行されるＳＱＬ文も、検索処理によって異なる。具体的には、汎用的な検索を行って大量の検索結果を返すＳＱＬ、指定された検索条件をもとに少量の検索結果を返すＳＱＬと様々である。
このうち、大量の検索結果を返すサーバアプリケーション１３０４のＳＱＬは、ＣＰＵやメモリ（データベースバッファ）等のシステムリソースを大量に消費し、所要時間も長いため、他のサーバアプリケーション１３０５で実行するＳＱＬ文に影響を及ぼす可能性がある。
そのため、当該ＳＱＬ文を実行するサーバアプリケーション１３０４，１３０５は、本番環境へリリースする前に、本番環境での当該ＳＱＬ文による検索所要時間を事前に確認しておくことが望まれる。
【０００３】
このような技術に関連し、プログラムの実行時間を予測する方法の先行技術文献としては次の３つの特許文献が挙げられる。
【特許文献１】特開２００２−２７６３６１号
【特許文献２】特開平９−３０５５５６号
【特許文献３】特開平５−３３４１２４１号
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、本番環境のシステムを使用したＳＱＬ文による検索所要時間を予測して確認するテストは、他のテスト要件との日程調整やセキュリティ等の観点から、実施機会が制限されることが多い。
開発環境のシステムを使用することも可能であるが、開発環境のシステムでは本番環境相当のデータ件数を格納することができない場合が多い。この場合、開発環境のシステムはアプリケーション開発に最低限必要なデータだけを抽出した環境となっており、予測結果と本番環境での検索所要時間とは大きく異なる場合が多く、本番環境に近似した検索所要時間を予測することができない。
さらに、ＣＰＵクロック数やメモリ（データベースバッファ）サイズ、ディスクＩ／Ｏ速度といったハードウェアの性能が異なる場合が多いので、上記と同様に、本番環境に近似した検索所要時間を予測することができない。
【０００５】
本発明の目的は、開発環境でのＳＱＬ文による検索所要時間をもとに、検索対象のデータ件数やハードウェア性能が異なった本番環境などでのＳＱＬ文によるデータベースの検索所要時間を予測することができる方法及びプログラムを提供することにある。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明に係るＳＱＬ文によるデータベースの検索所要時間予測方法は、開発環境のシステムにおいて検索所要時間予測対象のＳＱＬ文を実行し、当該ＳＱＬ文が使用した全てのテーブル及び各テーブルのデータレコード件数及び１レコード長の情報を取得し、第１の記憶手段に記憶する第１のステップと、前記ＳＱＬ文を開発環境のシステムで実行した時の実行計画、解析時間、実行時間、データ読み出し時間、データ読み出しサイズ、検索結果行数に関する情報を取得し、第２の記憶手段に記憶する第２のステップと、検索所要時間の予測対象の新たな環境のシステムと開発環境のシステムとのメモリ転送速度比、ディスク転送速度比、ＣＰＵクロック数比、新たな環境でのデータキャッシュサイズ、ソートキャッシュサイズ、ディスクＩ／Ｏ速度に関する情報を取得して第３の記憶手段に記憶する第３のステップと、前記第１〜第３の記憶手段に記憶された情報を読み出し、前記ＳＱＬ文による前記新たな環境のシステムにおけるデータベースの検索所要時間を予め設定した予測計算式に従って算出して出力する第４のステップとを備えることを特徴とする。
【０００７】
また、本発明に係るＳＱＬ文によるデータベースの検索所要時間予測プログラムは、第１の記憶手段から、開発環境のシステムにおける検索所要時間予測対象のＳＱＬ文を実行結果によって収集された当該ＳＱＬ文が使用した全てのテーブル及び各テーブルのデータレコード件数及び１レコード長の情報を読出す第１のステップと、第２の記憶手段から、前記ＳＱＬ文を開発環境のシステムで実行した時の実行計画、解析時間、実行時間、データ読み出し時間、データ読み出しサイズ、検索結果行数に関する情報を読出す第２のステップと、第３の記憶手段から、検索所要時間の予測対象の新たな環境のシステムと開発環境のシステムとのメモリ転送速度比、ディスク転送速度比、ＣＰＵクロック数比、新たな環境でのデータキャッシュサイズ、ソートキャッシュサイズ、ディスクＩ／Ｏ速度に関する情報を読出す第３のステップと、これら第１〜第３の記憶手段からの読出し情報に基づき、前記ＳＱＬ文による前記新たな環境のシステムにおけるデータベースの検索所要時間を予め設定した予測計算式に従って算出して出力する第４のステップとをコンピュータに実行させることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、ある環境でＳＱＬを実行した時のＳＱＬ文によるデータベースの検索所要時間や、その環境とのハードウェア性能比をもとに、レコード件数やハードウェア性能が異なる環境での当該ＳＱＬ文によるデータベースの検索所要時間をほぼ正確に予測することができる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明を図面に基づいて詳細に説明する。
図１は、本発明に係る方法を実施する所要時間予測計算装置の実施の形態を示す構成図である。
この実施形態の所要時間予測計算装置１０は、ＣＰＵ１１、入力装置１２、メモリ１３、出力装置１４を備え、メモリ１３には、開発環境レコード件数記憶手段１５、開発環境ＳＱＬ情報記憶手段１６、ハードウェア性能比記憶手段１７に記憶された情報を読出し、開発環境とは異なる新たなＳＱＬ文の実行環境（以下、本番環境と言う）におけるデータベースの検索所要時間（以下、ＳＱＬ所要時間と略記する）を予測するＳＱＬ所要時間予測計算プログラム１４が記憶されている。
【００１０】
ここで、ＳＱＬ所要時間を予測する上での前提条件は、以下の通りである。
まず、本番環境でのデータ分布は、開発環境システムとのデータ分布から変化しないと仮定する。テーブル結合は２テーブルまでとし、結合方式は図１１の説明図に示すネステッドループ結合、もしくは図１２の説明図に示すソート・マージ結合とする。
ネステッドループ結合とは、図１１の説明図に示すように、開発環境において外部表Ａと内部表Ｂがあった場合に、（１）まず、外部表Ａを検索し、（２）外部表Ａの結合項目値をもとに、内部表Ｂを検索し、（３）結合した検索結果を返す、というものである。
このネステッドループ結合では、開発環境での読み出しデータサイズは、Ａ×Ｂに近似する。
そのため、外部表Ａおよび内部表Ｂの値が、本番環境でそれぞれｍ倍およびｎ倍になった場合、読み出しデータサイズは、ｍＡ×ｎＢに近似する。
よって、本番環境での読み出しデータサイズ
≒（開発環境での読み出しデータサイズ）×（ｍＡ×ｎＢ）÷（Ａ×Ｂ）
に近似することになる。
【００１１】
ソート・マージ結合とは、図１２の説明図に示すように、開発環境において外部表Ａと内部表Ｂがあった場合に、（１）まず、外部表Ａを検索し、（２）外部表Ｂをソートし、（３）内部表Ｂを検索し、（４）内部表Ｂをソートし、（５）外部表Ａの結合項目値をもとに、内部表Ｂを検索し、（６）外部表Ａの結合項目値をもとに、内部表Ｂを検索し、結合した検索結果を返す、というものである。
このソート・マージ結合では、開発環境での読み出しデータサイズは、Ａ＋Ｂに近似する。
そのため、外部表Ａおよび内部表Ｂの値が、本番環境ではそれぞれｍ倍およびｎ倍になった場合、読み出しデータサイズは、ｍＡ＋ｎＢに近似する。
よって、本番環境の読み出しデータサイズ
≒（開発環境での読み出しデータサイズ）×（ｍＡ＋ｎＢ）÷（Ａ＋Ｂ）
に近似することになる。
【００１２】
本発明では、開発環境でのＳＱＬ実行結果と開発環境とのハードウェア性能比などをもと本番環境でのＳＱＬ所要時間を予測する。
なお、ＳＱＬ所要時間は、以下の合計時間となる。
（１）ＳＱＬ解析時間
ＳＱＬを元にＳＱＬ実行計画を決定する。
（２）ＳＱＬ実行時間
ＳＱＬ実行計画を元にＳＱＬを実行する。
（３）データ読み出し時間
実行されたＳＱＬにより、データを読み取り、検索結果を返す。
【００１３】
本発明では、まず、事前準備作業として、図５のフローチャートに示すような手順で、開発環境における情報を取得し、各記憶手段１５，１６，１７に記憶させる。
まず、所要時間を予測したいＳＱＬ文４０を開発環境システム２０で実行する（ステップ５０１）。そして、当該ＳＱＬ実行時のＳＱＬトレースを取得しておく（ステップ５０２）。
次に、取得したＳＱＬトレースから、ＳＱＬ文で使用したテーブルを確認し、該当するテーブルの開発環境レコード件数および1レコード長をデータベース上の管理情報から取得する。取得した情報は、開発環境レコード件数記憶手段１５に記憶させる（ステップ５０３）。
また、開発環境ＳＱＬ情報記憶手段１６へ、実行計画、ＳＱＬ解析時間、ＳＱＬ実行時間、データ読み出し時間、データ読み出しサイズ、検索結果行数を入力して記憶させる（ステップ５０４）。
さらに、ハードウェア性能情報記憶手段１７へ、本番環境システム３０と開発環境システム２０とのメモリＩ／Ｏ速度比、本番環境システム３０と開発環境システム２０とのディスクＩ／Ｏ速度比、本番環境システム３０と開発環境システム２０とのＣＰＵクロック数比、本番環境システム３０のデータバッファサイズ、本番環境システム３０でのソートバッファサイズ、本番環境システム３０でのディスクＩ／Ｏ速度を入力装置１１から入力して記憶させる（ステップ５０５）。
以上で、事前の情報取得は完了である。
【００１４】
これにより、開発環境レコード件数記憶手段１５には、図２に示すように、ＳＱＬ文が使用したテーブル名２０１毎に、開発環境レコード件数２０２、１レコード長２０３の情報が記憶される。
また、開発環境ＳＱＬ情報記憶手段１６には、図３に示すように、所要時間予測ＳＱＬ３０１毎に、実行計画３０２、ＳＱＬ解析時間３０３、ＳＱＬ実行時間３０４、データ読み出し時間３０５、データ読み出しサイズ６０６、検索結果行数３０７から成る情報が記憶される。
また、ハードウェア性能情報記憶手段１７には、図４に示すように、本番環境などの新たな環境４０１ごとに、開発環境とのメモリＩ／Ｏ速度比４０２、開発環境とのディスクＩ／Ｏ速度比４０３、開発環境とのＣＰＵクロック数比４０４、本番環境のデータバッファサイズ４０５、本番環境でのソートバッファサイズ４０６、本番環境でのディスクＩ／Ｏ速度４０７から成る情報が記憶される。
【００１５】
次に、図６〜図１０のフローチャートに示す処理によって、本番環境システム３０でのＳＱＬ実行時間を予測する。
まず、所要時間を予測したいＳＱＬ文４０をＳＱＬ所要時間予測計算プログラム１４に入力する（ステップ５１１）。
これにより、当該プログラム１４は、開発環境ＳＱＬ情報記憶手段１６を参照し、当該ＳＱＬ文４０について、実行計画、ＳＱＬ解析時間、ＳＱＬ実行時間、データ読み出し時間、データ読み出しサイズの情報を取得する（ステップ５１２）。
また、当該プログラム１４は、ハードウェア性能情報記憶手段１７を参照し、メモリＩ／Ｏ速度比、ＣＰＵクロック数比、本番環境のデータバッファサイズ、本番環境ソートバッファサイズ、本番環境ディスクＩ／Ｏ速度から成る情報を取得する（ステップ５１３）。
次に、前記の情報を取得した後、開発環境システム２０でのＳＱＬ解析時間をＣＰＵクロック数比で除算し、本番環境システム３０での当該ＳＱＬ解析時間を算出する（ステップ５１４）。
さらに、開発環境システム２０でのＳＱＬ実行時間をＣＰＵクロック数比で除算し、本番環境システム３０での当該ＳＱＬ実行時間を算出する（ステップ５１５）。
これまでが、本番環境システム３０でのＳＱＬ解析時間およびＳＱＬ実行時間の算出工程となる。
【００１６】
続いて、本番環境システム３０でのデータ読み出し時間を算出する。
まず、当該プログラム１４は、入力したＳＱＬ文４０から当該ＳＱＬ文４０が使用するテーブル名を取得する（ステップ５１６）。
次に、当該プログラム実行者による入力装置１２の入力操作により、ＳＱＬ文４０が使用するテーブルの本番環境のレコード件数と本番環境のデータバッファサイズを受付ける（ステップ５１７）。
すると、当該プログラム１４は、入力された「ＳＱＬ文４０が使用するテーブル数」が単一テーブルの検索か否かを確認する（ステップ５２１）。
テーブル数が１つの場合、以下の「数式１」より、本番環境システム３０でのデータ読み出し時間を算出する（ステップ５２２）。
【数１】
2007172516.tif 000003
【００１７】
次に、前記の「数式１」から、本番環境システム３０でのデータ読み出し時間を算出したが、ディスクＩ／Ｏが発生する場合は、その分読み出し時間が長くなる。そのため、ディスクＩ／Ｏが発生する可能性があるかを確認する。
そこで、次の「数式２」により、本番環境システム３０でのデータ読み出しサイズを算出する（ステップ５２３）。
【数２】
2007172516.tif 000004
【００１８】
次に、本番環境システム３０でのデータ読み出しサイズが、本番環境システム３０のデータバッファサイズより小さいか確認する（ステップ５３１）。
もし、データ読み出しサイズの方が大きい場合は、ディスクＩ／Ｏが発生するため、次の「数式３」により、本番環境システム３０でのデータ読み出し時間を修正する（ステップ５３２）。
【数３】
2007172516.tif 000005
【００１９】
さらに、ソート処理があるかを確認する。この時、本番環境システム３０でのデータ読み出しサイズが本番環境システム３０のソートバッファサイズより小さいかもあわせて確認する（ステップ５３３）。
ソート処理があり、本番環境システム３０でのデータ読み出しサイズが本番環境のソートバッファサイズより小さい場合は、ディスクソートが発生するため、以下の「数式４」より、本番環境システム３０でのデータ読み出し時間を修正する（ステップ５３４）。
【数４】
2007172516.tif 000006
【００２０】
以上の工程により、単一テーブルの場合の本番環境システム３０でのデータ読み出し時間の予測は完了である。
そして、算出した本番環境システム３０でのＳＱＬ解析時間、ＳＱＬ実行時間およびデータ読み出し時間の合計が、本番環境システム３０での単一テーブルのＳＱＬ実行時間となる。
【００２１】
次に、２テーブル結合の場合のデータ読み出し時間の算出方法について説明する。
まず、テーブル結合方式を確認する（ステップ５４１）。
テーブル結合方式がソート・マージ結合の場合は、図１２の説明図で説明したように、結合するテーブルをそれぞれソートした後に、結合項目によって結合を行い、本番環境システム３０での読み出しデータサイズを算出する（ステップ５４２）。
この場合、本番環境システム３０での読み出しデータサイズは、以下の「数式５」式より算出した値に近似される。
【数５】
2007172516.tif 000007
【００２２】
さらに、本番環境システム３０のハードウェア性能比を考慮するため、前記で算出した本番環境でのデータ読み出し時間を以下の「数式６」より修正する（ステップ５４３）。
【数６】
2007172516.tif 000008
【００２３】
続いて、単一テーブルの場合と同様に、データバッファおよびソートバッファでのディスクＩ／Ｏがあるかを確認し、必要に応じて本番環境システム３０でのデータ読み出し時間を修正する。
一方、ネステッドループの場合は、図１１の説明図で説明したように、外部表Ａの各レコードの結合項目をもとに内部表Ｂを検索する。
この場合、本番環境システム３０での読み出しデータサイズは、以下の「数式７」により算出した値に近似される（ステップ５４４）。
【数７】
2007172516.tif 000009
【００２４】
さらに、ソート・マージの場合と同様に、本番環境システム３０のハードウェア性能比を考慮するため、前記で算出した本番環境システム３０でのデータ読み出し時間を以下の「数式８」より修正する（ステップ５４５）。
【数８】
2007172516.tif 000010
【００２５】
前記で算出した本番環境システム３０でのデータ読み出し時間は、ディスクＩ／Ｏが発生する場合を考慮されていないので、本番環境システム３０でのデータ読み出しサイズが本番環境システム３０のデータバッファサイズより小さいか確認する（ステップ５４６）。
【００２６】
本番環境システム３０でのデータ読み出しサイズが本番環境システム３０のデータバッファサイズより大きい場合、以下の「数式９」により、本番環境システム３０でのデータ読み出し時間を修正する（ステップ５４７）。
【数９】
2007172516.tif 000011
【００２７】
前記の修正後は、ソート時のディスクＩ／Ｏを確認する（ステップ５５１）。
ソート処理がある場合は、ネステッドループでは、結合したテーブルの一致した行のみをソートするので、一致した行は、検索結果行数×（外部表の１レコード長＋内部表の１レコード長）×本番環境のレコード件数÷開発環境のレコード件数となる。上記の情報は、開発環境ＳＱＬ情報記憶手段１６と開発環境レコード件数記憶手段１５より取得する。
そこで、以下の「数式１０」により、ネステッドループにおける本番環境システム３０での想定ソートサイズを算出する（ステップ５５２）。
【数１０】
2007172516.tif 000012
【００２８】
さらに、前記で算出した本番環境システム３０での想定ソートサイズが本番環境システム３０のソートバッファサイズより小さいかを確認する（ステップ５５３）。
本番環境システム３０での想定ソートサイズが本番環境システム３０のソートバッファサイズより大きい場合は、以下の「数式１１」により、本番環境システム３０でのデータ読み出し時間を修正する（ステップ５５４）。
【数１１】
2007172516.tif 000013
以上で、２テーブル結合時の本番環境システム３０でのデータ読み出し時間は完了である。
【００２９】
（具体例）
以下に、この発明の具体例を挙げて説明する。
まず、本番環境で所要時間を予測したいＳＱＬ文を開発環境システム２０で実行する。実行するＳＱＬ文は、図３の1行目に記載している「select * from A;」とする。このＳＱＬ文の情報は、当該ＳＱＬ文実行時のＳＱＬトレースから取得し、図３の開発環境ＳＱＬ情報記憶手段１６へ入力する。
入力内容は、図３の1行目に記載の通り、実行計画はテーブルＡの検索、ＳＱＬ解析時間は０．０１秒、ＳＱＬ実行時間は０．０１秒、データ読み出し時間は５．００秒、データ読み出しサイズは５ＭＢ、検索結果行数は１００００件となる。
【００３０】
次に、ハードウェア性能情報記憶手段１７へ情報を入力する。
図４の1行目に記載の通り、開発環境システム２０とのメモリＩ／Ｏ速度比は１、開発環境システム２０とのディスクＩ／Ｏ速度比は５、開発環境システム２０とのＣＰＵクロック数比は２、本番環境システム３０でのデータバッファサイズは１ＧＢ、本番環境システム３０でのソートバッファサイズは１０ＭＢ、本番環境システム３０でのディスクＩ／Ｏ速度は１００ＭＢ／ｓｅｃとなる。
【００３１】
次に、本番環境システム３０でのＳＱＬ解析時間とＳＱＬ実行時間を算出する。開発環境システム２０での値は、それぞれ０．０１秒であるため、それぞれＣＰＵクロック数比で除算すると、０．０１秒（ＳＱＬ解析時間、もしくは、ＳＱＬ実行時間）÷２（ＣＰＵクロック数比）＝０．００５秒となる。
【００３２】
さらに、データ読み出し時間を算出するため、本番環境のレコード件数を入力する。なお、当該ＳＱＬは、単一テーブル検索であるため、開発環境のデータ読み出し時間に、本番環境システム３０と開発環境システム２０のレコード件数比率を乗算し、メモリＩ／Ｏ速度比とＣＰＵクロック数比で除算する。
開発環境システム２０のデータ読み出し時間が、５．００秒であるため、５．００秒（開発環境のデータ読み出し時間）×５００００（本番環境のレコード件数）÷１００００（開発環境のレコード件数）÷１（メモリＩ／Ｏ速度比）÷２（ＣＰＵクロック数比）＝１２．５秒となる。
また、当該テーブルの本番環境システム３０でのデータ読み出しサイズは、５ＭＢ（開発環境でのデータ読み出しサイズ）×５００００（本番環境のレコード件数）÷１００００（開発環境のレコード件数）＝２５ＭＢとなる。
これは、本番環境システム３０のデータバッファサイズ１ＧＢよりも小さいため、ディスクＩ／Ｏは発生しない。よって、前記で算出した本番環境システム３０でのデータ読み出し時間は修正不要である。
また、当該ＳＱＬでは、ソートが発生しないため、当該ＳＱＬの本番環境システム３０でのデータ読み出し時間算出は、以上で完了となる。
よって、当該ＳＱＬ文の本番環境システム３０での実行時間は、１２．５秒であると予測される。
【図面の簡単な説明】
【００３３】
【図１】本発明を実施する計算装置の実施の形態を示す構成図である。
【図２】開発環境レコード件数記憶手段の記憶内容の例を示す図である。
【図３】開発環境ＳＱＬ情報記憶手段の記憶内容の例を示す図である。
【図４】ハードウェア性能情報記憶手段の記憶内容の例を示す図である。
【図５】ＳＱＬ所要時間を予測するプログラムの処理を示すフローチャートである。
【図６】図５の続きを示すフローチャートである。
【図７】図６の続きを示すフローチャートである。
【図８】図７の続きを示すフローチャートである。
【図９】図８の続きを示すフローチャートである。
【図１０】図９の続きを示すフローチャートである。
【図１１】ネステッドループ処理の概要説明図である。
【図１２】ソート・マージ処理の概要説明図である。
【図１３】従来におけるＣＲＭシステムの概要を示すシステム構成図である。
【符号の説明】
【００３４】
１０  所要時間予測計算装置
１４  ＳＱＬ所要時間予測計算プログラム
１５  開発環境レコード件数記憶手段
１６  開発環境ＳＱＬ情報記憶手段
１７  ハードウェア性能比記憶手段
２０  開発環境システム
３０  本番環境システム
４０  ＳＱＬ文
【図１】
2007172516.tif 000014
【図２】
2007172516.tif 000015
【図３】
2007172516.tif 000016
【図４】
2007172516.tif 000017
【図５】
2007172516.tif 000018
【図６】
2007172516.tif 000019
【図７】
2007172516.tif 000020
【図８】
2007172516.tif 000021
【図９】
2007172516.tif 000022
【図１０】
2007172516.tif 000023
【図１１】
2007172516.tif 000024
【図１２】
2007172516.tif 000025
【図１３】
2007172516.tif 000026