(57)【要約】      （修正有）【課題】物理的記憶領域へのアクセス頻度を考慮した物理的記憶領域内へのデータベースのデータの配置の設定を可能とする。【解決手段】計算機は、データベースのデータを格納する複数の物理的な記憶領域を含む計算機システムに適用可能である。この計算機は、データベースを構成する構成情報内の所定の参照項目の値の範囲別に、構成情報のデータに対する想定されるアクセス頻度を取得する参照項目別アクセス頻度取得部を備えている。また、この計算機は、取得したアクセス頻度に基づき、参照項目の値の範囲によって分割された構成情報のデータを格納すべき物理的記憶領域を設定するデータ配置部１１０を備えている。【選択図】図１
2006221513.tif 000002
【特許請求の範囲】
【請求項１】
データベースのデータを格納する複数の物理的な記憶領域を含む計算機システムに適用可能な計算機であって、
前記データベースを構成する構成情報内の所定の参照項目の値の範囲別に、前記構成情報のデータに対する想定されるアクセス頻度を取得する参照項目別アクセス頻度取得部と、
前記取得したアクセス頻度に基づき、前記参照項目の値の範囲によって分割された前記構成情報のデータを格納すべき前記物理的記憶領域を設定するデータ配置部と、を備える、計算機。
【請求項２】
請求項１記載の計算機であって、
前記物理的記憶領域は、前記計算機システムの有する記憶装置システム内に含まれる、計算機。
【請求項３】
請求項１記載の計算機であって、
前記データベースは、複数の前記構成情報を含み、
前記構成情報は、複数の項目によって構成されるレコードを複数含み、
前記参照項目は、前記複数の項目の内、複数の前記構成情報に共通して含まれる特定の項目である、計算機。
【請求項４】
請求項１記載の計算機であって、
前記データ配置部は、所定の前記物理的記憶領域に格納される前記構成情報のデータに対するアクセス頻度の合計に関する所定の条件が満足されるように、前記構成情報のデータを格納すべき前記物理的記憶領域を設定する、計算機。
【請求項５】
請求項４記載の計算機であって、
前記データ配置部は、管理者によって設定された前記所定の条件を取得する配置条件取得部を含む、計算機。
【請求項６】
請求項４記載の計算機であって、
前記所定の条件は、前記計算機システムに含まれる前記物理的記憶領域間において、前記アクセス頻度の合計の差が所定の閾値より小さいことである、計算機。
【請求項７】
請求項４記載の計算機であって、
前記所定の条件は、前記計算機システムに含まれる前記物理的記憶領域の内、特定のデータが格納される特定の前記物理的記憶領域において、前記アクセス頻度の合計が所定の閾値より小さいことである、計算機。
【請求項８】
請求項１記載の計算機であって、
前記アクセス頻度は、時間の経過に応じて変化するように設定されており、
前記データ配置部は、前記アクセス頻度の値に変化があるときに、前記構成情報のデータを格納すべき前記物理的記憶領域を設定する、計算機。
【請求項９】
請求項１記載の計算機であって、
前記アクセス頻度は、前記構成情報のデータに新たに追加されるデータに対する想定されるアクセス頻度を含み、
前記データ配置部は、前記構成情報のデータに新たにデータが追加されるときに、前記構成情報のデータを格納すべき前記物理的記憶領域を設定する、計算機。
【請求項１０】
請求項１記載の計算機であって、
前記計算機システムは、前記データベースを運用する業務用計算機を有し、
前記データ配置部は、前記構成情報のデータを格納すべき前記物理的記憶領域を設定した後、前記設定に従った前記構成情報のデータの格納の実行を前記業務用計算機に対し指示する、計算機。
【請求項１１】
データベースのデータを格納する複数の物理的な記憶領域を含む計算機システムにおける前記データの配置を設定するデータ配置設定方法であって、
（ａ）前記データベースを構成する構成情報内の所定の参照項目の値の範囲別に、前記構成情報のデータに対する想定されるアクセス頻度を取得する工程と、
（ｂ）前記取得したアクセス頻度に基づき、前記参照項目の値の範囲によって分割された前記構成情報のデータを格納すべき前記物理的記憶領域を設定する工程と、を備える、データ配置設定方法。
【請求項１２】
データベースのデータを格納する複数の物理的な記憶領域を含む計算機システムに適用可能な計算機により、前記計算機システムにおける前記データの配置を設定するデータ配置設定プログラムであって、
前記データベースを構成する構成情報内の所定の参照項目の値の範囲別に、前記構成情報のデータに対する想定されるアクセス頻度を取得する参照項目別アクセス頻度取得機能と、
前記取得したアクセス頻度に基づき、前記参照項目の値の範囲によって分割された前記構成情報のデータを格納すべき前記物理的記憶領域を設定するデータ配置機能と、を、前記計算機に実現させる、データ配置設定プログラム。
【請求項１３】
計算機システムであって、
データベースのデータを格納する物理的な記憶領域を含む記憶装置システムと、
前記計算機システムにおける前記データの配置を設定する計算機と、を備え、
前記計算機システムは、複数の前記物理的記憶領域を含み、
前記計算機は、
前記データベースを構成する構成情報内の所定の参照項目の値の範囲別に、前記構成情報のデータに対する想定されるアクセス頻度を取得する参照項目別アクセス頻度取得部と、
前記取得したアクセス頻度に基づき、前記参照項目の値の範囲によって分割された前記構成情報のデータを格納すべき前記物理的記憶領域を設定するデータ配置部と、を含む、計算機システム。
【請求項１４】
データベースのデータを格納する物理的な記憶領域であるディスクグループを複数含む計算機システムに適用可能な計算機であって、
前記ディスクグループは、前記計算機システムの有する記憶装置システム内に含まれ、
前記データベースは、複数のテーブルを含み、
前記テーブルは、複数の項目によって構成されるレコードを複数含み、
前記複数の項目の内、複数の前記テーブルに共通して含まれる特定の項目がキーとして設定され、
前記計算機は、
前記キーの値の範囲別に、前記テーブルのデータに対する想定されるアクセス頻度を取得するキー値別アクセス頻度取得部と、
前記取得したアクセス頻度に基づき、前記キーの値の範囲によって分割された前記テーブルのデータを格納すべき前記ディスクグループを設定するデータ配置部と、を備える、計算機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機システムにおけるデータベースのデータの配置を設定する技術に関する。
【背景技術】
【０００２】
大量のデータを含むデータベースを扱う計算機システムにおいては、一般に、データベースのデータは、記憶装置システム（例えばストレージシステム）の有する物理的な記憶領域（例えばディスク）内に格納される。計算機システム内の計算機上で稼働するデータベースマネジメントシステム（ＤａｔａＢａｓｅ  Ｍａｎａｇｅｍｅｎｔ  Ｓｙｓｔｅｍ、以下略して「ＤＢＭＳ」とも呼ぶ）は、記憶装置システムの物理的記憶領域内に格納されたデータベースのデータにアクセスしつつ、データベースに関する処理を行う。そのため、ＤＢＭＳの処理性能は、データベースのデータが格納されている物理的記憶領域におけるデータアクセス性能によって影響を受ける。そして、物理的記憶領域におけるデータアクセス性能は、ＤＢＭＳから物理的記憶領域内に格納されたデータへのアクセス頻度に左右される。従って、ＤＢＭＳの処理性能の向上のためには、物理的記憶領域へのアクセス頻度を考慮して、物理的記憶領域内へのデータベースのデータの配置を設定することが重要となる。
【０００３】
データベースを構成するテーブル等と当該テーブル等のデータが格納された物理的記憶領域との関係を示す配置情報と、ＤＢＭＳが実行した処理命令（例えばＳＱＬ文）の履歴情報とを用いて、物理的記憶領域へのアクセス頻度を推測する技術が知られている（例えば特許文献１）。また、同様に、データベースを構成するテーブル等と当該テーブル等のデータが格納された物理的記憶領域との関係を示す配置情報と、物理的記憶領域へのアクセス頻度の監視結果とを用いて、物理的記憶領域におけるデータベースのデータの配置の問題を管理者に提示する技術が知られている（例えば特許文献２）。
【０００４】
【特許文献１】特開２００３−１５０４１４号公報
【特許文献２】米国特許６０３５３０６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
一般に、データベースを構成するテーブル等のデータは、複数の物理的記憶領域にまたがって分割配置される。このとき、各物理的記憶領域におけるデータの格納密度にはばらつきがあることが多く、また、分割されたテーブル等のデータによってＤＢＭＳからのアクセス頻度にもばらつきがあることが多い。さらに、このようなばらつきは、データベースの運用と共に変化することが多い。そのため、上記従来技術では、各物理的記憶領域へのアクセス頻度の監視や推測を精度良く行うことは困難であり、従って、物理的記憶領域へのアクセス頻度を考慮した物理的記憶領域内へのデータベースデータの配置を設定することも困難である。
【０００６】
本発明は、上述した従来の課題を解決するためになされたものであり、物理的記憶領域へのアクセス頻度を考慮した物理的記憶領域内へのデータベースのデータの配置の設定を可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題の少なくとも一部を解決するために、本発明の計算機は、データベースのデータを格納する複数の物理的な記憶領域を含む計算機システムに適用可能な計算機であって、
前記データベースを構成する構成情報内の所定の参照項目の値の範囲別に、前記構成情報のデータに対する想定されるアクセス頻度を取得する参照項目別アクセス頻度取得部と、
前記取得したアクセス頻度に基づき、前記参照項目の値の範囲によって分割された前記構成情報のデータを格納すべき前記物理的記憶領域を設定するデータ配置部と、を備える。
【０００８】
この計算機では、参照項目の値の範囲別に、構成情報のデータに対する想定されるアクセス頻度を取得し、取得したアクセス頻度に基づき、構成情報のデータを格納すべき物理的記憶領域を設定することができる。そのため、この計算機では、物理的記憶領域へのアクセス頻度を考慮した物理的記憶領域内へのデータベースのデータの配置を設定することができる。
【０００９】
上記計算機において、前記物理的記憶領域は、前記計算機システムの有する記憶装置システム内に含まれるとしてもよい。
【００１０】
このようにすれば、物理的記憶領域へのアクセス頻度を考慮して、記憶装置システム内に含まれる物理的記憶領域へのデータベースのデータの配置を設定することができる。
【００１１】
上記計算機において、前記データベースは、複数の前記構成情報を含み、
前記構成情報は、複数の項目によって構成されるレコードを複数含み、
前記参照項目は、前記複数の項目の内、複数の前記構成情報に共通して含まれる特定の項目であるとしてもよい。
【００１２】
このようにすれば、いわゆるリレーショナルデータベースのデータについて、物理的記憶領域へのアクセス頻度を考慮した物理的記憶領域内へのデータの配置を設定することができる。
【００１３】
上記計算機において、前記データ配置部は、所定の前記物理的記憶領域に格納される前記構成情報のデータに対するアクセス頻度の合計に関する所定の条件が満足されるように、前記構成情報のデータを格納すべき前記物理的記憶領域を設定するとしてもよい。
【００１４】
このようにすれば、所定の物理的記憶領域に格納される構成情報のデータに対するアクセス頻度の合計に関する所定の条件が満足されるように、物理的記憶領域内へのデータベースのデータの配置を設定することができる。
【００１５】
また、上記計算機において、前記データ配置部は、管理者によって設定された前記所定の条件を取得する配置条件取得部を含むとしてもよい。
【００１６】
このようにすれば、管理者が任意に設定した条件に従って、物理的記憶領域内へのデータベースのデータの配置を設定することができる。
【００１７】
また、上記計算機において、前記計算機システムに含まれる前記物理的記憶領域間において、前記アクセス頻度の合計の差が所定の閾値より小さいことであるとしてもよい。
【００１８】
このようにすれば、物理的記憶領域間で、アクセス頻度の均等化を図ることができる。
【００１９】
また、上記計算機において、前記所定の条件は、前記計算機システムに含まれる前記物理的記憶領域の内、特定のデータが格納される特定の前記物理的記憶領域において、前記アクセス頻度の合計が所定の閾値より小さいことであるとしてもよい。
【００２０】
このようにすれば、特定のデータへのアクセスに要する所要時間を制御することができる。
【００２１】
また、上記計算機において、前記アクセス頻度は、時間の経過に応じて変化するように設定されており、
前記データ配置部は、前記アクセス頻度の値に変化があるときに、前記構成情報のデータを格納すべき前記物理的記憶領域を設定するとしてもよい。
【００２２】
このようにすれば、アクセス頻度の値に変化があるときに、変化後の物理的記憶領域へのアクセス頻度を考慮した物理的記憶領域内へのデータベースのデータの配置を設定することができる。
【００２３】
また、上記計算機において、前記アクセス頻度は、前記構成情報のデータに新たに追加されるデータに対する想定されるアクセス頻度を含み、
前記データ配置部は、前記構成情報のデータに新たにデータが追加されるときに、前記構成情報のデータを格納すべき前記物理的記憶領域を設定するとしてもよい。
【００２４】
このようにすれば、構成情報のデータに新たにデータが追加されるときに、追加されるデータに対する相対されるアクセス頻度をも考慮した物理的記憶領域内へのデータベースのデータの配置を設定することができる。
【００２５】
また、上記計算機において、前記計算機システムは、前記データベースを運用する業務用計算機を有し、
前記データ配置部は、前記構成情報のデータを格納すべき前記物理的記憶領域を設定した後、前記設定に従った前記構成情報のデータの格納の実行を前記業務用計算機に対し指示するとしてもよい。
【００２６】
このようにすれば、設定した物理的記憶領域内へのデータベースのデータの配置に従ったデータの格納を業務用計算機に指示することができる。
【００２７】
なお、本発明は、種々の態様で実現することが可能であり、例えば、計算機、計算機システム、データ配置設定方法および装置、データ配置管理方法および装置、データ格納方法および装置、データ移動方法および装置、これらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを含むコンピュータプログラムセット、そのコンピュータプログラムを記録した記録媒体、そのコンピュータプログラムを含み搬送波内に具現化されたデータ信号、等の形態で実現することができる。
【００２８】
本発明をコンピュータプログラムまたはそのコンピュータプログラムを記録した記録媒体等として構成する場合には、計算機システム全体の動作を制御するプログラムとして構成することも可能であるし、計算機や記憶サブシステム毎の動作を制御するプログラムとして構成することも可能である。
【発明を実施するための最良の形態】
【００２９】
次に、本発明の実施の形態を実施例に基づいて以下の順序で説明する。
Ａ．第１実施例：
Ｂ．第２実施例：
Ｃ．第３実施例：
Ｄ．第４実施例：
Ｅ．変形例：
【００３０】
Ａ．第１実施例：
図１は、本発明の第１実施例としての計算機システムの構成を概略的に示す説明図である。第１実施例の計算機システム１０００は、管理サーバ１と、業務サーバ２と、記憶装置システム３と、を備えている。管理サーバ１と業務サーバ２と記憶装置システム３とは、それぞれの有するネットワークＩ／Ｆ（ネットワークＩ／Ｆ１３、２３、３７）を介して互いに接続されている。
【００３１】
業務サーバ２は、データベースを利用して、種々のデータ処理業務を行う計算機であり、ＣＰＵ２１と、主メモリ２２と、ネットワークＩ／Ｆ２３と、ディスプレイ等の表示装置２４と、キーボード等の入力装置２５と、ハードディスク等の記憶装置２８と、データＩ／Ｆ２９と、これらの各部を互いに接続するコントローラ２７と、を有している。
【００３２】
業務サーバ２の記憶装置２８には、ＤＢＭＳ（データベースマネジメントシステム）２１０と、論理ボリューム設定部２２０と、が格納されている。ＤＢＭＳ２１０は、データベースを管理すると共に、例えばアプリケーションプログラムからのデータベースに対するアクセス要求に応えるコンピュータプログラムである。また、論理ボリューム設定部２２０は、後述する論理ボリュームの設定や管理等を行うコンピュータプログラムである。業務サーバ２のＣＰＵ２１は、これらのコンピュータプログラムを主メモリ２２上に読み出して実行することにより、これらのコンピュータプログラムの有する機能を実現する。
【００３３】
また、業務サーバ２は、データＩ／Ｆ２９を介して記憶装置システム３と直接接続されており、当該接続を通じて、記憶装置システム３との間で命令やデータのやり取りを行う。
【００３４】
記憶装置システム３は、データベースのデータを格納するストレージシステムであり、記憶装置システム３全体を制御するディスクコントローラ３２と、複数の記憶装置３６と、記憶装置システム３を業務サーバ２のデータＩ／Ｆ２９と直接接続するためのポート３１と、ネットワークＩ／Ｆ３７と、を有している。
【００３５】
記憶装置３６は、物理的な記憶領域の単位構成である。データベースのデータは、物理的には、記憶装置３６内に格納される。記憶装置３６は、例えば光ディスクや磁気ディスクのようにデータを記憶可能な種々の装置を用いて構成可能である。
【００３６】
ディスクコントローラ３２は、ＣＰＵ３４と、制御メモリ３３と、命令やデータ等を一時的に格納するキャッシュメモリ３５と、を含んでいる。制御メモリ３３には、ディスクグループ・論理デバイス設定部３１０と、データ移動部３２０と、が格納されている。ディスクグループ・論理デバイス設定部３１０は、後述のディスクグループおよび論理デバイスの設定を行うコンピュータプログラムである。また、データ移動部３２０は、記憶装置３６間におけるデータの移動を行うコンピュータプログラムである。記憶装置システム３のＣＰＵ３４は、これらのコンピュータプログラムを実行することにより、これらのコンピュータプログラムの有する機能を実現する。
【００３７】
管理サーバ１は、計算機システム１０００におけるデータベースのデータの配置を設定する計算機であり、ＣＰＵ１１と、主メモリ１２と、ネットワークＩ／Ｆ１３と、ディスプレイ等の表示装置１４と、キーボード等の入力装置１５と、ハードディスク等の記憶装置１８と、これらの各部を互いに接続するコントローラ１７と、を有している。
【００３８】
管理サーバ１の記憶装置１８には、データ配置部１１０が格納されている。データ配置部１１０は、データベースのデータの配置を設定するコンピュータプログラムであり、いずれもコンピュータプログラムであるテーブル−ディスクグループ対応関係取得部１１１と、キー値別アクセス頻度取得部１１２と、条件取得部１１３と、データグループ負荷計算部１１４と、条件判定部１１５と、を含んでいる。管理サーバ１のＣＰＵ１１は、これらのコンピュータプログラムを主メモリ１２上に読み出して実行することにより、後述するデータ配置処理を実行する。
【００３９】
管理サーバ１の記憶装置１８には、また、後述するデータ配置処理において、テーブル−ディスクグループ対応関係１２０と、キー値別アクセス頻度１３０と、マップ情報１４０と、が格納される。これらの内容については、後述する。
【００４０】
図２は、第１実施例の計算機システム１０００におけるデータベースのデータ配置の階層構造を概念的に示す説明図である。上述したように、データベースのデータは記憶装置システム３内に格納され、業務サーバ２によって運用される。なお、本実施例においては、業務サーバ２のサーバ名が「Ｓ１」と設定され、記憶装置システム３のシステム名が「Ｄ１」と設定されている。
【００４１】
記憶装置システム３において、データベースのデータは、物理的な記憶領域の単位構成としての記憶装置３６内に格納される。記憶装置システム３内では、ディスクグループ（ＤＧ）と論理デバイス（ＬＤ）とが定義されている。ディスクグループは、１つ以上の記憶装置３６の集合であり、あるディスクグループの領域は、他のディスクグループの領域から物理的に独立している。一方、論理デバイスは、ディスクグループを１つ以上に論理的に分割した領域であり、ある論理デバイスの領域は、他の論理デバイスの領域から物理的に独立しているとは言えない。なお、記憶装置システム３は、これらの記憶装置システム３内の階層構造を示す情報を保有している。
【００４２】
業務サーバ２においては、ＯＳ（オペレーティングシステム）が管理する論理マネージャ層と、ＤＢＭＳ２１０（図１）が管理するＤＢＭＳ層と、が構成される。論理マネージャ層では、ＯＳが認識する記憶領域としての物理ボリューム（ＰＶ）と、物理ボリュームが１つ以上の論理的な区画に分割された論理ボリューム（ＬＶ）と、が定義される。１つの物理ボリュームは、記憶装置システム３内の１つの論理デバイスと対応付けられている。また、ＤＢＭＳ層では、ＤＢＭＳ２１０が管理する論理的な領域としてのＤＢエリア（ｄａ）と、ＤＢエリアを構成するＤＢファイル（ｆ）と、が定義される。１つのＤＢエリアは、１つ以上のＤＢファイルによって構成される。また、各ＤＢファイルは、１つの論理ボリュームと対応付けられている。なお、業務サーバ２は、これらの業務サーバ２内の階層構造を示す情報と、物理ボリューム−論理デバイス間の対応を示す情報と、を保有している。
【００４３】
なお、管理サーバ１（図１）は、図２に示した計算機システム１０００におけるデータベースのデータ配置の階層構造を示す情報を保有している。
【００４４】
データベースの管理を行うＤＢＭＳ２１０（図１）は、データベースを構成する構成情報（例えばテーブルやインデクス）を定義する際に、定義する構成情報を格納するＤＢエリアを１つ以上指定する。構成情報は、一体として、あるいは分割されて、指定されたＤＢエリアに格納される。このとき構成情報のデータは、物理的には、図２に示す階層構造に従って、記憶装置システム３の記憶装置３６内に格納される。図２の例では、テーブルＴ１およびＴ２が、それぞれ２つに分割されて、指定されたＤＢエリアに格納されている。例えばテーブルＴ１の一部（「Ｔ１［１−１０］」と示す）は、ＤＢエリアｄａ１に格納されている。このとき、物理的には、テーブルＴ１の一部（Ｔ１［１−１０］）のデータは、記憶装置システム３のディスクグループＤＧ１を構成する記憶装置３６内に格納されることとなる。なお、図２の例では、各テーブル（Ｔ１およびＴ２）が、キー値（［  ］で表す）の範囲に応じて２つの部分に分割されているが、この点については後述する。
【００４５】
図３は、第１実施例におけるデータ配置処理の流れを示すフローチャートである。第１実施例のデータ配置処理は、ＤＢＭＳ２１０（図１）がデータベースの構成情報（テーブルやインデクス）を定義する際に、記憶装置システム３における構成情報の配置を設定する処理であり、管理サーバ１のデータ配置部１１０（図１）が行う。
【００４６】
なお、以下では、データベースの構成情報としてテーブルが定義された場合の例を用いて説明する。図４は、データベースの構成情報としてのテーブルの内容の一例を示す説明図である。図４に示すように、テーブルはレコードの集合であり、各レコードは複数の項目（フィールド）によって構成される。テーブル中の特定の項目は「キー」として設定され、各レコードの「キー」の値は「キー値」と呼ばれる。なお、このキーは、例えばリレーショナルデータベースにおいて、複数のテーブルやインデクス間を関連付けるための項目として用いられる。本明細書では、テーブルＴの内、キー値がｍからｎまでの範囲に属するレコードで構成される部分を「Ｔ［ｍ−ｎ］」と表すものとする。例えば、テーブルＴ１の内、キー値が１から１０までの範囲に属するレコードで構成される部分は、Ｔ１［１−１０］と表される。なお、図４では、キー値がレコード毎に異なるテーブルの例を示しているが、キー値はテーブル内のレコード毎に異なる必要はなく、複数のレコードが同じキー値を有する場合もある。また、以下の説明では、例えばキー値の範囲によって分割されたテーブルの部分も、単に「テーブル」と呼ぶものとする。
【００４７】
ステップＳ１００（図３）では、データ配置部１１０のテーブル−ディスクグループ対応関係取得部１１１（図１）が、テーブル−ディスクグループ対応関係１２０を取得する。図５は、テーブル−ディスクグループ対応関係１２０の内容の一例を示す説明図である。図５に示すように、テーブル−ディスクグループ対応関係１２０は、テーブルと当該テーブルの格納に使用可能なディスクグループとの対応関係を示す情報である。図５の例では、サーバ名「Ｓ１」の業務サーバ２（図２）で扱うテーブルＴ１（「Ｓ１−Ｔ１」と表す）およびＴ２（「Ｓ１−Ｔ２」と表す）は、共に、システム名「Ｄ１」の記憶装置システム３（図２）のディスクグループＤＧ１（「Ｄ１−ＤＧ１」と表す）およびＤＧ２（「Ｄ１−ＤＧ２」と表す）に格納可能となっている。なお、テーブル−ディスクグループ対応関係１２０は、管理者によって設定され、入力装置１５やネットワークＩ／Ｆ１３（図１）、あるいは図示しない記録媒体駆動装置等を介して取得される。また、取得されたテーブル−ディスクグループ対応関係１２０は、管理サーバ１の記憶装置１８（図１）内に格納される。
【００４８】
ステップＳ１１０（図３）では、データ配置部１１０のキー値別アクセス頻度取得部１１２（図１）が、キー値別アクセス頻度１３０を取得する。図６は、キー値別アクセス頻度１３０の内容の一例を示す説明図である。図６に示すように、キー値別アクセス頻度１３０は、キー値の範囲別のテーブルに対する想定されるアクセス頻度を示す情報である。ここで、アクセス頻度とは、テーブルのデータに対するＤＢＭＳ２１０（図１）からのアクセスの頻度を意味しており、例えば、単位時間あたりのアクセス数で表される。本実施例では、このアクセス頻度が、テーブルのキー値の範囲別に設定される。すなわち、本実施例では、テーブルのキーがアクセス頻度の設定において参照される参照項目として用いられる。また、本実施例では、図６に示すように、キー値別アクセス頻度１３０は時間の経過に応じて変化するように設定される。例えば図６の例では、アクセス頻度が１日単位で設定されており、時間の経過と共にアクセス頻度の値が変化している。具体的には、図６の「時間」欄が「１日」であるアクセス頻度は、最初にテーブルが定義される時を含む１日目のアクセス頻度を示しており、「時間」欄が「２日」であるアクセス頻度は、２日目（翌日の０時から２４時まで）のアクセス頻度を示している。なお、キー値別アクセス頻度１３０は、管理者によって設定され、入力装置１５やネットワークＩ／Ｆ１３（図１）、あるいは図示しない記録媒体駆動装置等を介して取得される。また、取得されたキー値別アクセス頻度１３０は、管理サーバ１の記憶装置１８（図１）内に格納される。
【００４９】
ステップＳ１２０（図３）では、データ配置部１１０の条件取得部１１３（図１）が、データ配置条件を取得する。データ配置条件は、データベースのデータ配置を設定する際の、アクセス頻度に関する条件である。データ配置条件は、管理者によって設定され、入力装置１５（図１）等を介して取得される。本実施例では、データ配置条件として、「テーブルＴ１およびＴ２の格納に用いられる２つのディスクグループ（ＤＧ１およびＤＧ２）間において、ディスクグループに格納されるテーブルのデータに対するアクセス頻度の合計の差が所定の閾値（例えば１０）よりも小さいこと」が取得されるものとする。
【００５０】
なお、上述したように、あるディスクグループの領域は、他のディスクグループの領域から物理的に独立している。そのため、ディスクグループ間において、アクセス頻度の合計の差が小さいということは、記憶装置システム３内における物理的なデータアクセス負荷が均等化されることを意味する。
【００５１】
ステップＳ１３０（図３）では、データ配置部１１０（図１）が、データグループの設定を行う。ここで、データグループとは、１つのディスクグループに格納されるべき、あるいは格納された、テーブルのデータの集合を意味している。データグループの設定は、テーブルのデータの格納に使用可能なディスクグループの数と同じ数のデータグループを設定し、各データグループに対し、キー値の範囲によって区分されたテーブルを振り分ける処理である。本実施例では、データの格納に使用可能なディスクグループは、２つ（ＤＧ１およびＤＧ２）であるので、２つのデータグループが設定され、キー値別アクセス頻度１３０（図６）によって特定された４つのテーブル（Ｔ１［１−１０］、Ｔ１［１１−２０］、Ｔ２［１−１０］、Ｔ２［１１−２０］）が、２つのデータグループに振り分けられる。図７は、データグループ設定の一例を示す説明図である。図７に示すように、４つのテーブルが、例えば、データグループ１（Ｔ１［１−１０］、Ｔ１［１１−２０］、Ｔ２［１−１０］）と、データグループ２（Ｔ２［１１−２０］）と、に分けられる。
【００５２】
ステップＳ１４０（図３）では、データグループ負荷計算部１１４（図１）が、ステップＳ１３０で設定されたデータグループについて、負荷を計算する。ここで、負荷とは、データグループに属するテーブルのデータに対するアクセス頻度の合計を意味している。計算は、キー値別アクセス頻度１３０（図６）に基づき行われる。図７には、各テーブルのアクセス頻度と、各データグループの計算されたアクセス頻度の合計とを、（  ）で囲んで示している。図７の例では、データグループ１および２は、共に、アクセス頻度の合計が３０となっている。
【００５３】
ステップＳ１５０（図３）では、条件判定部１１５（図１）が、ステップＳ１３０におけるデータグループ設定について、ステップＳ１２０で取得されたデータ配置条件を満たすか否かの判定を行う。上述したように、本実施例では、データ配置条件として、「２つのディスクグループ間において、アクセス頻度の合計の差が所定の閾値（例えば１０）よりも小さいこと」が取得されている。また、上述したように、データグループは、１つのディスクグループに格納されるべきテーブルのデータの集合である。従って、条件判定部１１５は、２つのデータグループ間において、データグループに属するテーブルのデータに対するアクセス頻度の合計の差が所定の閾値よりも小さいか否かを判定することとなる。条件判定部１１５がデータ配置条件を満たすと判定したときは、処理はステップＳ１６０（図３）に進む。一方、条件判定部１１５がデータ配置条件を満たさないと判定したときは、処理はステップＳ１３０に戻り、ステップＳ１３０（データグループ設定）からステップＳ１５０（データ配置条件判定）までの処理が繰り返し実行される。図７の例では、データグループ１および２の間のアクセス頻度の合計の差はゼロであるため、条件判定部１１５はデータ配置条件を満たすと判定する。
【００５４】
ステップＳ１６０（図３）では、データ配置部１１０（図１）が、ディスクグループおよび論理デバイス（図２）の割り当てを行い、マップ情報１４０（図１）を作成する。ディスクグループの割り当ては、ステップＳ１３０において設定されたデータグループのそれぞれに対し、１つのディスクグループを割り当てる処理である。また、論理デバイスの割り当ては、データグループに属するテーブルのそれぞれに対し、当該データグループに割り当てられたディスクグループに属する論理デバイスの１つを割り当てる処理である。図８は、ディスクグループおよび論理デバイスの割り当ての一例を示す説明図である。図８の例では、データグループ１に対してディスクグループＤＧ１が割り当てられ、データグループ２に対してディスクグループＤＧ２が割り当てられている。また、データグループ１に属するテーブルＴ１［１−１０］に対してディスクグループＤＧ１に属する論理デバイスＬＤ１が割り当てられ、同様に、テーブルＴ１［１１−２０］に論理デバイスＬＤ２が、テーブルＴ２［１−１０］に論理デバイスＬＤ３が、割り当てられている。また、データグループ２に属するテーブルＴ２［１１−２０］に対してディスクグループＤＧ２に属する論理デバイスＬＤ４が割り当てられている。
【００５５】
また、マップ情報１４０の作成は、ディスクグループおよび論理デバイスの割り当てに基づき、テーブルとディスクグループおよび論理デバイスとの対応関係を示すマップ情報１４０を作成する処理である。図９は、マップ情報１４０の内容の一例を示す説明図である。図９に示すように、マップ情報１４０には、キー値の範囲別に分割されたテーブルと、ディスクグループおよび論理デバイスと、の対応関係が示される。
【００５６】
ステップＳ１７０（図３）では、データ配置部１１０（図１）が、データ配置指示を行う。データ配置指示は、ステップＳ１６０において作成されたマップ情報１４０に従ったテーブルのデータの格納を、業務サーバ２（図１）に対して指示する処理である。指示は、ネットワークＩ／Ｆ（１３および２３）を介して伝達される。データ配置指示を受けた業務サーバ２では、論理ボリューム設定部２２０（図１）が、論理ボリューム（図２）の作成を行うと共に、ＤＢＭＳ２１０（図１）が、ＤＢエリアおよびＤＢファイル（図２）の作成を行う。このとき、業務サーバ２は、図２に示すように、１つのＤＢエリアに対応する物理ボリュームが一意に定まるように、ＤＢエリア、ＤＢファイル、論理ボリューム、物理ボリューム間の対応関係を設定する。その後、業務サーバ２は、設定した対応関係に従ったデータの格納命令を記憶装置システム３（図１）に送る。命令は、データＩ／Ｆ２９およびポート３１を介して伝達される。データ格納命令を受けた記憶装置システム３は、テーブルのデータを所定の記憶装置３６内に格納する。図８および図９の例では、テーブルＴ１［１−１０］のデータは、論理デバイスＬＤ１に対応した記憶装置３６（図２参照）内に格納される。同様に、テーブルＴ１［１１−２０］のデータは論理デバイスＬＤ２に対応した記憶装置３６内に、テーブルＴ２［１−１０］のデータは論理デバイスＬＤ３に対応した記憶装置３６内に、テーブルＴ２［１１−２０］のデータは論理デバイスＬＤ４に対応した記憶装置３６内に、それぞれ格納される。
【００５７】
以上説明したように、本実施例の計算機システム１０００では、管理サーバ１が、キー値別アクセス頻度１３０を取得し、キー値別アクセス頻度１３０に基づいて、テーブルのデータを格納するディスクグループを設定することができる。そのため、本実施例では、物理的記憶領域としてのディスクグループへのアクセス頻度を考慮したディスクグループへのデータベースのデータの配置の設定を行うことができる。例えば、ディスクグループ間において、アクセス頻度の合計の差を小さく設定することによって、記憶装置システム３内における物理的なデータアクセス負荷の均等化を図ることが可能である。
【００５８】
図１０は、第１実施例の変形例におけるデータ配置設定の一例を示す説明図である。また、図１１は、第１実施例の変形例におけるマップ情報１４０の内容の一例を示す説明図である。第１実施例の変形例は、データ配置条件が第１実施例と異なるのみであり、計算機システム１０００の構成（図１）や、データ配置処理（図３）の内容は、第１実施例と同じである。
【００５９】
第１実施例の変形例では、データ配置条件として、「テーブルＴ１［１−１０］のデータが格納されるディスクグループにおいて、当該ディスクグループに格納されるテーブルのデータに対するアクセス頻度の合計が所定の閾値（例えば１０）よりも小さいこと」が取得されるものとする。このときには、データ配置処理（図３）の結果として、図１０および１１に示すように、テーブルＴ１［１−１０］のデータのみがディスクグループＤＧ１に格納され、残りの３つのテーブル（Ｔ１［１１−２０］、Ｔ２［１−１０］、Ｔ２［１１−２０］）はディスクグループＤＧ２に格納される。
【００６０】
このように、第１実施例の変形例においても、計算機システム１０００は、ディスクグループへのアクセス頻度を考慮したデータベースのデータの配置の設定を行うことが可能である。例えば、データベース中の特定のデータが格納されるディスクグループにおいて、当該ディスクグループに格納されるデータに対するアクセス頻度の合計を所定の閾値よりも小さくすることにより、特定のデータへのアクセスに要する時間を一定時間以内に制御することができる。
【００６１】
Ｂ．第２実施例：
図１２は、第２実施例におけるデータ配置処理の流れを示す説明図である。第２実施例のデータ配置処理は、第１実施例のデータ配置処理（図３）によって、記憶装置システム３におけるテーブルのデータの配置が設定された後、キー値別アクセス頻度１３０（図６）の値が変化するときに、再度、データの配置を設定する処理であり、管理サーバ１のデータ配置部１１０（図１）が行う。なお、データ配置部１１０は、キー値別アクセス頻度１３０の値が変化した時にデータ配置処理を開始するとしてもよいし、キー値別アクセス頻度１３０の値が変化する所定時間前にデータ配置処理を開始するとしてもよい。なお、第２実施例における計算機システム１０００の構成は、図１に示した第１実施例と同じである。
【００６２】
ステップＳ２００（図１２）では、管理サーバ１のデータ配置部１１０（図１）が、キー値別アクセス頻度１３０（図６）を読み込む。キー値別アクセス頻度１３０は、上述の第１実施例のデータ配置処理において取得され（図３のステップＳ１１０）、記憶装置１８（図１）内に格納されている。データ配置部１１０は、格納されたキー値別アクセス頻度１３０から、変化した後のアクセス頻度の値を読み込む。例えば、本実施例では、図６に示したキー値別アクセス頻度１３０から、「時間」欄が「２日」であるアクセス頻度の値を読み込むものとする。なお、データ配置部１１０は、キー値別アクセス頻度１３０を読み込む代わりに、管理者が新たに設定したキー値別アクセス頻度１３０を再度取得するとしてもよい。
【００６３】
ステップＳ２１０（図１２）では、データグループ負荷計算部１１４（図１）が、データグループの負荷計算を行う。データグループの負荷計算は、第１実施例のデータ配置処理（図３）におけるステップＳ１４０と同じ処理である。すなわち、データグループ負荷計算部１１４は、現在設定されているデータグループのそれぞれについて、ステップＳ２００で読み込んだ変化後のキー値別アクセス頻度１３０の値に基づき、アクセス頻度の合計を計算する。図１３は、第２実施例のデータ配置処理において、変化後のキー値別アクセス頻度１３０の値に基づき計算されたアクセス頻度の合計を示す説明図である。図１３に示すように、キー値別アクセス頻度１３０の値が変化することによって、各データグループについてのアクセス頻度の合計も変化している。
【００６４】
ステップＳ２２０（図１２）では、条件判定部１１５（図１）が、設定されているデータグループがデータ配置条件を満たすか否かの判定を行う。判定は、第１実施例のデータ配置処理（図３）におけるステップＳ１５０と同じ処理である。すなわち、条件判定部１１５は、２つのデータグループ間において、データグループに属するテーブルのデータに対するアクセス頻度の合計の差が所定の閾値（例えば１０）よりも小さいか否かを判定する。条件判定部１１５がデータ配置条件を満たすと判定したときは、データの配置を再度設定する必要がないため、処理を終了する。一方、条件判定部１１５がデータ配置条件を満たさないと判定したときは、処理はステップＳ２３０に進む。図１３に示した例では、データグループ間のアクセス頻度の合計の差が３０となっているため、条件判定部１１５はデータ配置条件を満たさないと判定することとなる。
【００６５】
ステップＳ２３０（図１２）では、データ配置部１１０（図１）が、データグループの再設定を行う。データグループの再設定は、第１実施例のデータ配置処理（図３）において設定されたデータグループを変更し、新たなデータグループを設定する処理である。図１４は、第２実施例のデータ配置処理におけるデータグループ再設定の様子を示す説明図である。図１４の例では、テーブルＴ２［１−１０］をデータグループ１からデータグループ２へと移動させてデータグループの再設定を行っている。
【００６６】
ステップＳ２４０（図１２）では、データグループ負荷計算部１１４（図１）が、再設定されたデータグループについて負荷計算を行う。ステップＳ２５０では、条件判定部１１５（図１）が、再設定されたデータグループがデータ配置条件を満たすか否かの判定を行う。条件判定部１１５がデータ配置条件を満たすと判定したときは、処理はステップＳ２６０に進む。一方、条件判定部１１５がデータ配置条件を満たさないと判定したときは、処理はステップＳ２３０に戻り、ステップＳ２３０（データグループ再設定）からステップＳ２５０（データ配置条件判定）までの処理が繰り返し実行される。図１４の例では、データグループの再設定によって、データ配置条件が満たされるようになっているため、処理はステップＳ２６０に進むこととなる。
【００６７】
ステップＳ２６０（図１２）では、データ配置部１１０（図１）が、論理デバイスの割り当てを行う。論理デバイスの割り当ては、ステップＳ２３０のデータグループの再設定において、属するデータグループが変更となったテーブルについて、変更後のデータグループに対応するディスクグループに属する論理デバイスの１つを割り当てる処理である。図１５は、論理デバイスの割り当ての一例を示す説明図である。図１５の例では、テーブルＴ２［１−１０］の所属がデータグループ１からデータグループ２へと変更となっている。そのため、テーブルＴ２［１−１０］について、データグループ２に対応するディスクグループＤＧ２に属する論理デバイスの１つである論理デバイスＬＤ５を割り当てている。
【００６８】
ステップＳ２７０（図１２）では、データ配置部１１０（図１）が、データ移動指示を行う。データ移動指示は、ステップＳ２６０において論理デバイスの割り当てが行われたテーブルのデータについて、記憶装置システム３内での移動を、業務サーバ２（図１）に対して指示する処理である。ここで、記憶装置システム３内でのテーブルのデータの移動とは、データグループが変更となる前の論理デバイス（図１５の例ではＬＤ３）に対応する記憶装置３６（図２）から、変更後の論理デバイス（図１５の例ではＬＤ５）に対応する記憶装置３６へのデータの移動を意味している。データ移動指示を受けた業務サーバ２では、ＤＢＭＳ２１０（図１）が、記憶装置システム３に対してデータ移動命令を送る。命令を受けた記憶装置システム３では、データ移動部３２０（図１）が、データ移動の処理を行う。この処理によって、テーブルＴ２［１−１０］のデータは、物理的に、ディスクグループＤＧ２に属する記憶装置３６へと移動されることとなる。
【００６９】
ステップＳ２８０（図１２）では、データ配置部１１０（図１）が、ディスクグループと論理デバイスとの対応関係を再設定し、マップ情報１４０（図１）を更新する。図１６は、ディスクグループと論理デバイスとの対応関係の再設定の一例を示す説明図である。図１６に示すように、ディスクグループと論理デバイスとの対応関係の再設定は、ステップＳ２７０において移動されたテーブルが移動前に格納されていた論理デバイス（図１６ではＬＤ３）と、移動後に格納された論理デバイス（図１６ではＬＤ５）と、を入れ替えることによって行う。すなわち、移動前の論理デバイスＬＤ３を、移動後の論理デバイスＬＤ５と対応付けられていたディスクグループＤＧ２に対応付け、移動後の論理デバイスＬＤ５を、移動前の論理デバイスＬＤ３と対応付けられていたディスクグループＤＧ１に対応付ける。このような再設定を行うことによって、業務サーバ２は、テーブルのデータの移動前と同じ論理デバイスＬＤ３にアクセスすることによって、記憶装置システム３内の格納位置が変更されたテーブルＴ２［１−１０］のデータにアクセスすることが可能となる。図１７は、ディスクグループと論理デバイスとの対応関係再設定後のテーブルの配置を示す説明図である。また、図１８は、ディスクグループと論理デバイスとの対応関係再設定後に作成されるマップ情報１４０の内容の一例を示す説明図である。記憶装置システム３内の格納位置が変更されたテーブルＴ２［１−１０］は、ディスクグループＤＧ２に属する論理デバイスＬＤ３に格納されることとなる。
【００７０】
なお、本実施例では、キー値別アクセス頻度１３０（図６）の値がさらに変化するときには、再度、図１２に示したデータ配置処理が実行される。
【００７１】
以上説明したように、第２実施例の計算機システム１０００では、キー値別アクセス頻度１３０の値が変化するときに、管理サーバ１が、変更後のキー値別アクセス頻度１３０に基づいてテーブルのデータを格納するディスクグループを設定することができる。そのため、第２実施例の計算機システム１０００では、時間の経過に応じて変化するディスクグループへのアクセス頻度を考慮したディスクグループへのデータベースのデータの配置の設定を行うことができる。例えば、データベースの運用期間を通じて、記憶装置システム３内における物理的なデータアクセス負荷の均等化を図ることが可能である。
【００７２】
図１９は、第２実施例の変形例におけるデータ配置設定の一例を示す説明図である。また、図２０は、第２実施例の変形例におけるマップ情報１４０の内容の一例を示す説明図である。第２実施例の変形例は、データ配置条件が第２実施例と異なるのみであり、計算機システム１０００の構成（図１）や、データ配置処理（図１２）の内容は、第２実施例と同じである。
【００７３】
第２実施例の変形例では、データ配置条件として、「テーブルＴ１［１１−２０］のデータが格納されたディスクグループにおいて、当該ディスクグループに格納されるテーブルのデータに対するアクセス頻度の合計が所定の閾値（例えば１０）よりも小さいこと」が取得されているものとする。このときには、データ配置処理（図１２）の結果として、図１９および２０に示すように、ディスクグループＤＧ１には、テーブルＴ１［１１−２０］のデータのみが残り、残りの２つのテーブル（Ｔ１［１−１０］、Ｔ２［１−１０］）はディスクグループＤＧ２に移動される。なお、図１９中の論理デバイスの図には、データ配置処理（図１２）のステップＳ２８０における再設定前の論理デバイス名と、再設定後の論理デバイス名とを併せて示している。
【００７４】
このように、第２実施例の変形例においても、計算機システム１０００は、ディスクグループへのアクセス頻度を考慮したデータベースのデータの配置の設定を行うことが可能である。例えば、データベースの運用期間を通じて、特定のデータへのアクセスに要する時間を一定時間以内に制御することができる。
【００７５】
Ｃ．第３実施例：
図２１は、第３実施例におけるキー値別アクセス頻度１３０の内容の一例を示す説明図である。第３実施例は、キー値別アクセス頻度１３０の内容と、データ配置処理を行うタイミングが第２実施例と異なるのみであり、計算機システム１０００の構成（図１）や、データ配置処理（図１２）の内容は、第２実施例と同じである。
【００７６】
第３実施例におけるキー値別アクセス頻度１３０は、図２１（ａ）に示すテーブルのキー値の範囲別に設定されたアクセス頻度１３０ａの他に、図２１（ｂ）に示すテーブルのデータに新たに追加されるデータに対する想定されるアクセス頻度１３０ｂを含んでいる。図２１の例では、「時間」が「２日」となるときに、テーブルＴ１［１１−２０］のデータに新たなデータが追加され、当該追加データに対するアクセス頻度は「１０」となっている。
【００７７】
また、第３実施例では、テーブルのデータに新たにデータが追加されるときに、再度、データ配置処理が行われる。図２１の例では、「時間」が「２日」になるときに、データ配置処理が行われる。なお、データ配置処理は、テーブルに新たにデータが追加された時に開始されるとしてもよいし、テーブルに新たにデータが追加される所定時間前に開始されるとしてもよい。
【００７８】
第３実施例におけるデータ配置処理では、ステップＳ２００（図１２）でキー値別アクセス頻度の読み込みが実行される際に、図２１（ｂ）に示した追加データに対するアクセス頻度１３０ｂも併せて読み込まれる。その後、ステップＳ２１０で、追加データに対するアクセス頻度１３０ｂも含めたデータグループ負荷計算が行われ、ステップＳ２２０でデータ配置条件の判定が行われる。なお、第３実施例では、データ配置条件として、「テーブルＴ１［１−１０］のデータが格納されたディスクグループにおいて、当該ディスクグループに格納されるテーブルのデータに対するアクセス頻度の合計が所定の閾値（例えば３０）よりも小さいこと」が取得されているものとする。
【００７９】
第３実施例では、テーブルのデータに新たにデータが追加されるとき、テーブルＴ１［１−１０］のデータが格納されたディスクグループＤＧ１におけるアクセス頻度の合計は、追加データに対するアクセス頻度も含めて、４０となる。そのため、ステップＳ２２０（図１２）の判定においてデータ配置条件を満たさないと判定される。そのため、データ配置処理（図１２）中のステップＳ２３０（データグループの再設定）以下の処理が行われることとなる。
【００８０】
図２２は、第３実施例におけるデータ配置設定の一例を示す説明図である。また、図２３は、第３実施例におけるマップ情報１４０の内容の一例を示す説明図である。第３実施例では、ステップＳ２３０以下の処理によって、図２２および２３に示すように、ディスクグループＤＧ１に格納されていたテーブルＴ２［１−１０］のデータがディスクグループＤＧ２に移動される。このようなデータ配置を設定することにより、上述のデータ配置条件が満たされることとなる。
【００８１】
以上説明したように、第３実施例の計算機システム１０００では、データベースのデータに新たなデータが追加されるときに、管理サーバ１が、追加されるデータに対するキー値別アクセス頻度をも考慮して、テーブルのデータを格納するディスクグループを設定することができる。そのため、第３実施例の計算機システム１０００では、データベースのデータに新たなデータが追加されるときにも、ディスクグループへのアクセス頻度を考慮したディスクグループへのデータベースのデータの配置の設定を行うことができる。
【００８２】
図２４は、第３実施例の変形例におけるデータ配置設定の一例を示す説明図である。また、図２５は、第３実施例の変形例におけるマップ情報１４０の内容の一例を示す説明図である。第３実施例の変形例は、データ配置条件が第３実施例と異なるのみであり、計算機システム１０００の構成（図１）や、データ配置処理（図１２）の内容、キー値別アクセス頻度１３０（図２１）の内容は、第３実施例と同じである。
【００８３】
第３実施例の変形例では、データ配置条件として、「テーブルＴ１［１−１０］のデータが格納されたディスクグループにおいて、当該ディスクグループに格納されたテーブルのデータに対するアクセス頻度の合計が所定の閾値（例えば２０）よりも小さいこと」が取得されているものとする。このときには、データ配置処理（図１２）の結果として、例えば図２４および２５に示すように、ディスクグループＤＧ１に格納されていたテーブルＴ１［１１−２０］は、ディスクグループＤＧ２に移動される。そして、テーブルＴ１［１１−２０］に追加されるデータも、ディスクグループＤＧ２に格納されることとなる。
【００８４】
このように、第３実施例の変形例における計算機システム１０００でも、データベースのデータに新たなデータが追加されるときに、ディスクグループへのアクセス頻度を考慮したディスクグループへのデータベースのデータの配置の設定を行うことができる。
【００８５】
Ｄ．第４実施例：
図２６は、第４実施例の計算機システム１０００の構成を概略的に示す説明図である。図１に示した第１実施例との違いは、第１実施例の計算機システム１０００が１台の業務サーバ２と、１台の記憶装置システム３と、を備えているのに対し、第４実施例の計算機システム１０００は、２つの業務サーバ２（２ａおよび２ｂ）と、２つの記憶装置システム３（３ａおよび３ｂ）と、を備えている点である。なお、管理サーバ１と業務サーバ２と記憶装置システム３との各内部構成は、図１に示した第１実施例と同様であり、図２６においては、一部省略して表現している。
【００８６】
第４実施例の計算機システム１０００では、管理サーバ１と、２台の業務サーバ２と、２台の記憶装置システム３と、が、それぞれの有するネットワークＩ／Ｆ（１３、２３ａ、２３ｂ、３７ａ、３７ｂ）を介して互いに接続されている。また、業務サーバ２ａは、データＩ／Ｆ２９ａを介して、記憶装置システム３ａと直接接続されている。また、業務サーバ２ｂは、データＩ／Ｆ２９ｂを介して、記憶装置システム３ａおよび記憶装置システム３ｂと直接接続されている。
【００８７】
図２７は、第４実施例の計算機システム１０００におけるデータベースのデータ配置の階層構造を概念的に示す説明図である。図２７に示した第４実施例では、データ配置の階層構造が２台の業務サーバ２および２台の記憶装置システム３に分かれて構成されている点が、図２に示した第１実施例とは異なるが、その他の点は第１実施例と同様である。図２７に示すように、第４実施例では、ディスクグループＤＧ１とディスクグループＤＧ２とが、互いに異なる記憶装置システム３に含まれる。なお、第４実施例においては、業務サーバ２ａのサーバ名が「Ｓ１」と設定されており、同様に、業務サーバ２ｂのサーバ名が「Ｓ２」と、記憶装置システム３ａのシステム名が「Ｄ１」と、記憶装置システム３ｂのシステム名が「Ｄ２」と、それぞれ設定されている。
【００８８】
図２８は、第４実施例におけるデータ配置処理の流れを示すフローチャートである。第４実施例のデータ配置処理は、図１２に示した第２実施例のデータ配置処理と同様に、キー値別アクセス頻度１３０の値が変化するときに、再度、データの配置を設定する処理である。すなわち、第４実施例のデータ配置処理の以前に、ＤＢＭＳ２１０（図１）がテーブルを定義する際に、図３に示した第１実施例のデータ配置処理と同様の処理（以下「初期配置処理」と呼ぶ）が行われているものとする。
【００８９】
図２９は、初期配置処理によって取得されたテーブル−ディスクグループ対応関係１２０の内容の一例を示す説明図である。図３０は、初期配置処理によって取得されたキー値別アクセス頻度１３０の内容の一例を示す説明図である。テーブル−ディスクグループ対応関係１２０およびキー値別アクセス頻度１３０の内容は、共に、図５および図６に示した第１実施例と同様である。図３１は、初期配置処理完了後のマップ情報１４０の内容の一例を示す説明図である。初期配置処理によって、３つのテーブル（Ｔ１［１−１０］、Ｔ１［１１−２０］、Ｔ２［１−１０］）がディスクグループＤＧ１に格納され、１つのテーブル（Ｔ２［１１−２０］）がディスクグループＤＧ２に格納されている。すなわち、テーブルのデータの配置が、図２７に示す通りの配置となっている。なお、図３１に示した第４実施例におけるマップ情報１４０では、「論理ボリューム」および「物理ボリューム」（図２７）の項目が含まれている点が、第１から第３実施例におけるマップ情報１４０とは異なっている。
【００９０】
第４実施例のデータ配置処理（図２８）において、ステップＳ３００からステップＳ３７０までの処理は、図１２に示した第２実施例のデータ配置処理におけるステップＳ２００からステップＳ２７０までの処理と同様である。すなわち、ステップＳ３００からステップＳ３７０までの処理によって、図１５に示すように、テーブルＴ２［１−１０］が、ディスクグループＤＧ１からディスクグループＤＧ２に移動される。なお、このとき、テーブルＴ２［１−１０］の移動は、異なる記憶装置システム３間における移動となる。この移動処理は、移動元の記憶装置システム３のデータ移動部３２０（図１）によって実行される。
【００９１】
ステップＳ３８０（図２８）では、データ配置部１１０（図１）が、論理ボリュームと物理ボリュームとの対応関係を再設定し、マップ情報１４０（図３１）を更新する。ここで、図１２に示した第２実施例では、ステップＳ２８０で、ディスクグループと論理デバイスとの対応関係を再設定しているのに対し、第４実施例では、論理ボリュームと物理ボリュームとの対応関係を再設定している。これは、第４実施例では、ディスクグループＤＧ１とディスクグループＤＧ２とが互いに異なる記憶装置システム３に含まれているため、ディスクグループと論理デバイスとの対応関係を再設定することができないからである。
【００９２】
図３２は、論理ボリュームと物理ボリュームとの対応関係の再設定の一例を示す説明図である。図３２に示すように、論理ボリュームと物理ボリュームとの対応関係の再設定は、テーブルＴ２［１−１０］が移動前に格納されていた論理デバイス（ＬＤ３）に対応付けられた物理ボリューム（ＰＶ４）と、移動後に格納された論理デバイス（ＬＤ５）に対応付けられた物理ボリューム（ＰＶ６）と、を入れ替えることによって行う。すなわち、物理ボリューム（ＰＶ４）と論理ボリューム（ＬＶ５）との対応関係を、物理ボリューム（ＰＶ６）と論理ボリューム（ＬＶ５）との対応関係に変更する。このような再設定を行うことによって、ＤＢＭＳ２１０（図１）は、データの移動前と同じ論理ボリュームＬＶ５にアクセスすることによって、記憶装置システム３内の格納位置が変更されたテーブルＴ２［１−１０］のデータにアクセスすることが可能となる。
【００９３】
図３３は、論理ボリュームと物理ボリュームとの対応関係再設定後に作成されるマップ情報１４０の内容の一例を示す説明図である。図３３に示すように、記憶装置システム３内の格納位置が変更されたテーブルＴ２［１−１０］は、ディスクグループＤＧ２の論理デバイスＬＤ５に格納されることとなる。
【００９４】
以上説明したように、第４実施例では、複数の業務サーバ２および複数の記憶装置システム３を備える計算機システム１０００においても、管理サーバ１が、キー値別アクセス頻度１３０に基づいて、テーブルのデータを格納するディスクグループを設定することができる。そのため、複数の業務サーバ２および複数の記憶装置システム３を備える計算機システム１０００においても、ディスクグループへのアクセス頻度を考慮したディスクグループへのデータベースのデータの配置の設定を行うことができる。
【００９５】
Ｅ．その他の変形例：
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【００９６】
Ｅ１．その他の変形例１：
図１および図２６に示した各実施例の計算機システム１０００の構成は、あくまで一例であり、計算機システム１０００を他の構成とすることも可能である。計算機システム１０００が３台以上の業務サーバ２を備えるとしてもよいし、３台以上の記憶装置システム３を備えるとしてもよい。また、管理サーバ１と業務サーバ２とが、一体の計算機として構成されるとしてもよい。あるいは、業務サーバ２と記憶装置システム３とが、一体として構成されるとしてもよい。
【００９７】
また、図２および図２７に示した各実施例の計算機システム１０００におけるデータベースのデータの配置の階層構造は、あくまで一例であり、階層構造を他の構造とすることも可能である。例えば、記憶装置システム３において、物理的記憶領域としてディスクグループが定義されていなくてもよい。この場合に、管理サーバ１のデータ配置部１１０は、物理的記憶領域としての記憶装置３６へのデータベースのデータの配置を設定するとしてもよい。すなわち、本発明における「物理的記憶領域」は、物理的な記憶領域の単位構成（例えば記憶装置３６）であってもよいし、当該単位構成の集合（例えばディスクグループ）であってもよい。
【００９８】
Ｅ２．その他の変形例２：
上記各実施例では、アクセス頻度がテーブルのキー値の範囲別に設定されているが、キー値の範囲は任意に設定可能である。例えば、キー値の範囲を単一の値の範囲とし、キー値とアクセス頻度とが一対一に対応するようにアクセス頻度を設定してもよい。
【００９９】
また、アクセス頻度が、テーブルの項目の内、キー以外の他の参照となる項目（図４）の値の範囲別に設定されるとしてもよい。あるいは、アクセス頻度が、テーブル内のレコード（図４）毎に設定されるとしてもよい。
【０１００】
また、上記各実施例では、アクセス頻度が日単位で設定されているが、アクセス頻度が他の時間単位（例えば分単位、時間単位、週単位、月単位、年単位）で設定されるとしてもよい。また、アクセス頻度が時間の経過に応じて変化するように設定される必要はなく、固定的に設定されるとしてもよい。
【０１０１】
Ｅ３．その他の変形例３：
上記各実施例におけるテーブル−ディスクグループ対応関係１２０、キー値別アクセス頻度１３０、マップ情報１４０の内容は、あくまで一例であり、これらの情報は他の内容を含むとしたり、一部の内容を含まないとしたりすることも可能である。
【０１０２】
Ｅ４．その他の変形例４：
上記各実施例では、データベースを構成する構成情報の例としてテーブルを用いて説明したが、構成情報はインデクス等の他の情報であるとしてもよい。
【図面の簡単な説明】
【０１０３】
【図１】本発明の第１実施例としての計算機システムの構成を概略的に示す説明図。
【図２】第１実施例の計算機システムにおけるデータベースのデータ配置の階層構造を概念的に示す説明図。
【図３】第１実施例におけるデータ配置処理の流れを示すフローチャート。
【図４】データベースの構成情報としてのテーブルの内容の一例を示す説明図。
【図５】テーブル−ディスクグループ対応関係の内容の一例を示す説明図。
【図６】キー値別アクセス頻度の内容の一例を示す説明図。
【図７】データグループ設定の一例を示す説明図。
【図８】ディスクグループおよび論理デバイスの割り当ての一例を示す説明図。
【図９】マップ情報の内容の一例を示す説明図。
【図１０】第１実施例の変形例におけるデータ配置設定の一例を示す説明図。
【図１１】第１実施例の変形例におけるマップ情報の内容の一例を示す説明図。
【図１２】第２実施例におけるデータ配置処理の流れを示す説明図。
【図１３】第２実施例のデータ配置処理において変化後のキー値別アクセス頻度の値に基づき計算されたアクセス頻度の合計を示す説明図。
【図１４】第２実施例のデータ配置処理におけるデータグループ再設定の様子を示す説明図。
【図１５】論理デバイスの割り当ての一例を示す説明図。
【図１６】ディスクグループと論理デバイスとの対応関係の再設定の一例を示す説明図。
【図１７】ディスクグループと論理デバイスとの対応関係再設定後のテーブルの配置を示す説明図。
【図１８】ディスクグループと論理デバイスとの対応関係再設定後に作成されるマップ情報の内容の一例を示す説明図。
【図１９】第２実施例の変形例におけるデータ配置設定の一例を示す説明図。
【図２０】第２実施例の変形例におけるマップ情報の内容の一例を示す説明図。
【図２１】第３実施例におけるキー値別アクセス頻度の内容の一例を示す説明図。
【図２２】第３実施例におけるデータ配置設定の一例を示す説明図。
【図２３】第３実施例におけるマップ情報の内容の一例を示す説明図。
【図２４】第３実施例の変形例におけるデータ配置設定の一例を示す説明図。
【図２５】第３実施例の変形例におけるマップ情報の内容の一例を示す説明図。
【図２６】第４実施例の計算機システムの構成を概略的に示す説明図。
【図２７】第４実施例の計算機システムにおけるデータベースのデータ配置の階層構造を概念的に示す説明図。
【図２８】第４実施例におけるデータ配置処理の流れを示すフローチャート。
【図２９】初期配置処理によって取得されたテーブル−ディスクグループ対応関係の内容の一例を示す説明図。
【図３０】初期配置処理によって取得されたキー値別アクセス頻度の内容の一例を示す説明図。
【図３１】初期配置処理完了後のマップ情報の内容の一例を示す説明図。
【図３２】論理ボリュームと物理ボリュームとの対応関係の再設定の一例を示す説明図。
【図３３】論理ボリュームと物理ボリュームとの対応関係再設定後に作成されるマップ情報の内容の一例を示す説明図。
【符号の説明】
【０１０４】
１…管理サーバ
２…業務サーバ
３…記憶装置システム
１１…ＣＰＵ
１２…主メモリ
１３…ネットワークＩ／Ｆ
１４…表示装置
１５…入力装置
１７…コントローラ
１８…記憶装置
２１…ＣＰＵ
２２…主メモリ
２３…ネットワークＩ／Ｆ
２４…表示装置
２５…入力装置
２７…コントローラ
２８…記憶装置
２９…データＩ／Ｆ
３１…ポート
３２…ディスクコントローラ
３３…制御メモリ
３４…ＣＰＵ
３５…キャッシュメモリ
３６…記憶装置
３７…ネットワークＩ／Ｆ
１１０…データ配置部
１１１…テーブル−ディスクグループ対応関係取得部
１１２…キー値別アクセス頻度取得部
１１３…条件取得部
１１４…データグループ負荷計算部
１１５…条件判定部
１２０…テーブル−ディスクグループ対応関係
１３０…キー値別アクセス頻度
１４０…マップ情報
２１０…ＤＢＭＳ
２２０…論理ボリューム設定部
３１０…ディスクグループ・論理デバイス設定部
３２０…データ移動部
１０００…計算機システム
【図１】
2006221513.tif 000003
【図２】
2006221513.tif 000004
【図３】
2006221513.tif 000005
【図４】
2006221513.tif 000006
【図５】
2006221513.tif 000007
【図６】
2006221513.tif 000008
【図７】
2006221513.tif 000009
【図８】
2006221513.tif 000010
【図９】
2006221513.tif 000011
【図１０】
2006221513.tif 000012
【図１１】
2006221513.tif 000013
【図１２】
2006221513.tif 000014
【図１３】
2006221513.tif 000015
【図１４】
2006221513.tif 000016
【図１５】
2006221513.tif 000017
【図１６】
2006221513.tif 000018
【図１７】
2006221513.tif 000019
【図１８】
2006221513.tif 000020
【図１９】
2006221513.tif 000021
【図２０】
2006221513.tif 000022
【図２１】
2006221513.tif 000023
【図２２】
2006221513.tif 000024
【図２３】
2006221513.tif 000025
【図２４】
2006221513.tif 000026
【図２５】
2006221513.tif 000027
【図２６】
2006221513.tif 000028
【図２７】
2006221513.tif 000029
【図２８】
2006221513.tif 000030
【図２９】
2006221513.tif 000031
【図３０】
2006221513.tif 000032
【図３１】
2006221513.tif 000033
【図３２】
2006221513.tif 000034
【図３３】
2006221513.tif 000035