(57)【要約】【課題】データベースに対して割り当てられているバッファプールのチューニングを効率的に行うことが可能な技術を提供する。【解決手段】データベースに対して割り当てられているバッファプールの稼動情報の参照要求を受け付けた場合に、そのバッファプールの稼動情報の提供を行うステップと、バッファプールの稼動情報が当該バッファプールの所定の閾値に対して異常な状態となっているかどうかを解析するステップと、前記解析によりバッファプールの異常が検知された場合に、そのバッファプールのチューニングを行うステップとを有するものである。【選択図】        図１
2004362041.tif 000002
【特許請求の範囲】
【請求項１】
データベースに対して割り当てられているバッファプールの稼動情報の参照要求を受け付けた場合に、そのバッファプールの稼動情報の提供を行うステップと、バッファプールの稼動情報が当該バッファプールの所定の閾値に対して異常な状態となっているかどうかを解析するステップと、前記解析によりバッファプールの異常が検知された場合に、そのバッファプールのチューニングを行うステップとを有することを特徴とするデータベース管理方法。
【請求項２】
所定時間経過時、システム構成変更時、利用者指定契機または全バッファプールに共通の閾値による異常検知時に、前記バッファプールのチューニングを行うかどうかを判定することを特徴とする請求項１に記載されたデータベース管理方法。
【請求項３】
バッファプールの追加または削除、バッファプール内のバッファ面数の変更若しくは表格納領域に割り当てられているバッファプールの割り当ての変更により、前記バッファプールのチューニングを行うことを特徴とする請求項１または請求項２のいずれかに記載されたデータベース管理方法。
【請求項４】
データベースに対して割り当てられているバッファプールの稼動情報の参照要求を受け付けた場合に、そのバッファプールの稼動情報の提供を行う稼動情報取得処理部と、バッファプールの稼動情報が当該バッファプールの所定の閾値に対して異常な状態となっているかどうかを解析する稼動情報監視・解析処理部と、前記解析によりバッファプールの異常が検知された場合に、そのバッファプールのチューニングを行うバッファプール変更処理部とを備えることを特徴とするデータベース管理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データベース管理システムにおいて、各データベースに割り当てたバッファプールの自動追加・削除及びバッファプール内のバッファの配置変更による自動チューニングを行うデータベース管理装置に関するものである。
【０００２】
【従来の技術】
従来のデータベース管理システムにおいて、更新要求や検索要求によるデータベースの参照・更新を行う場合、データベース管理システムを起動する際に作成した入出力用のデータベースバッファ（以下、単にバッファという）を用いて参照・更新を行っており、バッファの集まりであるデータベースバッファプール（以下、単にバッファプールという）を定義し、表格納領域（データベース）に対してそのバッファプールを割り当てている。
【０００３】
データベース利用者は、バッファプールに割り当てたバッファ面数や、データベースに割り当てるバッファプールを最適にする為に、利用者が手動で種々の稼動情報を取得し、その情報を解析し、手動でバッファプールの定義を変更するチューニングを繰り返すことによって、最適なバッファプールの定義を見つけ出していた。本作業は、ある程度経験を積んだ利用者のみが出来る作業であり、試行錯誤しながら作業する必要があった。
【０００４】
また、高度なデータベースシステムの場合には、既に定義済みの他バッファプールからバッファを転用する等して、自動割り当てをすることによって自動的にチューニングする動作を行っているものもある。例えば、システム内で定めている管理情報に応じてバッファプールサイズを動的に変更し、データベースへのアクセスの短縮化を図るものや、各プロセスの状況に応じて各バッファプール内のバッファ面数を再割り当てすることによりデータベースの短縮化を図るものが提案されている（例えば特許文献１、２参照）。
【０００５】
【特許文献１】
特開平７−９３１９８号公報
【特許文献２】
特開２０００−５７０２７号公報
【０００６】
【発明が解決しようとする課題】
前記従来技術では、システム内で定めている管理情報に応じてバッファプールサイズを動的に変更し、データベースへのアクセスの短縮化を図っているが、この技術はシステム内の管理情報のみを対象とするものであり、利用者によって設定される情報による変更が対象とならなかった。
【０００７】
また、各プロセスの状況に応じて各バッファプール内のバッファ面数を再割り当てすることによりデータベースの短縮化を図る技術は、限られたバッファプール内でのバッファの割り当て変更によるチューニングでしかなく、更に、一定時間間隔でのチューニングタイミングしかもたず、システムの構成変更のタイミング等によるチューニングができなかった。
【０００８】
現在、２４時間３６５日運転をする上で、表格納領域の追加または削除、新規業務の追加や業務変更に伴うプログラムの追加及び変更等により、バッファプールの使用環境が変化することに対して、バッファプール内のバッファ割り当ての変更のみでは、常に最適なバッファ環境を保つことには限界があり、バッファプールの使用環境が変化するタイミングにおいて、バッファプール、バッファ、バッファへの表格納領域の配置を変更することで最適な環境を作り出すことができる自動チューニングの技術が求められている。
【０００９】
本発明の目的は、上記問題を解決し、データベースに対して割り当てられているバッファプールのチューニングを効率的に行うことが可能な技術を提供することにある。
【００１０】
【課題を解決するための手段】
本発明は、バッファプールの使用環境が変化するタイミングでバッファプールの稼動情報を判定してバッファプールのチューニングを行うものである。
【００１１】
本発明のデータベース管理装置（計算機や情報処理装置、またはその様な処理を実施するプログラムやオブジェクトでも良い）では、バッファプールのチューニングを行う際に、システムで定められた稼動情報の閾値によって判断するだけでなく、利用者によって設定された稼動情報の閾値によってバッファプールの追加または削除、バッファプール内のバッファ面数の変更等のチューニングを行う。
【００１２】
また本発明では、稼動情報の解析のタイミングをシステムで定められた所定時間間隔で行うだけでなく、表格納領域の追加または削除といったシステム構成の変更が行われたタイミングや、所定プログラムの起動時といった利用者によって設定される事象が発生したタイミング、システムまたは利用者によって設定された閾値に対して異常状態を検知したタイミングで行うことにより、バッファプールの使用環境の変化及びシステムの異常状態をタイムリーに検知してバッファプールのチューニングを行う。
【００１３】
これに加え、本発明では、バッファプールのチューニングを行う上で、バッファプールの追加または削除、バッファプール内のバッファ面数の変更を行うだけでなく、バッファプールが割り当てられた表格納領域の配置の変更を行う。
【００１４】
前記の様に本発明では、所定の時間間隔でチューニングを行うことに加え、システム構成変更時、利用者指定のプログラム起動時、システムまたは利用者指定の閾値による異常検知時等の、バッファの使用環境が変化したタイミングにおいてタイムリーに最適なバッファチューニングを行うことができる。また、チューニングによって追加されたバッファについても、不要であれば再チューニングによって解放し、メモリの有効利用を行うことが可能である。
【００１５】
以上の様に本発明のデータベース管理装置によれば、データベースに対して割り当てられているバッファプールのチューニングを効率的に行うことが可能である。
【００１６】
【発明の実施の形態】
以下に各データベースに割り当てられているバッファプールのチューニングを行う一実施形態のデータベース管理装置について説明する。
【００１７】
図１は本実施形態のデータベース管理装置の概略構成を示す図である。まず、図１のデータベース管理装置の構成を説明する。このデータベース管理装置は、外部記憶装置上に表格納領域（データベース１〜６）と、主記憶装置上に存在するバッファプール１〜３を持ち、各バッファプールと表格納領域とをインタフェースで結ぶ入出力手段２と、各バッファプールの稼動情報とそのバッファプールが割り当てられている各表格納領域の稼動情報を持つバッファプール稼動情報４と、本実施形態において新たに付加された、システムの異常を評価する為の異常検知閾値表、バッファプールや表格納領域の状態を評価する為のチューニング閾値表や、解析の行われる契機が設定される利用者指定解析事象表等のチューニング情報が格納されたチューニング情報５とを備えている。
【００１８】
また本実施形態のデータベース管理装置は、稼動情報参照要求を受け付けた場合や、異常検知閾値表の条件に該当する場合に稼動情報を提供する稼動情報取得処理部６と、所定時間経過時、システム構成変更時または利用者指定契機発生時に稼動情報取得処理部６に対して情報提供要求を出して稼動情報を自ら取得する処理と、その取得したタイミングや、システムまたは利用者によって予め設定された異常検知閾値により異常を検知したタイミングで、既に割り当てられているバッファプール、そのバッファ、及びバッファの割り当てられた表格納領域の配置が最適となっているかどうかを、システムまたは利用者によって予め設定されたチューニング閾値を基に解析する稼動情報監視・解析処理部７と、与えられたバッファプール情報を基に、バッファプールの追加または削除、バッファプール内のバッファ面数の変更、或いは表格納領域に割り当てられているバッファプールの割り当ての変更を行うバッファプール変更処理部８を備えている。
【００１９】
データベース管理装置を、稼動情報取得処理部６、稼動情報監視・解析処理部７及びバッファプール変更処理部８として機能させる為のプログラムは、ＣＤ−ＲＯＭ等の記録媒体に記録され磁気ディスク等に格納された後、メモリにロードされて実行されるものとする。なお前記プログラムを記録する記録媒体はＣＤ−ＲＯＭ以外の他の記録媒体でも良い。また前記プログラムを当該記録媒体から情報処理装置にインストールして使用しても良いし、ネットワークを通じて当該記録媒体にアクセスして前記プログラムを使用するものとしても良い。
【００２０】
プログラムやオブジェクトの実行によって、外部記憶装置内に存在する表格納領域に対して、参照・更新といった命令が実行されると、入出力手段２を介して、予め表格納領域に割り当てたバッファプール内のバッファにデータを保持し、その保持されたデータを基に結果がプログラムに返却される。更に、稼動情報取得処理部６によって、各バッファプールの稼動情報であるヒット率やＩ／Ｏ回数（バッファプールと表格納領域との間の入出力回数）や入出力要求回数（プログラムやオブジェクトからの入出力要求の回数）、バッファプールが割り当てられている表格納領域の稼動情報である、表格納領域に対するＩ／Ｏ回数や入出力要求回数等を、バッファプール稼動情報４として常時保持している。
【００２１】
本実施形態における稼動情報監視・解析処理部７は、稼動情報取得処理部６に対して、所定時間間隔、表格納領域の追加や削除等のシステム構成変更契機、またはチューニング情報５中の利用者指定解析事象表に設定されているプログラムの実行契機といった利用者が変更の契機としたい利用者指定の契機で稼動情報の取得要求を行い、バッファプール稼動情報４を取得する。
【００２２】
また本実施形態のデータベース管理装置では、チューニング情報５中の異常検知閾値表とバッファプール稼動情報４により異常状態を検知した場合に、稼動情報取得処理部６から稼動情報監視・解析処理部７にバッファプール稼動情報４を提供する。
【００２３】
稼動情報監視・解析処理部７は、自ら稼動情報取得処理部６から稼動情報を取得した場合と、稼動情報取得処理部６から稼動情報が提供されたタイミングを契機に、稼動情報をチューニング情報５中のチューニング閾値表を用いて解析する。そして、バッファプール１〜３に対して各バッファプールのチューニング閾値条件を満足し、バッファプールの割り当てが行われている全ての表格納領域がそのチューニング閾値条件を満足する様な最適なバッファプールの構成を決定する。
【００２４】
決定されたバッファプール情報を基にバッファプール変更処理部８に対してバッファプール変更要求を行い、その要求に従ってバッファプール内のバッファ面数の変更、バッファプールの追加または削除、表格納領域に割り当てられているバッファプールの割り当ての変更を行う。これにより、最適なバッファプール状態を形成する。
【００２５】
従来技術では、バッファプールのバッファ面数の初期値や、バッファプールが最初に割り当てられる表格納領域については、利用者によって予め行われた見積もりによって設定される。データベース処理を要求するプログラムによっては、予め設定されたバッファプールの定義に従って、バッファプール１〜３にデータが保持されヒット率が最適な状態に保たれるが、システムを運用して行く内に、新たな業務の為のプログラムの追加や変更、表格納領域の追加・削除等のシステムの構成変更が実施された場合、当初想定した状態が崩れ、特定のバッファプールに負荷が集中したり、バッファ不足が発生し、バッファヒット率の低下、入出力要求回数の増大や、Ｉ／Ｏの多発を招く。逆に、負荷が無くなったりバッファの余剰が発生した場合には、無駄な資源を確保した状態となり、システムのリソースの効率的な使用ができていない状態となる。これは当初の利用目的が動的に変化することを見越した利用者のバッファプールの設定ができていないことが原因である。
【００２６】
本実施形態では、この様なバッファプールの利用率の不均衡状態及び異常状態を是正する手段として稼動情報監視・解析処理部７を用いる。稼動情報監視・解析処理部７は、図２、図３、図４、図５、図６のフローチャートに従って、稼動情報の監視・解析処理を行う。
【００２７】
図２は本実施形態の解析を実施するまでの監視処理の処理手順を示すフローチャートである。図３は本実施形態のバッファプール状態が適正であるかを解析する処理の処理手順を示すフローチャートである。図４は本実施形態のシステムの変更処理が行われた場合の解析処理の処理手順を示すフローチャートである。図５は本実施形態の異常状態表格納領域サーチ処理の処理手順を示すフローチャートである。
【００２８】
図２の処理では、取得している稼動情報を基に、解析を実施するかどうかを判断する監視処理を行う。まず、システムまたは利用者によって定められた所定時間間隔の監視時間に達したかどうかを判断する（ステップＳ１）。システムまたは利用者によって定められた所定時間が経過した場合には、稼動情報取得処理部６により即座に稼動情報取得処理を実施し（ステップＳ６）、解析処理を行う（ステップＳ７）。
【００２９】
前記所定時間が経過していない場合には、システム構成変更を行う為のコマンドが入力されているかどうかを調べ、表格納領域の追加や削除等のシステム構成変更契機であるかどうかを判断する（ステップＳ２）。システムの構成変更が実施された契機である場合には、バッファプールの構成が適正でなくなる可能性がある為、その場合には稼動情報取得処理部６により即座に稼動情報取得処理を実施し（ステップＳ６）、解析処理を行う（ステップＳ７）。
【００３０】
システムの構成変更契機でない場合、チューニング情報５中の利用者指定解析事象表が存在するかを判定し（ステップＳ３）、存在する場合には、プログラムの起動等を行う為のコマンドが入力されているかどうかを調べ、利用者指定解析事象表に設定されているプログラムの起動等といった利用者指定解析契機であるかを判定する（ステップＳ４）。利用者指定の解析契機である場合には、稼動情報取得処理部６により即座に稼動情報取得処理を実施し（ステップＳ６）、解析処理を行う（ステップＳ７）。
【００３１】
チューニング情報５中の利用者指定解析事象表が存在しない、または、利用者指定解析契機でない場合には、チューニング情報５中の異常検知閾値表によって異常状態が検知され、その異常検知契機での稼動情報取得処理部６からの稼動情報の通知が行われていないかを判断する（ステップＳ５）。異常検知契機であった場合、直ちに解析処理を行う（ステップＳ７）。異常検知契機でなかった場合には、再び監視状態に移る。
【００３２】
上記に示した通り本実施形態では、バッファプールの状態の解析タイミングをシステムで定められた所定時間によるタイミングだけでなく、利用者によって指定された所定時間経過時、システム構成変更契機、利用者指定契機、システム稼動上の異常検知契機で解析を実行するという特徴を持っている。
【００３３】
図３の処理では、上記の監視処理において、解析が必要であると判断された契機に、バッファプールまたはバッファプール内のバッファ面数の変更、或いはバッファプールが割り当てられた表格納領域の割り当て変更を行うか否かを解析する解析処理を行う。
【００３４】
まず、解析の契機がシステムの構成変更契機であるかどうかを判断する（ステップＳ８）。システムの構成変更契機である場合には、システム構成変更処理を行う（ステップＳ９）。システム構成変更契機でない場合には、チューニング情報５中の全バッファプールに対して、バッファプールチューニング閾値表によりバッファプールの状態が異常状態になっていないかを判定する（ステップＳ１０）。バッファプールが異常状態になっている場合には、バッファプール内の表格納領域で異常状態になっているものをサーチする異常状態表格納領域サーチ処理を行う（ステップＳ１１）。
【００３５】
図４の処理では、システム構成変更が行われた契機で、バッファプールまたはバッファプール内のバッファ面数の変更、或いはバッファプールが割り当てられた表格納領域の割り当て変更を行うか否かを判定するシステム構成変更処理を行う。
【００３６】
まず、システム構成変更時に入力されたコマンドの内容を調べ、表格納領域の変更により、表格納領域の追加または削除のどちらが行われたのかを判断する（ステップＳ１２）。削除が行われた場合、表格納領域に割り当てられているバッファプールを示す情報を参照し、削除対象の表格納領域に割り当てられていたバッファプールに他の表格納領域が存在するかどうかを判定する（ステップＳ１３）。他の表格納領域が存在しない場合には、当該バッファプールが不要となる為、バッファプール変更処理部８により、そのバッファプールの削除を行う（ステップＳ１５）。
【００３７】
他の表格納領域が存在する場合には、チューニング情報５中のバッファプールチューニング閾値表を用い、残りの表格納領域の稼動情報がバッファプールの閾値に条件を満たすかどうかを判定する（ステップＳ１６）。閾値の条件を満たしている場合には何も行わない。また閾値の条件を満たしていない場合には、バッファの余剰が発生している為、バッファプール変更処理部８により、バッファプールチューニング閾値表内の閾値内に収まるバッファ面数を求め、バッファプール内のバッファ面数の変更を行う（ステップＳ１７）。
【００３８】
例えば残りの表格納領域の入出力要求回数を合わせた値がバッファプールチューニング閾値表内の入出力要求回数の閾値の条件を満たしていない場合、削除対象の表格納領域に割り当てられていた面数を減少させた数を、そのバッファプールの新しい面数としてバッファプール内のバッファ面数の変更を行う。ここでＩ／Ｏ回数等、他の稼動情報を用いるものとしても良い。
【００３９】
一方、表格納領域の追加が行われた場合には、その追加された表格納領域に割り当てられているバッファプールが表格納領域の追加により最適な状態を保つことができるかどうかを、チューニング情報５中のバッファプールチューニング閾値表を用いて判定する（ステップＳ１４）。
【００４０】
そのバッファプールの各表格納領域の稼動情報が閾値の条件を満たしている場合には何も行わない。また閾値の条件を満たしていない場合には、全バッファプールに対して、前記追加された表格納領域を受け入れ可能な他のバッファプールが存在するかどうかを、チューニング情報５中のバッファプールチューニング閾値表を用いて判定する処理を行う（ステップＳ１８）。
【００４１】
受け入れ可能なバッファプールが存在する場合にバッファプール変更処理部８により、追加された表格納領域の割り当ての変更を行う（ステップＳ１９）。受け入れ可能なバッファが存在しない場合には、追加によりバッファプール内のバッファ面数等の不足が発生している為、バッファプール変更処理部８により、バッファプールの閾値表の閾値内に収まるバッファ構成要素を求め、バッファプールの作成を行う（ステップＳ２０）。例えば、前記追加された表格納領域の履歴情報から過去の割り当て時に使用していた面数の情報を取得し、その取得した面数を持つバッファプールを作成する。
【００４２】
また図５の処理では、判定対象のバッファプールがバッファプールの閾値の条件を満たしていない場合に、原因となっている異常状態の表格納領域をサーチし、バッファプールまたはバッファプール内のバッファ面数の変更、或いはバッファプールが割り当てられた表格納領域の割り当て変更を行うかどうかを判定する異常状態表格納領域サーチ処理を行う。
【００４３】
まず、異常状態のバッファプールが割り当てられている全表格納領域に対して、チューニング情報５中の表格納領域閾値表を用いて閾値判定を行う（ステップＳ２１）。各表格納領域の稼動情報が閾値の条件を全て満たしている場合には、全体としてはバッファプールの閾値を満たしていないことから、バッファプール内のバッファ面数等の不足が発生していると判定し、バッファプール変更処理部８により、バッファプールの閾値表内の閾値内に収まるバッファ構成要素を求め、バッファプールの変更を行う（ステップＳ２５）。
【００４４】
例えば、バッファプールの稼動情報がその閾値からどれだけ外れているかに応じて増減させる面数を決定し、その決定した面数を増減させた数をバッファプールの新しい面数としてバッファプール内のバッファ面数の変更を行う。
【００４５】
異常状態の表格納領域が見つかった場合には、全バッファプールに対して、その表格納領域を受け入れ可能なバッファプールが存在するかどうかをチューニング情報５中のバッファプールチューニング閾値表により判定する処理を行う（ステップＳ２２）。
【００４６】
受け入れ可能なバッファプールが存在する場合にバッファプール変更処理部８により、その異常状態の表格納領域の割り当ての変更を行う（ステップＳ２４）。受け入れ可能なバッファが存在しない場合には、その異常状態の表格納領域によりバッファプール内のバッファ面数等の不足が発生している為、バッファプール変更処理部８により、バッファプールの閾値表内の閾値内に収まるバッファ構成要素を求め、バッファの構成要素によって、バッファプールの作成を行う（ステップＳ２３）。例えば、その表格納領域の稼動情報がその閾値からどれだけ外れているかに応じて必要な面数を決定し、その決定した面数を持つバッファプールを作成する。
【００４７】
次に本実施形態のデータベース管理装置における図２〜図５の監視・解析処理を、図６、図７、図８を用いて具体的に説明する。
図６は本実施形態の表格納領域割り当て変更前のバッファプール状態の一例を示す図である。図６に示す様に表格納領域割り当て変更前のバッファプール１が、データベース１、データベース２及びデータベース３の表格納領域に割り当てられており、バッファプール２が、データベース４の表格納領域に割り当てられている。
【００４８】
図８は本実施形態の異常検知閾値表、バッファプールチューニング閾値表、表格納領域閾値表の例を示す図である。各表には、システムデフォルトの値と利用者によって設定された利用者条件の値が格納されているが、本実施形態では、利用者条件が優先して用いられるものとし、利用者条件の設定されていない場合にシステムデフォルトが用いられるものとする。
【００４９】
図８の異常検知閾値表Ｔ１は、バッファプール１やバッファプール２等、各バッファプールの稼動情報に対して共通して用いられる閾値として、システムデフォルトの値と利用者によって設定された値を格納している。
【００５０】
またバッファプールチューニング閾値表Ｔ２は、特定のバッファプールの稼動情報に対して用いられる閾値として、システムデフォルトの値と利用者によって設定された値を格納しており、バッファプール１やバッファプール２等、各バッファプールに対応した複数の閾値が格納されているものとする。
【００５１】
そして表格納領域閾値表Ｔ３は、バッファプール中の特定の表格納領域の稼動情報に対して用いられる閾値として、システムデフォルトの値と利用者によって設定された値を格納しており、データベース１やデータベース２等、各表格納領域に対応した複数の閾値が格納されているものとする。
【００５２】
図６のバッファプール１情報の稼動情報である入出力要求回数が、図８の異常検知閾値表Ｔ１の入出力要求回数の利用者条件である５０００回／秒を超えた為、稼動情報取得処理部６が稼動情報監視・解析処理部７にバッファプール稼動情報４を提供する処理を行う。
【００５３】
稼動情報監視・解析処理部７は、図２のフローチャートに従い、異常検知契機の判定（ステップＳ５）により異常検知契機であると判断し、解析処理を行う（ステップＳ７）。解析処理では、異常検知契機での解析処理であることから、異常検知したバッファプールに対して、図８のバッファプールチューニング閾値表Ｔ２を用いて閾値判定を行う（ステップＳ１０）。
【００５４】
その閾値判定において、入出力要求回数が利用者条件の閾値２０００〜４５００回／秒を満たしていないことから、異常状態表格納領域サーチ処理を行う（ステップＳ１１）。異常状態表格納領域サーチ処理では、バッファプール１情報内のデータベース１情報〜データベース３情報に対して、図８の表格納領域閾値表Ｔ３を用い、閾値を満たしていない表格納領域をサーチする。
【００５５】
データベース１情報は、入出力要求回数の閾値０〜２５００回／秒を満たしていない為、データベース１の表格納領域に対して受け入れバッファプールが存在しないかをサーチする（ステップＳ２２）。
【００５６】
ここで、異常対象以外のバッファプール２に対して、データベース１の表格納領域を受け入れた場合に、その稼動情報が図８のバッファプールチューニング閾値表の閾値内に収まるかどうかを判定する。バッファプール２は、データベース１の表格納領域を受け入れることにより、既に割り当ての行われているデータベース４の表格納領域に対する入力要求回数の１００回／秒に加えて、データベース１の表格納領域に対する入力要求回数の３０００回／秒が追加された場合でも、バッファプール２としての入出力要求回数が３１００回／秒となることが予想され、バッファプール２としての入力要求回数が閾値範囲内に収まる為、受け入れ先バッファプールが存在したことになる。これに伴い、データベース１の表格納領域にバッファプール２を割り当て変更する要求をバッファプール変更処理部８に依頼し、バッファプールの変更を行う。
【００５７】
図７は本実施形態の表格納領域割り当て変更後のバッファプール状態の一例を示す図である。前記の変更により、図７のシステム構成の様な、バッファプールチューニング情報閾値を満たすバッファプール構成となり、入出力要求回数が均等化する。
【００５８】
前記の様に本実施形態では、所定の時間間隔でチューニングを行うことに加え、システム構成変更時、利用者指定のプログラム起動時、システムまたは利用者指定の閾値による異常検知時等の、バッファの使用環境が変化したタイミングにおいてタイムリーに最適なバッファチューニングを行うことができる。また、チューニングによって追加されたバッファについても、不要であれば再チューニングによって解放し、メモリの有効利用を行うことが可能である。
【００５９】
以上説明した様に本実施形態のデータベース管理装置によれば、バッファプールの使用環境が変化するタイミングでバッファプールの稼動情報を判定してバッファプールのチューニングを行うので、データベースに対して割り当てられているバッファプールのチューニングを効率的に行うことが可能である。
【００６０】
【発明の効果】
本発明によれば、データベースに対して割り当てられているバッファプールのチューニングを効率的に行うことが可能である。
【図面の簡単な説明】
【図１】本実施形態のデータベース管理装置の概略構成を示す図である。
【図２】本実施形態の解析を実施するまでの監視処理の処理手順を示すフローチャートである。
【図３】本実施形態のバッファプール状態が適正であるかを解析する処理の処理手順を示すフローチャートである。
【図４】本実施形態のシステムの変更処理が行われた場合の解析処理の処理手順を示すフローチャートである。
【図５】本実施形態の異常状態表格納領域サーチ処理の処理手順を示すフローチャートである。
【図６】本実施形態の表格納領域割り当て変更前のバッファプール状態の一例を示す図である。
【図７】本実施形態の表格納領域割り当て変更後のバッファプール状態の一例を示す図である。
【図８】本実施形態の異常検知閾値表、バッファプールチューニング閾値表、表格納領域閾値表の例を示す図である。
【符号の説明】
１…表格納領域、２…入出力手段、３…バッファプール、４…バッファプール稼動情報、５…チューニング情報、６…稼動情報取得処理部、７…稼動情報監視・解析処理部、８…バッファプール変更処理部。
【図１】
2004362041.tif 000003
【図２】
2004362041.tif 000004
【図３】
2004362041.tif 000005
【図４】
2004362041.tif 000006
【図５】
2004362041.tif 000007
【図６】
2004362041.tif 000008
【図７】
2004362041.tif 000009
【図８】
2004362041.tif 000010