(57)【要約】【課題】表を複数のストレージに分散して格納する場合の運用を改善すること。【解決手段】情報処理装置２は、物理的な記憶媒体であるストレージにデータベースの表を格納する。データベースの表を表分割条件に従って分割して分割表とし、分割表を論理的な格納領域であるエリアに対応づけ、エリアをストレージに対応づける情報処理装置２が、使用量が所定値以上である所定のエリアを検出するエリア監視部４４と、空き容量のある空きストレージを確保する処理要求実行部４２と、所定のエリアに対応づけられるストレージに空きストレージを追加するエリア割当部４６と、を有することを特徴とする。【選択図】図２
2006293981.tif 000002
【特許請求の範囲】
【請求項１】
物理的な記憶媒体であるストレージにデータベースの表を格納するデータベース格納方法であって、
情報処理装置が、
前記データベースの表を表分割条件に従って分割して分割表とし、分割表を論理的な格納領域であるエリアに対応付け、前記エリアを前記ストレージに対応付ける手順と、
使用量が所定値以上である所定のエリアを検出する手順と、
空き容量のある空きストレージを確保する手順と、
前記所定のエリアに対応付けられる前記ストレージに前記空きストレージを追加する手順と、
を実行することを特徴とするデータベース格納方法。
【請求項２】
前記情報処理装置は、
データエリア、インデクスエリア、および、オブジェクトエリアの少なくとも１つの前記エリアであるエリア種別を前記エリアに付し、前記エリア種別に応じて前記エリアを前記ストレージに対応付けることを特徴とする請求項１に記載のデータベース格納方法。
【請求項３】
前記エリアの使用量が所定値以上であることを検出する手順は、データの書き込み時に行うことを特徴とする請求項１または請求項２に記載のデータベース格納方法。
【請求項４】
前記情報処理装置は、
前記空きストレージと、前記所定のエリアに対応付けられる他の前記ストレージについて、運用を変更することを特徴とする請求項１ないし請求項３のいずれか１項に記載のデータベース格納方法。
【請求項５】
物理的な記憶媒体であるストレージにデータベースの表を格納するデータベース格納方法であって、
情報処理装置が、
前記データベースの表を表分割条件に従って分割して分割表とし、分割表を論理的な格納領域であるエリアに対応付け、前記エリアを前記ストレージに対応付ける手順と、
使用量が所定値以上である第１エリアを検出する手順と、
空き容量のある空きストレージを確保する手順と、
前記第１エリアの分割表および前記エリアのうちの第２エリアの分割表に関する前記表分割条件を変更する手順と、
前記第２エリアに対応付けられる前記ストレージに前記空きストレージを追加する手順と、
を実行することを特徴とするデータベース格納方法。
【請求項６】
前記情報処理装置は、
データエリア、インデクスエリア、および、オブジェクトエリアの少なくとも１つの前記エリアであるエリア種別を前記エリアに付し、前記エリア種別に応じて前記エリアを前記ストレージに対応付けることを特徴とする請求項５に記載のデータベース格納方法。
【請求項７】
前記エリアの使用量が所定値以上であることを検出する手順は、データの書き込み時に行うことを特徴とする請求項５または請求項６に記載のデータベース格納方法。
【請求項８】
前記情報処理装置は、
前記空きストレージと、前記第１エリアに対応付けられる前記ストレージについて、運用を変更することを特徴とする請求項５ないし請求項７のいずれか１項に記載のデータベース格納方法。
【請求項９】
物理的な記憶媒体であるストレージにデータベースの表を格納する情報処理装置を含むデータベース格納システムであって、
前記データベースの表を表分割条件に従って分割して分割表とし、分割表を論理的な格納領域であるエリアに対応付け、前記エリアを前記ストレージに対応付ける前記情報処理装置が、
使用量が所定値以上である所定のエリアを検出するエリア監視部と、
空き容量のある空きストレージを確保する処理要求実行部と、
前記所定のエリアに対応付けられる前記ストレージに前記空きストレージを追加するエリア割当部と、
を有することを特徴とするデータベース格納システム。
【請求項１０】
物理的な記憶媒体であるストレージにデータベースの表を格納する情報処理装置を含むデータベース格納システムであって、
前記データベースの表を表分割条件に従って分割して分割表とし、分割表を論理的な格納領域であるエリアに対応付け、前記エリアを前記ストレージに対応付ける前記情報処理装置が、
前記エリアの使用量が所定値以上である第１エリアを検出するエリア監視部と、
空き容量のある空きストレージを確保する処理要求実行部と、
前記第１エリアの分割表および前記エリアのうちの第２エリアの分割表に関する前記表分割条件を変更する表分割定義変更部と、
前記第２エリアに対応付けられる前記ストレージに前記空きストレージを追加するエリア割当部と、
を有することを特徴とするデータベース格納システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データベース格納方法、および、データベース格納システムに関する。
【背景技術】
【０００２】
従来紙面で保存されていた書類が、計算機が処理可能な電子データとして保存されるように電子化されつつある。これにより、紙面で保存されていた書類の格納スペースを節約でき、書類の検索が容易に行えるようになる。
【０００３】
なお、書類には、証拠などのために数十年に渡って長期保存が義務づけられている書類がある。このような保存対象の書類は、電子化に伴って電子データとしての長期保存が義務づけられる。電子データの長期保存は、法制化されつつあり、例えば、電子計算機を使用して作成する国税関係帳簿書類の保存方法等の特例に関する法律（平成十年三月三十一日法律第二十五号）に規定されている。
【０００４】
電子データは、ＲＤＢ（relational database）が扱う表形式が一般的である（特許文献１など）。表形式は、基本的には、最初に入力事項としての列（フィールド）が定義され、時間とともに行（レコード）が増えるように運用させる。よって、表は、時間とともにデータ量が多くなっていき、１つのストレージに収まらなくなることもある。
【０００５】
そこで、表形式のデータを分割して分割表とし、各分割表を別々のストレージに分散させて格納することにより、巨大な表形式のデータを保存するように運用させる。このとき、表から分割表を作成する方法として、レコードの日付、レコードの識別子などをキーとして、キーレンジ分割またはハッシュ分割を行う方式が挙げられる。なお、レコードは、通常は追記型のデータとして構成される。
【特許文献１】特開２０００−１６３２９３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、表から分割表を作成するにあたり、分割表をどの程度の粒度にすればよいのかを計画することは、困難であった。表のフィールドやレコードは、将来増加する可能性があり、その増加度合いを予測して、数十年という長期にわたって分割表を格納するストレージ容量を計画することは、困難である。
【０００７】
そこで、本発明は、前記課題を解決し、表を複数のストレージに分散して格納する場合の運用を改善すること目的とする。
【０００８】
また、本発明は複数のストレージに分散されて格納されたデータの管理を効率よく行うことを目的とする。
【課題を解決するための手段】
【０００９】
前記課題を解決するため、本発明は、物理的な記憶媒体であるストレージにデータベースの表を格納するデータベース格納方法であって、情報処理装置が、前記データベースの表を表分割条件に従って分割して分割表とし、分割表を論理的な格納領域であるエリアに対応付け、前記エリアを前記ストレージに対応付ける手順と、使用量が所定値以上である所定のエリアを検出する手順と、空き容量のある空きストレージを確保する手順と、前記所定のエリアに対応付けられる前記ストレージに前記空きストレージを追加する手順と、を実行することを特徴とする。その他の手段は、後記する。
【００１０】
以上により、初期構築では長期ＤＢ容量に関する設計を不要とし、適時用意のストレージ（エリア）の割り当て等を実現することとなり、ストレージ容量を初期に計画することなく、巨大な表を複数のストレージに分散して格納することが可能となる。
これにより、効率的な資源投入と運用の容易化が促進される。
【発明の効果】
【００１１】
本発明により、表を複数のストレージに分散して格納することが可能となる。
【００１２】
メール、契約書等の電子データを長期保存する場合に、初回のサーバやストレージを最小限の構成で構築し、データ量の増加に伴って計画的にシステムの増強が容易になる。
【発明を実施するための最良の形態】
【００１３】
以下に、本発明が適用される計算機システムの第１実施形態について、図面を参照して詳細に説明する。まず、本実施形態の計算機システムの構成について、図１から図６を参照して説明する。
【００１４】
図１は、表の格納方式のモデルを示す説明図である。表Ｔ０は、長期保存の対象となる電子データである。表Ｔ０のデータは、一度値が入力された後にはその値は読み取り専用となり、書き換えは行われない追記型のデータである。なお、表Ｔ０のセル値は、最初から全て値が埋まっているわけではなく、時間とともに適宜追加されていく。表分割条件は、表Ｔ０から分割表Ｔ１および分割表Ｔ２に分割するための条件である。これにより、１つの巨大な表Ｔ０は、ストレージの格納しやすいサイズに分割される。
【００１５】
対応情報は、分割表（分割表Ｔ１および分割表Ｔ２）と、エリア（エリアＡ１およびエリアＡ２）とを対応付ける情報である。例えば、分割表Ｔ１とエリアＡ１とが対応付けられることは、分割表Ｔ１がエリアＡ１に格納される旨を意味する。なお、エリアとは、バックアップ、ガベージコレクションなどのデータを運用する単位であり、本データを管理するプログラム（例えば、データベース管理システム）によって管理される論理的なデータ格納領域である。そして、エリアごとに、データの許容容量（例えば、１００Ｇバイトまでデータが入る）と、現在のデータの使用容量（例えば、現在８０Ｇバイトまでデータが入っているなど）とが定義され管理される。
【００１６】
エリア情報は、エリア（エリアＡ１およびエリアＡ２）と、ストレージ（ＬＵ１およびＬＵ２）とを対応付ける情報である。例えば、エリアＡ１とＬＵ１とが対応付けられることは、エリアＡ１のデータは、ＬＵ１に格納される旨を意味する。ストレージは、データを格納する物理的な記憶デバイスであり、例えば、ＨＤＤ（Hard Disk Drive）として構成される。また、ストレージは、ＳＡＮ（Storage Area Network）などのネットワークに接続するためのネットワークインタフェースを有していてもよい。この具体的な構成については後述する。以上のように、本実施形態では、分割表を直接ストレージと対応付ける代わりに、エリアという中間層を設けている。
【００１７】
図２は、エリア満杯（エリアに格納されているデータの使用量が所定値以上）時の対処を示す説明図である。なお、「エリアが満杯である」という表現について、本実施例では、使用率（現在のデータの使用容量／データの許容容量）が、文字通り１００％の場合に限定されることはない。例えば、所定の閾値となる使用率（８５％など）を超えた使用率（９０％など）のときにも、「エリアが満杯である」とする。また、あるデータをエリアに記憶しようとしたときに、空き容量が不足して記憶できなかった場合も「エリアが満杯である」とする。
【００１８】
図２に示す第１実施形態の方式は、満杯になったエリアについて、エリアを拡張することで、新たなデータを書き込ませる方式である。エリアを拡張するとは、新たなストレージを既存のエリアに割り当てることにより、データの許容容量を増やすことである。これにより、各エリアについて、初期にデータの許容容量を計画する必要がなくなり、長期保存の運用が容易になる。
【００１９】
換言すると、第１実施形態の方式は、複数のエリアをあらかじめ定義しておくが、実際のストレージは全てのエリアには割り当てず定義のみを行う方式である。そして、現在新規データの格納対象であるエリアが一定の使用率になった時点で、既存のデータ格納対象のエリアに対して新たなストレージを割り当てる。
【００２０】
データベース管理システム２６は、アプリケーションプログラム１６からのデータ登録処理要求を受け付けると、ストレージ管理部２８を介して、ストレージシステム３にデータを書き込むよう試みる。しかし、データベース管理システム２６は、書き込み対象のエリア２が既に満杯であることを検知すると、エリア２への実体化を行う。具体的には、ストレージ管理部２８に新規ストレージの割り当てを要求し、その結果取得したストレージＬＵ３を、既存のエリア２に割り当てるよう、エリア情報テーブル６４を更新する。そして、データベース管理システム２６は、エリア２の運用を変更する。
【００２１】
図３は、計算機システムの一部を機能ブロックにより示した図である。計算機システムは、アプリケーションプログラム１６、データベース管理システム２６、ストレージ管理部２８、ストレージシステム３を含めて構成される。アプリケーションプログラム１６は、データ登録処理を要求するプログラムである。
【００２２】
データベース管理システム２６は、記憶領域６０を含む。記憶領域６０は、表分割定義テーブル６２、エリア情報テーブル６４、エリア管理情報６６、および、表定義情報６８を格納する。表分割定義テーブル６２は、図１に示す表分割条件および対応情報を格納する。エリア情報テーブル６４は、図１に示すエリア情報を格納する。エリア管理情報６６は、エリアの使用率および現在書き込み対象となっているエリア（以下、カレントエリアとする）を示す情報である。表定義情報６８は、列（フィールド）の要素名（氏名、住所など）、セル値のデータ型（整数型など）などの表定義を示す情報である。
【００２３】
そして、データベース管理システム２６は、エリア管理情報６６を監視するエリア監視部４４、エリア監視部４４により検出されたエリアの満杯をもとに新たなストレージを要求する処理要求実行部４２、処理要求実行部４２によって取得された新たなストレージをエリアに割り当てるエリア割当部４６、を含む。
【００２４】
さらに、データベース管理システム２６は、表分割定義テーブル６２の表分割定義を変更する表分割定義変更部４８、表分割定義テーブル６２を更新する仮想エリア管理部４０、および、エリア情報テーブル６４を更新するエリア運用管理部５０を含む。
【００２５】
ストレージ管理部２８は、処理要求実行部４２からの要求を元に、ストレージシステム３の空いているストレージを割り当てるストレージ割当部５２を含む。ストレージシステム３は、ストレージ（ＬＵ１、ＬＵ２、．．．）をまとめて管理し、ストレージ管理部２８からの要求に応じて、データの読み書きを行う。
【００２６】
図４は、計算機システムのハードウェアを示す構成図である。ＰＣ（Personal Computer）は、アプリケーションプログラム１６にアクセスするコンピュータ端末である。情報処理装置１および情報処理装置２は、コンピュータとして構成され、処理プログラムやデータベースを格納する外部記憶装置と、ＵＳＢ（Universal Serial Bus）やイーサネット（登録商標）などのネットワークで接続される。
【００２７】
まず、情報処理装置１は、通信制御装置１０、ＣＰＵ（Central Processing Unit）１２、主記憶装置１４、Ｉ／Ｏ制御装置１８を有している。アプリケーションプログラム１６は、主記憶装置１４に読み込まれており、ＣＰＵ１２によって実行される。一方、情報処理装置２は、通信制御装置２０、ＣＰＵ２２、主記憶装置２４、Ｉ／Ｏ制御装置３０を有している。データベース管理システム２６およびストレージ管理部２８は、主記憶装置２４に読み込まれており、ＣＰＵ２２によって実行される。
【００２８】
図５は、表分割定義テーブル６２の一例を示す構成図である。図５（ａ）は、各エリアが全て同じ種別であるときの表分割定義テーブル６２の一例であり、図５（ｂ）は、図５（ａ）に対して各エリアによって異なる特徴を持たせたエリア種別付けの表分割定義テーブル６２の一例である。
【００２９】
図５（ａ）の表名「表１」は、５つの表分割条件によって、５つの分割表に分割されている。例えば、最上段の分割表は、データ日時が１９６９／３／３１以前となるデータのみを「表１」から抽出したものである。そして、５つの分割表は、対応する格納エリア名によって示される５つのエリアに格納されるよう、対応情報が示されている。例えば、最上段の分割表は、エリア１に格納される。
【００３０】
図５（ｂ）の表名「表１」は、図５（ａ）と同様に、５つの分割表に分割されている。
なお、各分割表を格納するエリアには、別々のエリア種別が割り当てられている。エリア種別は、例えば、データを格納するデータエリア、データに効率的にアクセスさせるためのインデクスエリア、および、データの格納先を示すオブジェクトエリアなどに分類される。
【００３１】
データエリアに格納されるデータは、整数型、文字型などが挙げられる。インデクスエリアに格納されるインデクスは、例えば、バランスドツリーのようなデータ構造を有し、指し示すデータが古くなったら、使用頻度が低くなるので、消してもよい。
【００３２】
インデクスはデータへのアクセス手段なので、データアクセスの高速性が要求されない限りは不要である。そのため、データ自体が古くなりアクセス頻度が少なくなるに伴い、インデクスの利用頻度も必然的に小さくなり、インデクスを持つこと自体の位置を失うこととなる。そのため、古いデータに関連付けられているインデクスは不要となり、当該インデクスを格納していたインデクスエリアを削除する。それに伴い、当該インデクスエリアへアクセスするアプリケーションプログラム１６がインデクスを使用しないように、データベース管理システム２６がそのアクセスパスを自動的に変更する。
【００３３】
以上により、インデクスエリア用のストレージ容量の削減とともに管理対象エリア数の削減もでき、管理コストを軽減することができる。
【００３４】
また、古いインデクスエリアに関しては、バックアップを取得しない運用に切り替えることが可能となる。当該インデクスエリアに障害が発生した場合には、データからインデクスを作り直す運用に切り替える。もしくは、インデクスを使用しないようにアクセスパスを自動的に変更することによる対処も可能である。このバックアップレス運用により運用の容易化が実現できる。
【００３５】
オブジェクトエリアに格納されるデータは、ＳＱＬ（Structured Query Language）９９においては、通常ギガバイト程度までの大きさのデータを格納するＬＯＢ（Large Object）がある。ＬＯＢには、さらに細かい分類があり、例えば、オーディオデータやイメージデータなどバイナリデータを格納するＢＬＯＢ（Binary Large Object）、文字データを格納するＣＬＯＢ（Character Large Object）が挙げられる。なお、ＢＬＯＢとＣＬＯＢとを同じエリア種別としてもよいし、異なるエリア種別としてもよい。
【００３６】
ＬＯＢデータに対するアクセス頻度は本来多くなく、更新自体も少ないという特徴がある。さらに、データ登録から時間が経過するに伴いアクセス頻度は低下する、もしくは、アクセスがほとんどないと考えてもよい。ＬＯＢデータは、本来データ本体にくらべても、アクセス頻度は低く、ＬＯＢデータへのアクセスは手間がかかってもハンドリングさえできれば機能要件を満たすという特徴を持つ。そのため、データ自体が古くなった際に、エリア内のＬＯＢデータを圧縮格納に切り替える運用に変更することも有効である。この圧縮保存によりオブジェクトエリア用のストレージ容量を削減できる。
【００３７】
また、古いインデクスエリアに関しては、バックアップは一度きりとする運用に切り替えることが可能となる。その後はバックアップ取得を行わない運用とする。このバックアップ簡易化により運用の容易化が実現できる。
【００３８】
このエリア種別は、エリアをどのストレージに対応付けるかを決める際に参照される。例えば、インデクスエリアがアクセスさせるデータのデータ日時が古いときには、インデクスが参照される頻度が低くなるので、インデクスエリアを低性能なストレージに対応付ける。
【００３９】
図６は、エリア情報テーブル６４の一例を示す構成図である。例えば、エリア１のデータは、ＬＵ１に格納される。なお、ＬＵ名が「−」のエリアは、格納先のＬＵが未定のエリアである。
【００４０】
以上、計算機システムの構成について、説明した。次に、本実施形態の計算機システムの動作の処理について、図１から図６を参照しつつ、図７に沿って説明する。
【００４１】
図７は、エリア満杯時の対処を示すフローチャートである。
【００４２】
まず、エリア監視部４４は、データ追加時（もしくは定期的）にエリア管理情報６６を参照する（Ｓ１０１）。なお、データ追加時にデータ容量が足りなくなることを検知すると、新たなストレージを確保する時間がかかり、データ追加を待たせてしまうこととなる。そこで、例えば、夜間などのデータ追加の頻度が少ないときに、定期的にエリア管理情報６６を参照することで、新たなストレージを確保する時間に、データ追加を待たせてしまうことを抑制できる。
【００４３】
次に、処理要求実行部４２は、エリアにおけるデータ格納量が満杯になったかを判定する（Ｓ１０２）。データ格納量が満杯になっていないときには（Ｓ１０２、Ｎｏ）、処理を終了する。一方、データ格納量が満杯のときには（Ｓ１０２、Ｙｅｓ）、処理要求実行部４２は、新規ストレージの割り当てをストレージ管理部２８に要求する（Ｓ１０３）。なお、要求メッセージには、要求するデータ容量が必ず含まれている。なお、要求するデータ容量が含まれない場合の例については後述する。さらに、要求メッセージには、付加的な情報として、要求するストレージ特性（高速なディスク、信頼性のあるディスクなど）を含めてもよい。ストレージ管理部２８は、要求を受けて新規ストレージを確保する。
【００４４】
さらに、エリア割当部４６は、取得したストレージをエリア情報テーブル６４に登録（エリアへの割り当て）する（Ｓ１０４）。ここで、表分割条件の変更は行われず、取得したストレージは、既存のエリアに割り当てられる。
【００４５】
そして、エリア運用管理部５０は、現在使用しているエリアの運用を変更する（Ｓ１０５）。運用の変更は、例えば、データのライフサイクルに着目して行われる。具体的には、データ日時の古いデータは、アクセス頻度が少ないので、安価なストレージ（低速なストレージなど）に格納しておけば充分である。よって、エリア運用管理部５０は、データ日時の古いデータについて、高価なストレージから安価なストレージに移動する。
【００４６】
また、データ日時の古いデータは、新しいデータと比較して、データの重要度が低いこともある。そのときには、古いデータの信頼性向上策（バックアップ、二重化など）の頻度を、新しいデータよりも少なくなるように、運用してもよい。さらに、古いデータは、信頼性向上策を行わないこととしてもよい。
【００４７】
以下に、本発明が適用される計算機システムの第２実施形態について、図面を参照して詳細に説明する。図８は、エリア満杯時の対処を示す説明図である。
【００４８】
図８に示す第２実施形態の方式は、満杯になったエリアとは別のエリアに、新たなデータを書き込ませる方式である。つまり、新たなストレージを新たに使用するエリアに割り当てることにより、データの許容容量を増やすことである。具体的には、一定容量のエリア群に対してデータを格納し、エリアが満杯になった時点のキーを表分割条件のキーレンジ分割値として設定し、以降は新たなエリアに格納する。これにより、各エリアについて、初期にデータの許容容量を計画する必要がなくなり、長期保存の運用が容易になる。
【００４９】
データベース管理システム２６は、アプリケーションプログラム１６からのデータ登録処理要求を受け付けると、ストレージ管理部２８を介して、ストレージシステム３にデータを書き込むよう試みる。しかし、データベース管理システム２６は、書き込み対象のエリア２が既に満杯であることを検知すると、エリア３への実体化を行う。具体的には、ストレージ管理部２８に新規ストレージの割り当てを要求し、その結果取得したストレージＬＵ３を、新たに使用するエリア３に割り当てるよう、エリア情報テーブル６４を更新する。そして、データベース管理システム２６は、エリア２およびエリア３の運用を変更する。
【００５０】
図９は、エリア満杯時の対処を示すフローチャートである。
【００５１】
まず、Ｓ２０１〜Ｓ２０３は、図７のＳ１０１〜Ｓ１０３と同じ動作である。そして、エリア割当部４６は、取得したストレージをエリア情報テーブル６４に登録（エリアへの割り当て）する（Ｓ２０４）。ここで、Ｓ１０４では既存のエリアに取得したストレージを割り当てることとしたが、Ｓ２０４では新たに使用するエリアに取得したストレージを割り当てる。
【００５２】
さらに、表分割定義変更部４８は、表分割条件を変更することによって、Ｓ２０４の新たに使用するエリアを定義する（Ｓ２０５）。具体的には、表分割定義変更部４８は、当該エリアに最後に挿入したデータの分割条件列の値を元に、表の分割条件を変更（当該エリアおよび新規エリア）する。そして、エリア運用管理部５０は、現在使用しているエリアの運用の変更する（Ｓ２０６）。
【００５３】
図１０は、Ｓ２０５に示す表分割条件の変更処理（データ挿入先変更処理）の一例を示すフローチャートである。図１１（ａ）は、図１０の処理前のテーブルの内容を、図１１（ｂ）は、図１０の処理後のテーブルの内容を、それぞれ示す。
【００５４】
まず、表分割定義変更部４８は、次のデータ挿入先であるエリアを決定する（Ｓ３０１）。つまり、表分割定義変更部４８は、エリア情報テーブル６４のＬＵ名が「−」(未割り当て)のエントリをサーチし、エリア名が「エリア３」のエントリを特定する。
【００５５】
次に、表分割定義変更部４８は、特定したエントリのＬＵ名を「−」から割り当てられた新規ストレージ名「ＬＵ３」に変更する（Ｓ３０２）。そして、表分割定義変更部４８は、現在のデータ挿入先のエリア「エリア２」にデータ挿入したデータ内の分割列「列１」の値「2001/2/10」を取得する（Ｓ３０３）。さらに、表分割定義変更部４８は、表分割定義テーブル６２のエリア名が現在のデータ挿入先のエリアである「エリア２」のエントリをサーチする（Ｓ３０４）。そして、表分割定義変更部４８は、サーチで特定したエントリの分割条件の終端部を先に取得した「2001/2/10」に変更する（Ｓ３０５）。
【００５６】
さらに、表分割定義変更部４８は、表分割定義テーブル６２にエントリを追加する（Ｓ３０６）。なお、追加するエントリは、「2001/2/10」の次の値「2001/2/11」を分割条件の開始部に持つ「2001/2/11〜」、エリア名を次のデータ挿入先として決定したエリア「エリア２」に持つエントリである。
【００５７】
以上説明した本発明は、以下のようにその趣旨を逸脱しない範囲で広く変形実施することができる。
【００５８】
ストレージを構成する記憶媒体は、例えば、フラッシュメモリ、ＤＶＤ（Digital Versatile Disk）などの光ディスク、ＭＯ（Magneto-Optical disk）などの光磁気ディスク、および、ＨＤ（hard disk）などの磁性体ディスクが挙げられる。
【００５９】
また、従来長期保存で使用されてきたマイクロフィルムは、図面などのアナログデータを書き込む用途で使用されている。そこで、本実施形態のストレージに、Ｄ／Ａ変換（書き込み時）および、Ａ／Ｄ変換（読み込み時）の機構を設けることにより、マイクロフィルムを記憶媒体として活用してもよい。
【００６０】
図１２は、計算機システムの他のハードウェア構成を示したものである。なお、図中の符号のうち、既に説明したものは同一の符号を付している。
【００６１】
計算機システムは、情報処理装置１，２、複数のストレージシステム３（３ａ，３ｂ，３ｃ）、複数の端末４、管理サーバ５とを有している。情報処理装置１，２、および、各ストレージシステム３は、ネットワークで接続されている。また、各端末４、および、情報処理装置１，２は、ネットワークにより接続されている。さらに、情報処理装置１，２、各ストレージシステム３、および、管理サーバ５もネットワークにより接続されている。
【００６２】
ここで、３つのネットワークを述べたが、これらのネットワークは同じ通信プロトコルを利用するものであってもよいし、異なる通信プロトコルを利用するものであってもよい。ネットワークとしては、例えば、ＬＡＮ（Local Area Network）、ＳＡＮ（Storage Area Network）、インターネット、専用回線等を挙げることができる。
【００６３】
計算機システムがオープン系の場合は、例えば、ＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）、ＦＣＰ（Fibre Channel Protocol ）、ｉＳＣＳＩ（internet Small Computer System Interface）等のプロトコルに基づいて、データ転送が行われる。
【００６４】
計算機システムがメインフレーム系の場合は、例えば、ＦＩＣＯＮ（Fibre Connection：登録商標）、ＥＳＣＯＮ（Enterprise System Connection：登録商標）、ＡＣＯＮＡＲＣ（Advanced Connection Architecture：登録商標）、ＦＩＢＡＲＣ（Fibre Connection Architecture：登録商標）等の通信プロトコルに従ってデータ転送が行われる。
【００６５】
このような構成において、情報処理装置１，２からストレージシステム３へのデータの書き込み、読み出しは情報処理装置１，２とストレージシステム３との間でネットワークを介して行われる。
【００６６】
情報処理装置１，２は、プログラムやデータを格納するメモリおよびメモリに格納されたプログラムを実行するＣＰＵ、ストレージシステム３との通信を行うためのインタフェース（図中、ポートと示した部分）、端末４または管理サーバ５との通信を行うためのインタフェース（図示省略）とを有している。
【００６７】
情報処理装置１のメモリには、既に説明したアプリケーションプログラム１６、データベース管理システム２６を実現するプログラム、既に説明した表分割定義テーブル６２、エリア情報テーブル６４、エリア管理情報６６、および、表定義情報６８が格納されている。ＣＰＵは、メモリに記憶されたアプリケーションプログラム１６、データベース管理システム２６のプログラムを読み出して、既に説明した処理を実行する。また、情報処理装置２のメモリには、他のアプリケーションプログラム１６が格納され、ＣＰＵは、メモリに格納されたプログラムを実行する。
【００６８】
各ストレージシステム３は、複数の制御部３１０、選択制御部３２０、複数のディスク装置３４０、管理制御部３５０を有している。各制御部３１０は、情報処理装置１，２と接続するためのインタフェースであるポート、情報処理装置１，２からのアクセスを制御するためのプロセッサであるＣＰＵ、メモリとを有している。選択制御部３２０は、複数の制御部３１０と複数のディスク装置３４０とを選択的に接続するものである。
【００６９】
これにより、制御部３１０から指定されたディスク装置３４０にデータが格納され、指定されたディスク装置３４０からデータが読み出される。また、管理制御部３５０は、プロセッサであるＣＰＵとメモリとを有し、ストレージシステム３の性能情報、状態情報を収集し、管理する。さらに、管理制御部３５０は、管理サーバ５と通信を行い、ストレージシステム３の構成を定義する。
【００７０】
管理サーバ５は、ストレージシステム３と接続され、ストレージシステム３の管理制御部３５０と通信を行って、性能情報、状態情報を収集する。また、情報処理装置１からのストレージの割り当て指示に基づいて、ストレージシステム３のストレージの割り当て、または、ストレージシステム３に格納されたデータの再配置を実行する。
【００７１】
図１３は、ストレージシステム３の論理的な記憶構造に着目した構成説明図である。ストレージシステム３ａの記憶構造は、例えば、物理的記憶階層と論理的記憶階層とに大別することができる。物理的記憶階層は、物理的なディスクであるＰＤＥＶ（Physical Device）１３５０により構成される。ＰＤＥＶ１３５０は、ディスク装置３４０に該当する。
【００７２】
論理的記憶階層は、複数の（例えば２種類の）階層から構成することができる。１つの論理的階層は、ＶＤＥＶ（Virtual Device）１３４０から構成可能である。他の１つの論理的階層は、ＬＤＥＶ（Logical Device）１３２０から構成することができる。
【００７３】
ＶＤＥＶ１３４０は、例えば、４個１組（３Ｄ＋１Ｐ）、８個１組（７Ｄ＋１Ｐ）等のような所定数のＰＤＥＶ１３５０をグループ化して構成することができる。グループに属する各ＰＤＥＶ１３５０がそれぞれ提供する記憶領域が集合して１つのＲＡＩＤ記憶領域が形成される。このＲＡＩＤ記憶領域がＶＤＥＶ１３４０となる。
【００７４】
ここで、全てのＶＤＥＶ１３４０がＰＤＥＶ１３５０上に直接設けられるわけではなく、一部のＶＤＥＶ１３４０は、仮想的な中間デバイスとして生成可能である。このような仮想的なＶＤＥＶ１３４０は、ストレージシステム３ｂ，３ｃが有するＬＵ（Logical Unit）１３３０をマッピングするための受け皿となる。
【００７５】
ＬＤＥＶ１３２０は、ＶＤＥＶ１３４０上に、少なくとも１つ以上設けることができる。ＬＤＥＶ１３２０は、ＶＤＥＶ１３４０を固定長で分割することにより構成することができる。ＬＤＥＶ１３２０がＬＵ１３３０にマッピングされることにより、情報処理装置１，２は、ＬＤＥＶ１３２０を１つの物理的なディスクボリュームとして認識する。ＬＵ１３３０ごとに割当られる識別子であるＬＵＮ（Logical Unit Number）や論理ブロックアドレスを指定することにより、所望のＬＤＥＶ１３２０にアクセスする。
【００７６】
ＬＵ１３３０（１３３０ａ，１３３０ｂ，１３３０ｃ）は、ＳＣＳＩの論理ユニットとして認識可能なデバイスである。各ＬＵ１３３０は、ポートを介して情報処理装置１，２に接続される。各ＬＵ１３３０には、少なくとも１つ以上のＬＤＥＶ１３２０をそれぞれ関連付けることができる。１つのＬＵ１３３０に複数のＬＤＥＶ１３２０を関連付けることにより、ＬＵ１３３０のサイズを仮想的に拡張することもできる。
【００７７】
図１４は、１つのストレージシステム３のＲＡＩＤグループ管理テーブルの一例を示したものである。ＲＡＩＤグループ管理テーブルは、ＲＡＩＤグループを識別するためのＲＡＩＤグループＩＤ１４０１、ＲＡＩＤレベル１４０２、ＲＡＩＤグループを構成するディスク装置３４０の識別子であるディスクＩＤ１４０３、ＲＡＩＤグループの容量１４０４、ＬＤＥＶ１３２０を識別するためのＬＤＥＶ−ＩＤ１４０５により構成されている。ＲＡＩＤグループ管理テーブルは、各ストレージシステム３の管理制御部３５０のメモリに格納されている。
【００７８】
ここで、ＬＤＥＶ１３２０は次のようにして生成される。管理サーバ５のデバイス管理システム５１０によって、所定の容量をストレージシステム３の管理制御部３５０に通知すると、管理制御部３５０のＣＰＵは、ＲＡＩＤグループの容量から所定単位ごとにＬＤＥＶ１３２０を生成する。
【００７９】
例えば、ＲＡＩＤグループの容量が４０［ＧＢ：Giga Byte］であり、管理サーバ５から送られてきた所定容量が５［ＧＢ］であれば、それぞれ容量が５［ＧＢ］の８個（８＝４０［ＧＢ］／５［ＧＢ］）のＬＤＥＶ１３２０を生成し、ストレージシステム内において一意となるＬＤＥＶ−ＩＤを付してＲＡＩＤグループ管理テーブルに登録する。このＲＡＩＤグループの生成およびＬＤＥＶ１３２０の生成は、ストレージシステム３の初期設定として行われる。
【００８０】
次に、ＬＵ１３３０の生成と、このＬＵ１３３０を情報処理装置１，２が利用できるようにするための処理について説明する。まず、ＬＵ１３３０を利用できるようにするためにＬＵ管理テーブルを生成する必要がある。
【００８１】
図１５は、１つのストレージシステム３におけるＬＵ管理テーブルの一例を示したものである。ＬＵ管理テーブルは、ストレージシステムＩＤ１５０１、ＬＵ−ＩＤ１５０２、ＬＵ１３３０の容量１５０３、ＬＤＥＶ−ＩＤ１５０４、ストレージシステムＩＤ１５０５、ストレージシステムのポートアドレス１５０６、情報処理装置のポートアドレス１５０７を有している。
【００８２】
ストレージシステムＩＤ１５０１は、ストレージシステム３を特定するための識別子（ＩＤ）であり、ここに登録されたストレージシステム３にＬＵ１３３０が生成される。ＬＵ−ＩＤ１５０２は、各ストレージシステム内で一意となるように割り当てられる識別子（ＩＤ）である。ＬＵ１３３０の容量１５０３は、当該ＬＵ１３３０を構成する各ＬＤＥＶ１３２０の容量の総和である。ＬＤＥＶ−ＩＤ１５０４は、ＬＵ１３３０を構成するＬＤＥＶ１３２０を特定するための識別子（ＩＤ）である。
【００８３】
ストレージシステムＩＤ１５０５は、ＬＤＥＶ１３２０が属するストレージシステム３のＩＤである。従って、ＬＵ１３３０を生成するストレージシステム３と、このＬＵ１３３０を構成するＬＤＥＶ１３２０が属するストレージシステム３が異なると、ストレージシステムＩＤ１５０１、および、ストレージシステムＩＤ１５０５が異なったものとなる。
【００８４】
ストレージシステムのポートアドレス１５０６は、ＬＵ１３３０が対応付けられるストレージシステム３のポートのアドレスである。情報処理装置のポートアドレス１５０７は、当該ＬＵ１３３０を利用できる情報処理装置１，２を特定するためのものである。当該ポートアドレスを有する情報処理装置１，２が、当該ＬＵ１３３０を利用できる。
【００８５】
次に、図１５のＬＵ管理テーブルの生成について説明する。
【００８６】
まず管理者が、デバイス管理システム５１０を起動し、ＬＵ１３３０を生成するストレージシステム３のＩＤを入力し、ＬＵ作成を指示すると、デバイス管理システム５１０は、ストレージシステム３に一意となるＬＵ−ＩＤを生成し、ストレージシステムＩＤ１５０１とＬＵ−ＩＤ１５０２とをＬＵ管理テーブルに登録する。
【００８７】
次に、デバイス管理システム５１０は、ＲＡＩＤグループ管理テーブルから、画面に各ストレージシステム３のＬＤＥＶ１３２０を表示する。管理者が画面に表示されたＬＤＥＶ１３２０を指定し、確定すると、当該ＬＵ１３３０のＩＤと対応付けられて、選択されたＬＤＥＶ−ＩＤ１５０４と、このＬＤＥＶ１３２０が属するストレージシステムＩＤ１５０５がＬＵ管理テーブルに登録される。
【００８８】
次に、管理者は、ストレージシステムのポートアドレス１５０６と、情報処理装置のポートアドレス１５０７とをＬＵ管理テーブルに登録する。なお、ポートアドレスの登録は、管理者の画面にストレージシステム３のポートと、情報処理装置１，２のポートとを表示し、管理者がポートを選択すると、そのポートに対応付けられたアドレスをＬＵ管理テーブルに登録するようにしてもよい。
【００８９】
管理サーバ５は、このようにして生成されたＬＵ管理テーブルを、各ストレージシステム３へ送る。ストレージシステム３の管理制御部３５０は、ＬＵ管理テーブルをメモリに格納する。次に、管理制御部３５０は、ＬＵ管理テーブルのストレージシステムのポートアドレス１５０６を有する制御部３１０に、ＬＵ−ＩＤ１５０２、ＬＤＥＶ−ＩＤ１５０４、ストレージシステムＩＤ１５０５、ストレージシステムのポートアドレス１５０６、情報処理装置のポートアドレス１５０７を送る。
【００９０】
制御部３１０は、ＬＤＥＶ−ＩＤ１５０４とＬＵ−ＩＤ１５０２との対応付けを行い、送られてきたストレージシステムのポートアドレス１５０６に、ＬＵ−ＩＤ１５０２の対応付けを行う。このように、ストレージシステム３のポートにＬＵ１３３０が対応付けられると、情報処理装置１，２は、利用可能なＬＵ１３３０を認識することができる。
【００９１】
つまり、情報処理装置１，２は、情報処理装置のポートアドレス１５０７と、ストレージシステムのポートアドレス１５０６を含む問い合わせコマンドをストレージシステム３へ送る。ストレージシステム３の制御部３１０は、自身が管理しているストレージシステム３のポートで問い合わせコマンドを受けると、情報処理装置のポートアドレス１５０７と、制御部３１０が管理している情報処理装置のポートアドレス１５０７とを比較する。このポートアドレスが一致した場合、ストレージシステム３のポートに対応付けされているＬＵ１３３０のＩＤを情報処理装置１，２へ送る。これにより、情報処理装置１，２では、利用できるＬＵ１３３０を知ることが可能となる。
【００９２】
また、情報処理装置１，２からアクセス要求があった場合、制御部３１０では、アクセス要求に含まれているＬＵ−ＩＤ１５０２により、ＬＤＥＶ１３２０を特定し、特定されたＬＤＥＶ１３２０に対応付けられるディスク装置３４０にデータの書き込みまたは読み出しを行う。ここで、ＬＵ１３３０に対応付けられたＬＤＥＶ１３２０が、異なるストレージシステム３であった場合、制御部３１０は、当該ＬＤＥＶ１３２０が属するストレージシステム３へアクセス要求を送り、当該ＬＤＥＶ１３２０に対応付けされたディスク装置３４０にデータの書き込みまたは読み出しが行われる。
【００９３】
このような構成において、図７のＳ１０３、図９のＳ２０３で説明したストレージを割り当てる方法について説明する。
【００９４】
ここでは、ストレージシステム３、ＬＵ１３３０、ＬＤＥＶ１３２０の性能情報を参照し、その性能情報に基づいて割り当てる方法を説明する。各ストレージシステム３の管理制御部３５０は、ストレージシステム３の性能情報を収集し、管理している。
【００９５】
ストレージシステム３の性能情報とは、ストレージシステム全体の容量、ディスク装置３４０の種別といった静的な性能情報と、ストレージシステム３の消費電力、ポートへのアクセス頻度、ＬＵ１３３０へのアクセス頻度、ＬＤＥＶ１３２０へのアクセス頻度、ディスク装置３４０へのアクセス頻度、応答時間といった動的な性能である。
【００９６】
ここで、応答時間とは、制御部３１０がディスク装置３４０にデータの読み出し、または書き込み要求を出してから、その応答が返るまでの時間である。一般に、自ストレージシステム３のディスク装置３４０へのアクセスの方が、他ストレージシステム３のディスク装置３４０へのアクセスよりも応答が速い。
【００９７】
図１６は、静的な性能情報の一例を示したものであり、図１７は動的な性能情報の一例を示したものである。動的な性能情報は、１時間ごとに収集したものである。
【００９８】
図１８は、ストレージ割当部５２の処理を示したものである。ストレージ割当部５２の処理について説明する。まず、本処理を行う前提として、ポートへの割り当てが行われていないＬＵ１３３０を用意しておく。つまり、図１５で示したＬＵ管理テーブルにおいて、ストレージシステムのポートアドレス１５０６および情報処理装置のポートアドレス１５０７の部分が未登録であるＬＵ１３３０をあらかじめ用意しておく。これは、いくつかのＬＤＥＶ１３２０を利用するために、ＬＤＥＶ１３２０を予約することと同じである。
【００９９】
ストレージ割当部５２は、ストレージの割り当て要求を受けた場合、その要求に容量が含まれているかを判断する（Ｓ１８０１）。容量が含まれている場合（Ｓ１８０１，Ｙｅｓ）、各ストレージシステム３の管理制御部３５０からＬＵ管理テーブルを読み出し、設定要求に含まれる容量を満たすＬＵ１３３０を検索する（Ｓ１８０２）。
【０１００】
設定要求に含まれる容量を満たすＬＵ１３３０があり（Ｓ１８０２，Ｙｅｓ）、このＬＵ１３３０が１つだけの場合（Ｓ１８０３，Ｙｅｓ）は、このＬＵ１３３０を利用できるように割り当てる旨のＬＵ１３３０の割当処理を実行する（Ｓ１８０４）。この割り当ては、当該選択されたＬＵ１３３０に対する情報処理装置のポートアドレス１５０７と、ストレージシステムのポートアドレス１５０６とをＬＵ管理テーブルに設定する。
【０１０１】
情報処理装置のポートアドレス１５０７は、管理サーバ５に情報処理装置１，２ごとに登録されており、要求があった情報処理装置１，２の識別子（ＩＤ）からポートアドレスを特定することができる。またストレージシステムのポートアドレス１５０６は、アクセス頻度が少ないポートとなるよう、性能情報を参照して決定する。つまり、ポートのアクセス頻度を参照して、アクセス頻度が最も少ないポートに決定する。
【０１０２】
このようにして、割り当てが行われたＬＵ１３３０をストレージシステム３および情報処理装置１，２に通知し、ＬＵ１３３０の設定処理を行う（Ｓ１８０５）。つまり、ストレージシステム３に、割り当てを行ったＬＵ管理テーブルを送ることで、ストレージシステム３にて、ＬＵ１３３０の設定が行われる。また、割り当てたＬＵ−ＩＤおよび容量を要求があった情報処理装置１，２へ送ることで、情報処理装置１，２はエリア情報テーブル６４にエリアに対応付けてＬＵ１３３０のＩＤを登録し、エリア管理情報６６のエリアの容量を追加する。
【０１０３】
なお、容量を満たすＬＵ１３３０が複数あった場合（Ｓ１８０３，Ｎｏ）、ストレージ割当部５２は、各ＬＵ１３３０の性能を求め、性能の良いＬＵ１３３０を１つ選択する（Ｓ１８０６）。
【０１０４】
この各ＬＵ１３３０の性能の求め方について説明する。既に説明したようにディスク装置３４０に対して、複数のＬＤＥＶ１３２０が形成され、このＬＤＥＶ１３２０が選択されてＬＵ１３３０が形成されている。従って、複数のＬＵ１３３０がディスク装置３４０を共有する場合がある。
【０１０５】
この場合、アクセス頻度が高いＬＵ１３３０とディスク装置３４０を共有する未割り当てのＬＵ１３３０と、アクセス頻度が低いＬＵ１３３０とディスク装置３４０を共有する未割り当てのＬＵ１３３０は、性能が異なってしまう。ここでは、未割り当てのＬＵ１３３０とディスク装置３４０を共有する他のＬＵ１３３０により、どの程度、未割り当てのＬＵ１３３０が影響を受けるかを求める。そして、他のＬＵ１３３０の影響が少ない未割り当てのＬＵ１３３０を求める。
【０１０６】
これを実現するため、まずストレージ割当部５２は、ストレージシステム３の管理制御部３５０から性能情報およびＲＡＩＤグループ管理テーブルを読み出す。次に、Ｓ１８０２で求められた未割り当てのＬＵ１３３０を構成するＬＤＥＶ１３２０をＬＵ管理テーブルから特定する。
【０１０７】
仮に、図１５のＬＵ２が未割り当て（ストレージシステムのポートアドレス１５０６、情報処理装置のポートアドレス１５０７が未登録）であった場合、ＬＤＥＶ１０からＬＤＥＶ１３を特定する。次に、ＲＡＩＤグループ管理テーブルから、このＬＤＥＶ１３２０に割り当てられているディスク装置３４０を特定し、性能情報からディスク装置３４０のアクセス頻度を求める。ＬＤＥＶ１０からＬＤＥＶ１３は、ＤＩＳＫ５からＤＩＳＫ６により構成されているので、ＤＩＳＫ５からＤＩＳＫ６のアクセス頻度を求め、これを影響度として特定する。
【０１０８】
もし、ＤＩＳＫ５からＤＩＳＫ６の中で、アクセス頻度にばらつきがあれば、その中で最もアクセス頻度の大きいものを、当該ＬＤＥＶ１３２０の影響度として特定する。このようにして、各ＬＤＥＶ１３２０の影響度を求めると、図１９のようになる。この中で、影響度が少ないＬＤＥＶ１３２０ほど、ＬＤＥＶ１３２０の性能がよいことを意味する。次にＬＵ１３３０ごとに、ＬＤＥＶ１３２０の影響度の平均を求め、これが少ない方を、割り当てるべきＬＵ１３３０として特定する。
【０１０９】
このようにして特定されたＬＵ１３３０を利用できるようにＬＵ１３３０の割当処理を実行し（Ｓ１８０４）、ＬＵ１３３０の設定処理を実行する（Ｓ１８０５）。
【０１１０】
一方、設定要求を受けて、要求された容量を満たすＬＵ１３３０が用意されていない場合（Ｓ１８０２，Ｎｏ）、ストレージ割当部５２は、新たに割り当てるべきＬＵ１３３０を生成する。まず、ＬＵ１３３０に割り当てられていないＬＤＥＶ１３２０（未使用で、予約がされていないＬＤＥＶ１３２０）によって、要求された容量を満たすかを判断する（Ｓ１８０７）。つまり、未割り当てのＬＤＥＶ１３２０の容量の総和が要求された容量以上となるかを判断する。
【０１１１】
ここで、要求された容量以上でない場合（Ｓ１８０７，Ｎｏ）は、要求された容量のＬＵ１３３０を生成することができないので、新たに割り当てるＬＵ１３３０がない旨を情報処理装置１，２へ通知する（Ｓ１８１０）。
【０１１２】
一方、要求された容量以上となる場合（Ｓ１８０７，Ｙｅｓ）は、未割り当てのＬＤＥＶ１３２０の性能を求める（Ｓ１８０８）。これは、性能情報およびＲＡＩＤグループ管理テーブルから、ＬＵ１３３０に割り当てられていない論理デバイスの影響度を求める。影響度は、既に述べたのと同様の方法で求める。
【０１１３】
次に、性能のよいＬＤＥＶ１３２０を、要求された容量を満たすまで選択し、選択されたＬＤＥＶ１３２０でＬＵ１３３０を生成する（Ｓ１８０９）。つまり、影響度の小さいＬＤＥＶ１３２０から順に要求された容量を満たすまで選択する。要求された容量を満たす場合、ストレージ割当部５２は、ＬＤＥＶ１３２０の選択を終了し、選択されたＬＤＥＶ１３２０をＬＵ管理テーブルに登録するとともに、ＬＵ１３３０のＩＤを登録する。
【０１１４】
このようにして生成されたＬＵ１３３０を利用できるようにＬＵ１３３０の割当処理を実行し（Ｓ１８０４）、ＬＵ１３３０の設定処理を実行する（Ｓ１８０５）。
【０１１５】
このように、情報処理装置１，２からの要求に基づいて、ストレージ割当部５２は、新たなＬＵ１３３０を割り当てることができる。また、ストレージ割当部５２は、既存のＬＵ１３３０を拡張することもできる。例えば、容量の要求がない場合（Ｓ１８０１，Ｎｏ）、ストレージ割当部５２は、ＬＤＥＶ１３２０の性能を求めて、性能がよいＬＤＥＶ１３２０を既存のＬＵ１３３０に追加で割り当てる（Ｓ１８１１）。
【０１１６】
この場合、情報処理装置１，２から拡張を行うＬＵ１３３０のＩＤをストレージ割当部５２に通知すれば、ストレージ割当部５２は、ＬＵ管理テーブルに、通知を受けたＬＵ１３３０に対してＬＤＥＶ１３２０を追加登録することができる。これにより、既存のＬＵ１３３０の容量を簡単に追加することが可能となる。
【０１１７】
これは、情報処理装置１，２において当初予定していた容量よりも、実際に利用する容量が大きくなった場合に、効率的である。つまり、利用中にＬＵ１３３０の容量が足りなくなった場合、新たなＬＵ１３３０を生成し、古いＬＵ１３３０のデータを新たなＬＵ１３３０に全てコピーした後に、データを書き込むのであるが、本実施例によればＬＤＥＶ１３２０の追加なので、古いＬＵ１３３０のコピーが不要になり、情報処理装置１，２の要求に応じて、必要な容量を提供することが可能になる。
【０１１８】
なおストレージ割当部５２で利用する動的な性能情報は、所定の時間だけの性能情報を利用してもよいし、１日の平均値として利用してもよい。
【０１１９】
次に、図７のＳ１０５または図９のＳ２０６で示したエリア運用の変更について説明する。
【０１２０】
データにはライフサイクルがあり、ある時期は非常に多くのアクセスがあったのに、現在はアクセスがない、あるいは非常に少なくなってしまったデータなどがある。複数のストレージシステム３の中で、性能に差がある場合、ストレージシステム３を有効に利用するため、データのアクセス頻度等を利用して格納するストレージシステム３を特定することができれば、システム全体を効率よく運用できる場合がある。
【０１２１】
ここでは、アクセス頻度が低いデータをより性能が低いストレージシステム３へ格納する場合について説明する。
【０１２２】
まず、移動対象となるデータを特定する。移動対象となるデータの特定は次のようにして行う。まず、図５（ｂ）に示すように、データエリアとインデクスエリアとが対応付けられている場合、削除されたインデクスエリアと対応付けられたデータエリアを移動対象とする。これは、表分割定義テーブル６２を監視することによってプログラムにより実現できる。
【０１２３】
また、図５（ｂ）に示す表分割条件において、所定の日付以前のデータを移動対象とする。このようにして移動対象となるデータが特定されると、エリア情報テーブル６４を参照し、移動すべきデータが含まれるＬＵ１３３０を特定し、移動対象となるＬＵ１３３０を管理サーバ５へ通知する。これも同様にプログラムにより実現できる。
【０１２４】
このように、管理サーバ５へ通知されたＬＵ１３３０のデータは、その移動が管理サーバ５に委ねられることになる。つまり、管理サーバ５へ移動候補を情報処理装置１，２から通知し、管理サーバ５において移動のタイミングを判断してデータの移動を行うようにしている。管理サーバ５は、移動対象となるＬＵ１３３０の通知を受けてデータ再配置プログラムを実行する。
【０１２５】
図２０は、データ再配置プログラムが実行する処理を示したものである。以下、データ再配置プログラムは、ＣＰＵに実行されることにより、データ再配置部５２０を実現する。
【０１２６】
データ再配置部５２０は、移動対象となったＬＵ１３３０のアクセス頻度を監視する（Ｓ２００１）。これは、当該ＬＵ１３３０が属するストレージシステム３の管理制御部３５０から性能情報を収集し、ＬＵ１３３０のアクセス頻度が所定の値以下であるかどうかを判断している。アクセス頻度が所定の値より少なくない（Ｓ２００２，Ｎｏ）間、アクセス頻度の監視は続けられる。
【０１２７】
ＬＵ１３３０のアクセス頻度が所定の値以下となった場合（Ｓ２００２，Ｙｅｓ）、ＬＵ１３３０に格納されているデータの移動先となるＬＵ１３３０を特定する処理を行う。まず、データ再配置部５２０は、ストレージシステム３から性能情報を収集し、移動先となるストレージシステム３を特定する（Ｓ２００３）。
【０１２８】
移動対象となるデータは、アクセス頻度が低いため、データを保存するのにコストがかからないストレージシステム３を利用することを考える。例えば、消費電力が低いストレージシステム３や、総容量が少ないストレージシステム３、ディスクの稼働率が低いストレージシステム３は、コストがかからないストレージシステム３あるいはストレージシステム自体が安いものと考えることができる。
【０１２９】
そこで、データ再配置部５２０は、収集したストレージシステム３の性能情報を評価項目として、各ストレージシステム３の評価値を求める。評価値Ｓは、Ｋ１・Ｈ１＋Ｋ２・Ｈ２＋Ｋ３・Ｈ３…（Ｋｎは評価係数、Ｈｎは評価項目値）の多項式によって求める。
【０１３０】
例えば、Ｈ１を消費電力、Ｈ２を総容量、Ｈ３を稼働率とし、Ｋ１＝１、Ｋ２＝Ｋ３＝０とすると消費電力によって評価値が決まる。なお、Ｋｎについては、管理者によって決められる。例えば、消費電力によって評価値が決まる場合、評価値が小さいストレージシステム３を特定する。この評価項目は、静的な性能情報であってもよいし、動的なストレージシステム３であってもよい。
【０１３１】
次に、データ再配置部５２０は、ＬＵ１３３０を特定する（Ｓ２００４）。ＬＵ１３３０を特定するために移動元のＬＵ１３３０と同じＲＡＩＤレベル１４０２および移動元のＬＵ以上の容量を有するＬＵ１３３０をＲＡＩＤグループ管理テーブルとＬＵ管理テーブルを利用して検索する。
【０１３２】
ＬＵ１３３０があった場合（Ｓ２００５，Ｙｅｓ）、当該ＬＵ１３３０を移動先のＬＵ１３３０として、データの移動を行い（Ｓ２００６）、処理を終了する。一方、ＬＵ１３３０がない場合（Ｓ２００５，Ｎｏ）、ＬＵ１３３０が生成できるかを判断する。まず、ＲＡＩＤグループ管理テーブルとＬＵ管理テーブルから、移動元のＬＵ１３３０と同じＲＡＩＤレベル１４０２で、ＬＵ１３３０を構成していないＬＤＥＶ１３２０を特定する（Ｓ２００７）。
【０１３３】
特定されたＬＤＥＶ１３２０の総容量が、移動元のＬＵ１３３０の容量以上となるかを判断する（Ｓ２００８）。移動元のＬＵ１３３０の容量以上である場合（Ｓ２００８，Ｙｅｓ）、移動元のＬＵ１３３０の容量を満たすＬＤＥＶ１３２０を選択し、ＬＵ１３３０を生成し（Ｓ２００９）、データを移動させる（Ｓ２００６）。ここで、移動元のＬＵ１３３０の容量以上でない場合（Ｓ２００８，Ｎｏ）、当該ストレージシステム３に移動先のＬＵ１３３０がないと判断し、次に評価値が大きいストレージシステム３を選択して（Ｓ２０１０）、Ｓ２００４へ戻る。
【０１３４】
なお、データに対するアクセス頻度が再び高くなる場合、または、インデクスを作成した場合には、より応答速度の速いＬＵ１３３０へ移動させる必要がある。この場合、Ｓ２００３で求めた性能情報の評価値が大きいストレージシステム３を選択することにより、高性能なストレージシステム３を選択することができる。
【０１３５】
また、Ｓ２００４のＬＵ１３３０の特定、Ｓ２００７でのＬＤＥＶ１３２０の特定においては、図１９で説明したようにＬＤＥＶ１３２０の影響度を求めて、影響度が少ないＬＵ１３３０、ＬＤＥＶ１３２０を選択することで、より性能が高いＬＵ１３３０を求めることが可能となる。
【０１３６】
なお、ストレージシステム３を特定するのに、性能情報に基づいて決めたが、あらかじめ管理者が、各ストレージシステム３の性能を評価し、例えば性能の高い順に、ランク付けし、これを評価結果として管理サーバ５に登録しておく。ストレージシステム３を選択する場合に、その評価結果であるランクを参照して、選択するようにしてもよい。
【０１３７】
また、図１８のＳ１８１０にて、新たに割り当てるＬＵ１３３０がないと判断された場合に、既に管理サーバ５へ移動候補とされているＬＵ１３３０のデータを移行し、このＬＵ１３３０を新たに割り当てるＬＵ１３３０としてもよい。つまり、管理サーバ５のデータ再配置部５２０は、ストレージ割当部５２から割り当てるＬＵ１３３０がない旨の通知を受け、移動候補とされているＬＵ１３３０から必要な容量を満たすＬＵ１３３０を特定する。そして、特定されたＬＵ１３３０のデータを図２０に従って移動させ、データの移動が完了したら。特定されたＬＵ１３３０のデータを削除し、新たに割り当てるＬＵ１３３０とする。
【図面の簡単な説明】
【０１３８】
【図１】表の格納方式のモデルを示す説明図である。
【図２】エリア満杯時の対処を示す説明図である。
【図３】計算機システムを示す構成図である。
【図４】計算機システムのハードウェアを示す構成図である。
【図５】表分割定義テーブルを示す構成図である。
【図６】エリア情報テーブルを示す構成図である。
【図７】エリア満杯時の対処を示すフローチャートである。
【図８】エリア満杯時の対処を示す説明図である。
【図９】エリア満杯時の対処を示す他のフローチャートである。
【図１０】データ挿入先変更処理を示すフローチャートである。
【図１１】データ挿入先変更処理により変更されたテーブルを示す構成図である。
【図１２】計算機システムのハードウェアを示す構成図である。
【図１３】ストレージシステムの論理的な記憶領域を説明するための図である。
【図１４】ＲＡＩＤグループ管理テーブルを示す図である。
【図１５】ＬＵ管理テーブルを示す図である。
【図１６】静的な性能情報を示す図である。
【図１７】動的な性能情報を示す図である。
【図１８】ストレージ割当部の処理を示すフローチャートである。
【図１９】論理ユニット、論理デバイスと影響度の関係を示す図である。
【図２０】データ再配置部の処理を示すフローチャートである。
【符号の説明】
【０１３９】
１，２  情報処理装置
３      ストレージシステム
２６    データベース管理システム
２８    ストレージ管理部
４０    仮想エリア管理部
４２    処理要求実行部
４４    エリア監視部
４６    エリア割当部
４８    表分割定義変更部
５０    エリア運用管理部
６０    記憶領域
６２    表分割定義テーブル
６４    エリア情報テーブル
６６    エリア管理情報
【図１】
2006293981.tif 000003
【図２】
2006293981.tif 000004
【図３】
2006293981.tif 000005
【図４】
2006293981.tif 000006
【図５】
2006293981.tif 000007
【図６】
2006293981.tif 000008
【図７】
2006293981.tif 000009
【図８】
2006293981.tif 000010
【図９】
2006293981.tif 000011
【図１０】
2006293981.tif 000012
【図１１】
2006293981.tif 000013
【図１２】
2006293981.tif 000014
【図１３】
2006293981.tif 000015
【図１４】
2006293981.tif 000016
【図１５】
2006293981.tif 000017
【図１６】
2006293981.tif 000018
【図１７】
2006293981.tif 000019
【図１８】
2006293981.tif 000020
【図１９】
2006293981.tif 000021
【図２０】
2006293981.tif 000022