説明

記憶システム並びに管理装置及び方法

【課題】信頼性の高い記憶システム並びに当該当該記憶システムを提供し得る管理装置及び方法を提案する。
【解決手段】所定のアプリケーションが実装された上位装置と、アプリケーションが使用する記憶領域を提供するストレージ装置と、上位装置及びストレージ装置間においてデータを通信するホストサーバとを有する記憶システム並びに当該記憶システムを管理する管理及び方法において、ホストサーバ及びストレージ装置間のデータ経路上に存在する各性能情報収集対象の現在の性能値を収集し、アプリケーションについて予め設定された目標性能値と、アプリケーションの現在の性能値とに基づいて、性能問題の発生の有無を判定し、各性能情報収集対象の現在の性能値と、性能問題発生の有無の判定結果とに基づいて、各性能情報収集対象の性能値の閾値を設定するようにした。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、記憶システム並びに管理装置及び方法に関し、例えば複数のホストサーバがネットワークを介してストレージ装置にアクセスするようになされた記憶システムに適用して好適なものである。
【背景技術】
【0002】
ネットワークを経由して複数のホストサーバから統合化されたストレージ装置にアクセスする構成を有する記憶システムは、大規模化が進むストレージの利用効率を高め管理コストを削減するためのデータセンタ用アーキテクチャとして広く普及しつつある。
【0003】
このようなストレージネットワーク環境で業務システムの性能監視やチューニングを行うには、記憶システムを構成するさまざまなハードウェア装置及びソフトウェアの性能を包括的に収集して、その相互間の関係や時間的な推移を把握することが必要になる。
【0004】
これは、ホストサーバとストレージ装置が直結されたサーバ単位に業務システムが独立していた従来のアーキテクチャと異なり、ストレージネットワーク環境ではネットワーク装置やストレージ装置等の共用部分で業務システム間に性能上の干渉が生じる可能性があるためである。
【0005】
従来の記憶システムでは、性能監視対象となるハードウェア装置やソフトウェアにそれぞれ対応させて記憶システム内にエージェントを配置すると共に、記憶システム全体の性能状態を一元管理する管理ソフトウェアを設けて上記要求に答えている。
【0006】
各エージェントは、それぞれの性能監視対象と直接通信して、当該性能監視対象内の各リソース(性能情報収集対象)の性能値を性能情報として取得する。ここで、リソースとは、まとまった単位でメトリック値(性能値)が取得される記憶システムの構成要素をいう。性能情報を取得する単位となるものをいう。例えばSAN(Storage Area Network)を構成するSANスイッチにおけるポートや、ストレージ装置におけるキャッシュメモリ及び論理ボリュームなどがこれに相当する。またメトリック値とは、システム構成要素の個々の性能項目で性能監視の候補となるものをいう。例えばSANスイッチのポートにおける転送レートや、ストレージ装置のキャッシュメモリにおけるメモリ使用量、ストレージ装置の論理ボリュームにおけるデータ入出力速度などがこれに相当する。
【0007】
一方、管理ソフトウェアは、エージェント群が取得した性能情報を収集・蓄積し、蓄積したこれら性能情報と、各リソースについてシステム管理者が予め設定した閾値と基づいて各リソースを監視し、あるリソースの性能値が当該リソースについて設定された閾値を上回ったときには、これをシステム管理者に通知する。
【0008】
なお、ストレージネットワークではなく、計算機ネットワークの例であるが、下記特許文献1には、ネットワーク環境内の複数のサーバ装置の性能を監視する方法及びシステムが開示されている。
【特許文献1】米国特許番号5,734,097
【発明の開示】
【発明が解決しようとする課題】
【0009】
ところで、かかる従来の記憶システムでは、各業務システムがそれぞれ必要とする性能を達成できるように、業務システムが利用するパス(データ経路)上の各リソースの性能値の閾値を過去の経験をもとに個別にシステム管理者が試行錯誤的に設定していた。
【0010】
しかしながら、通常、パス上には複数のリソースが存在し、これら複数のリソースが相互補完的に機能し合うことによってパス全体としての性能が定まる。従って、例えばあるパス上にリソースとして論理ボリューム及びキャッシュメモリが存在する場合において、論理ボリュームの性能値が悪い場合であってもキャッシュメモリに余裕があれば、そのパス全体として業務システムが要求する目標性能を達成できる場合がある。
【0011】
従って、記憶システムにおいて、業務システムが利用するパス上に存在するリソース間の性能の相互補完的な依存関係を考慮して各リソースの性能値の閾値を決定することができれば、信頼性の高い記憶システムを構築し得るものと考えられる。
【0012】
本発明は以上の点を考慮してなされたもので、信頼性の高い記憶システム並びに記憶システムの信頼性を向上させ得る管理装置及び方法を提案しようとするものである。
【課題を解決するための手段】
【0013】
かかる課題を解決するため本発明においては、所定のアプリケーションが実装された上位装置と、前記アプリケーションが使用する記憶領域を提供するストレージ装置と、前記上位装置及び前記ストレージ装置間においてデータを通信するホストサーバとを有する記憶システムにおいて、前記ホストサーバ及び前記ストレージ装置間のデータ経路上に存在する各性能情報収集対象の現在の性能値を収集する性能情報収集部と、前記アプリケーションについて予め設定された目標性能値と、前記アプリケーションの現在の性能値とに基づいて、性能問題の発生の有無を判定する性能判定部と、前記性能情報収集部が収集した前記各性能情報収集対象の現在の性能値と、性能判定部の判定結果とに基づいて、前記各性能情報収集対象の性能値の閾値を設定する閾値設定部とを備えることを特徴とする。
【0014】
この結果、この記憶システムでは、各性能情報収集対象の閾値を、リソース間の性能の相互補完的な依存関係を総合的に考慮して設定することができる。
【0015】
また本発明においては、所定のアプリケーションが実装された上位装置と、前記アプリケーションが使用する記憶領域を提供するストレージ装置と、前記上位装置及び前記ストレージ装置間においてデータを通信するホストサーバとを有する記憶システムを管理する管理装置において、前記ホストサーバ及び前記ストレージ装置間のデータ経路上に存在する各性能情報収集対象の現在の性能値を収集する性能情報収集部と、前記アプリケーションについて予め設定された目標性能値と、前記アプリケーションの現在の性能値とに基づいて、性能問題の発生の有無を判定する性能判定部と、前記性能情報収集部が収集した前記各性能情報収集対象の現在の性能値と、性能判定部の判定結果とに基づいて、前記各性能情報収集対象の性能値の閾値を設定する閾値設定部とを備えることを特徴とする。
【0016】
この結果、この管理装置では、各性能情報収集対象の閾値を、リソース間の性能の相互補完的な依存関係を総合的に考慮して設定することができる。
【0017】
さらに本発明においては、所定のアプリケーションが実装された上位装置と、前記アプリケーションが使用する記憶領域を提供するストレージ装置と、前記上位装置及び前記ストレージ装置間においてデータを通信するホストサーバとを有する記憶システムを管理する管理方法において、前記ホストサーバ及び前記ストレージ装置間のデータ経路上に存在する各性能情報収集対象の現在の性能値を収集する第1のステップと、前記アプリケーションについて予め設定された目標性能値と、前記アプリケーションの現在の性能値とに基づいて、性能問題の発生の有無を判定する第2のステップと、前記各性能情報収集対象の現在の性能値と、性能問題発生の有無の判定結果とに基づいて、前記各性能情報収集対象の性能値の閾値を設定する第3のステップとを備えることを特徴とする。
【0018】
この結果、この管理方法によれば、各性能情報収集対象の閾値を、リソース間の性能の相互補完的な依存関係を総合的に考慮して設定することができる。
【発明の効果】
【0019】
本発明によれば、信頼性の高い記憶システム並びに記憶システムの信頼性を向上させ得る管理装置及び方法を実現できる。
【発明を実施するための最良の形態】
【0020】
以下図面について、本発明の一実施の形態を詳述する。
【0021】
(1)本実施の形態による記憶システムの構成
図1は、本実施の形態による記憶システムを示す。この記憶システム1は、複数の業務クライアント2、複数のホストサーバ3、複数の性能情報収集サーバ4,5、性能管理サーバ6及び性能管理クライアント7がLAN(Local Area Network)8を介して接続され、ホストサーバ3に複数のSANスイッチ9からなるSANを介してストレージ装置10が接続されることにより構成されている。
【0022】
業務クライアント2は、業務システムのユーザインタフェース機能を提供する所定の業務アプリケーションが実装されたコンピュータ装置であり、CPU(Central Processing Unit)やメモリ等の情報処理資源と液晶ディスプレイやCRT(Cathode Ray Tube)等の表示装置とを備える。業務クライアント2は、例えばパーソナルコンピュータや、ワークステーション、シンクライアント端末などから構成される。
【0023】
ホストサーバ3は、業務クライアント2及びストレージ装置10間においてデータを通信するコンピュータ装置であり、CPU20やメモリ21等を備える。CPU20は、メモリ21に格納されたソフトウェアを実行することにより、各種処理を実行する。メモリ21は、各種ソフトウェアを保持するために用いられるほか、CPU20のワークメモリとしても用いられる。このメモリ21には、業務システムを構成するソフトウェアとして、業務ソフト22、データベース管理ソフトウェア23、OS(Operating System)24が格納される。
【0024】
業務ソフト22は、業務システムの業務論理機能を提供するソフトウェアであり、業務クライアント2からLAN8を介して与えられる処理要求に応じて、データベース管理ソフト23にデータの参照・更新を要求する。またデータベース管理ソフト23は、業務システムのデータ管理機能を提供するソフトウェアであり、業務ソフト22からの要求に応答して、ストレージ装置10に格納されたデータの定義や操作及び管理に関する処理を行う。データベース管理ソフト23からストレージ装置10のデータへのアクセスは、OS24、ホストバスアダプタ(Host Bus Adapter)のポート25、SANスイッチ9のホスト側ポート26、SANスイッチ9、SANスイッチ9のストレージ側ポート27及びストレージ装置10のポート28を経由して行われる。
【0025】
またホストサーバ3のメモリ21には、記憶システム11の性能管理のための性能管理システムを構成するソフトウェアとして、業務ソフトウェア性能情報収集エージェント30、データベース性能情報収集エージェント31及びホスト性能情報収集エージェント32も格納される。
【0026】
業務ソフト性能情報収集エージェント30及びデータベース性能情報収集エージェント31は、それぞれ業務ソフト22やデータベース管理ソフト23のレスポンスタイムなどの性能情報を取得するためのソフトウェアであり、取得したこれらの性能情報を性能管理サーバ6に送信する。またホスト性能情報収集エージェント32は、ホストサーバ3や、OS24、ホストバスアダプタのポート25に関する性能値を性能情報として取得するためのソフトウェアであり、取得した性能情報を性能管理サーバ6に送信する。
【0027】
SANスイッチ9は、ホストサーバ3及びストレージ装置10間をパスの切替え自在に接続するネットワークデバイスであり、複数のホスト側ポート26及び複数のストレージ側ポート27を備える。SANスイッチ9のホスト側ポート26がホストサーバ3のポート25と接続されると共にストレージ側ポート27がストレージ装置10のポート28と接続されることにより、ホストサーバ3及びストレージ装置10間が通信自在に接続され、これらホストサーバ3及びストレージ装置10間においてSANスイッチ9を介した通信が行われる。
【0028】
ストレージ装置10は、複数の物理ディスク40からなるディスク部41と、ディスク部41を制御するコントロール部42とを備えて構成される。
【0029】
物理ディスク40は、例えばFC(Fibre Channel)ディスク等の高価なディスクドライブ、又はFATA(Fibre Attached Technology Adapted)や、SATA(Serial AT Attachment)ディスク又は光ディスクドライブ等の安価なディスクドライブから構成される。所定数(例えば4個)の物理ディスク40によって1つのパリティグループ43が構成され、このパリティグループ43が提供する物理的な記憶領域上に、1又は複数の論理的な記憶領域である論理ボリュームVOLが定義される。そして、ホストサーバ3から送信される業務アプリケーションが使用するデータはこの論理ボリュームVOLに所定大きさのブロックを単位として読み書きされる。
【0030】
コントロール部42は、CPU44及びキャッシュメモリ45等を備えて構成される。CPU44は、ストレージ装置10全体の動作制御を司るプロセッサであり、後述のようにキャッシュメモリ45や、論理ボリュームVOL及びパリティグループ43等に関する性能情報を収集し、収集したこれら性能情報を性能管理サーバ6に送信する。またキャッシュメモリ45は主にストレージ装置10に入出力するデータを一時的に記憶するために利用される。
【0031】
性能情報収集サーバ4,5は、いずれもパーソナルコンピュータ又はワークステーションなどから構成されるコンピュータ装置であり、それぞれSANスイッチ性能情報収集エージェント50又はストレージ性能情報収集エージェント51が実装される。
【0032】
SANスイッチ性能情報収集エージェント50は、SANスイッチ9に関する性能情報を収集するためのソフトウェアであり、LAN8を経由して各SANスイッチ9及びそのポート26,27に関する性能情報を収集し、収集した性能情報を性能管理サーバ6に送信する。またストレージ性能情報収集エージェント51は、ストレージ装置10に関する性能情報を収集するためのソフトウェアであり、SANスイッチ9を経由してストレージ装置10及びそのポート28に関する性能情報を取得し、取得した性能情報を性能管理サーバ6に送信する。
【0033】
性能管理サーバ6は、CPU52やメモリ53等を備えたコンピュータ装置であり、パーソナルコンピュータや、ワークステーション、メインフレームなどから構成される。CPU52は、メモリ53に格納されたソフトウェアを実行することにより、後述のような各種処理を実行する。メモリ53は、各種ソフトウェアを保持するために用いられるほか、CPU52のワークメモリとしても用いられる。このメモリ53には、ストレージネットワーク性能管理ソフト54が格納される。
【0034】
ストレージネットワーク性能管理ソフト54は、記憶システム1の性能管理のためのシステムを構成するソフトウェアであり、ホストサーバ3内の業務ソフトウェア性能情報収集エージェント30、データベース性能情報収集エージェント31及びホスト性能情報収集エージェント32や、性能情報収集サーバ4,5のSANスイッチ性能情報収集エージェント50及びストレージ性能情報収集エージェント51がそれぞれ収集したホストサーバ3、SANスイッチ9及びストレージ装置10に関する性能情報に基づいて、記憶システム1内の各リソースに対する性能の閾値をそれぞれ設定し、設定した閾値に基づいて記憶システム1の性能を監視する。
【0035】
性能管理クライアント7は、性能管理サーバ6のユーザインタフェース機能を提供するコンピュータ装置であり、LAN8を経由して性能管理サーバ6と通信する。例えば、性能管理クライアント7として汎用のパーソナルコンピュータを使用し、当該パーソナルコンピュータ上で稼動するWebブラウザソフトを具体的なユーザインタフェースとする構成をとることが典型例として考えられる。この場合、性能管理サーバとして用いるコンピュータ上ではWebサーバソフトウェアを稼動させ、ストレージネットワーク管理ソフトウェアが収集した性能情報は、このWebサーバソフトを経由しHTTP(Hyper Text Transfer Protocol)プロトコルでWebブラウザに送られ画面に表示される。
【0036】
(2)記憶システムにおける性能監視及び警告機能
次に、記憶システム1における性能監視及び警告機能について説明する。これに際して、まず、記憶システム1におけるリソース及びリソース間の性能に関する依存関係について説明する。
【0037】
図2は、記憶システム1におけるリソース及びリソース間の性能に関する依存関係の具体例を示している。記憶システム1を構成する具体的なハードウェア装置やソフトウェアごとにさまざまな種類のリソースがある。同じパス上に存在する各リソースは、互いに性能上の影響を及ぼし合う関係にある。
【0038】
図2に示すように、記憶システム1が、ホストサーバA及びホストサーバBという2つのホストサーバ3と、SANスイッチA、SANスイッチB、SANスイッチC及びSANスイッチDという4つのSANスイッチ9と、ストレージ装置Aという1つのストレージ装置10から構成されているものとする。
【0039】
またホストサーバAでは、データベース管理ソフト23、ホストサーバAのハード及びOS24の性能情報を取得するため、データベース性能情報収集エージェント31及びホスト性能情報収集エージェント32が稼動しているものとする。
【0040】
この場合、表A〜表Cと、索引A及び索引Bと、表領域A〜表領域Cとは、データベース管理ソフト23によって管理され、データベース性能情報収集エージェント31による性能情報の取得対象となるリソースの一例である。
【0041】
表A〜表Cは、リレーショナルデータベース管理ソフトウェアでの表現形式に従ったデータそのものであり、索引A及び索引Bは、表A〜表Cの検索を高速化するためのデータである。表A〜表Cのメトリックとしては、挿入レコード数や読込みレコード数などが考えられる。また表領域A〜表領域Cは、データベース管理ソフト23において表A〜表Cや索引A、索引Bを格納する領域を表す論理的な単位であり、そのメトリックとしては、ヒット率、毎秒IO回数、毎秒リード回数、毎秒ライト回数及び転送速度などが挙げられる。
【0042】
図2において、例えば表A及び表Bと表領域Aとを結ぶ線は、表A及び表Bが表領域Aに格納される関係を表している。この関係はまた、業務ソフト22が表Aや表Bを参照したり更新した場合の負荷が表領域Aのリードやライトにつながるという性能上の依存関係にもなっている。
【0043】
ファイルA〜ファイルG、ボリュームA〜ボリュームC及びポートAは、ホスト性能情報収集エージェント32が性能情報の取得対象とするリソースの一例である。
【0044】
ファイルA〜ファイルGは、OS24がデータの入出力サービスを提供する単位であり、そのメトリックとしては、毎秒IO回数や毎秒リード回数、毎秒ライト回数、転送速度、リード転送速度及びライト転送速度などが挙げられる。またボリュームA〜ボリュームCは、ファイルA〜ファイルGをストレージ装置10に格納する領域としてOS24が管理するものであり、そのメトリックとしては、使用済み容量、毎秒IO回数、毎秒リード回数、毎秒ライト回数、転送速度、リード転送速度及びライト転送速度などが挙げられる。
【0045】
表A〜表C及び表領域A〜表領域C間の依存関係と同様、表領域A〜表領域Cの格納先としてファイルA〜ファイルGが割り当てられ、ファイルA〜ファイルGの格納先としてボリュームA〜ボリュームCが割り当てられているため、これらリソース間には性能の依存関係がある。図2の例では、表領域AはファイルA〜ファイルCに格納され、ファイルA〜ファイルCはボリュームAに格納されるため、表領域AとファイルA〜ファイルCの間、ファイルA〜ファイルC及びボリュームA間には性能の依存関係がある。
【0046】
ホストサーバBでも、データベース性能情報収集エージェント31及びホスト性能情報収集エージェント32が稼動しているものとする。ホストサーバBのデータベース性能情報収集エージェント31が性能情報の取得対象とするリソースには、表D、表E、索引C及び表領域Dがあり、ホストサーバBのホスト性能情報収集エージェント32が性能情報の取得対象とするリソースには、ファイルH〜ファイルJと、ボリュームDとがあり、ホストサーバBのホスト性能情報収集エージェント32が性能情報の取得対象とするリソースには、ファイルH〜ファイルJと、ボリュームD及びポートBとがある。表D、表E、索引C、表領域D、ファイルH〜ファイルJ及びボリュームDのメトリックは上述と同様であるので、説明を省略する。またポートBのメトリックとしては、データ転送率などが挙げられる。
【0047】
SANスイッチA〜SANスイッチDの性能情報を取得するためSANスイッチ性能情報収集エージェント50が稼動しているものとする。このSANスイッチ性能情報収集エージェント50が情報取得対象とするリソースには、ポートC〜ポートE、SANスイッチAのその他のポートQ1〜Q3、ポートF、ポートG、SANスイッチBのその他のポートQ4〜Q7、ポートH、ポートI、SANスイッチCのその他のポートQ8〜Q11、ポートJ〜ポートM、スイッチDのその他のポートQ12,Q13がある。これらポートA〜ポートM,ポートQ1〜ポートQ13のメトリックとしては、データ転送速度、リード転送速度及びライト転送速度などが挙げられる。
【0048】
ストレージ装置Aの性能情報を取得するため、ストレージ性能情報収集エージェント51が稼動しているものとする。このストレージ性能情報収集エージェント51が性能情報の取得対象とするリソースには、ポートN〜ポートPと、論理ボリュームA〜論理ボリュームDと、パリティグループA及びパリティグループBと、物理ディスク40A〜物理ボリューム40Fとがある。ポートN〜ポートPのメトリックは上述と同様であり、論理ボリュームA,論理ボリュームB及びパリティグループAのメトリックとしては、データ転送速度、毎秒IO回数、毎秒リード回数及び毎秒ライト回数などが挙げられる。
【0049】
ホストサーバA及びホストサーバBのボリュームA〜ボリュームC及びボリュームDはパリティグループA及びパリティグループBに、パリティグループA及びパリティグループBは物理ディスクA〜物理ディスクC及び物理ディスクD〜物理ディスクFに割り当てられるため、これらリソース間には性能の依存関係がある。また、ホストサーバA及びホストサーバBのボリュームA〜ボリュームC及びボリュームDと、同ボリュームA〜ボリュームC及びボリュームDが割り当てられるストレージ装置Aの論理ボリュームA及びボリュームBと、ボリュームC及びボリュームDとの対が決まると、この両者の間でやり取りされる入出力データのパスとして、ホストバスアダプタのポートA及びポートBから、SANスイッチA〜SANスイッチDのポートA〜ポートMを経て、ストレージ装置AのポートN〜ポートPまでが決まる。
【0050】
従って、ホストサーバA及びホストサーバBのボリュームA〜ボリュームDにかかる入出力の負荷は、パス上のポートA〜ポートPに対する通信の負荷となるため、ボリュームA〜ボリュームD及び論理ボリュームA〜論理ボリュームDの対と、パス上のポートA〜ポートPとの間には性能の依存関係がある。
【0051】
図2の例では、ボリュームAは論理ボリュームAに、論理ボリュームAはパリティグループAに、パリティグループAは物理ディスク369〜371にそれぞれ割り当てられ、ボリュームA及び論理ボリュームAの対にポートAからポートC、ポートD、ポートH、ポートI及びポートNまでのパスが対応し、これらリソース間に性能の依存関係がある。
【0052】
このように、記憶システム1では、パス上のリソース間に性能の依存関係が存在するため、業務クライアント2に実装された業務アプリケーションが要求する目標性能(レスポンスタイム/スループットの目標値)を達成することを目的として、各リソースの性能値(予め定められたメトリックのメトリック値)の閾値を個別に試行錯誤的に設定するという従来のシステム構成では信頼性の高い閾値の設定を行い難い問題がある。
【0053】
そこで、本実施の形態による記憶システム1では、業務アプリケーションが要求する目標性能を達成できるように、いずれかの業務アプリケーションが使用するホストサーバ3及びストレージ装置10間のパス上に存在する各リソースの性能値の閾値を、リソース間の性能の依存関係を考慮して決定し設定する(閾値設定処理)。また、本実施の形態による記憶システム1では、各パスの性能状態を常時監視し、いずれかのパスの性能状態が劣化し始めたときには、当該パスの性能状態に関する警告を予備的にシステム管理者に通知する(予備警告処理)。
【0054】
このように、本実施の形態の記憶システム1は、パス上の各リソースの性能値の閾値を、パスごとにリソース間の性能の依存関係を考慮して設定することにより、各リソースの性能値の閾値の設定を信頼性高く行うことができ、またシステム管理者に信頼性の高い警告を行うことができる。
【0055】
図3は、このような記憶システム1の性能監視及び警告機能に主として関与する各性能情報収集エージェント61及び記憶システム性能管理ソフト54の具体的な構成を示している。なお、この図3における性能情報収集エージェント61及び記憶システム性能管理ソフト54内の各部は、それぞれ情報収集サーバ4,5内のCPUや、性能管理サーバ6内のCPU52が対応するプログラムを実行することにより発揮される機能ブロックである。
【0056】
図3において、記憶システム構成装置・ソフトウェア60は、記憶システム1内で性能の監視対象となるハードウェアやソフトウェアである。図3の記憶システム構成装置・ソフトウェアは、図1のホストサーバ3や、ホストバスアダプタのポート25、業務ソフト22、データベース管理ソフト23、SANスイッチ9及びそのポート26,27並びにストレージ装置10及びそのポート28等のうちのいずれかに当たる。
【0057】
また図3において、性能情報収集エージェント61は、業務ソフト性能情報収集エージェント30、データベース性能情報収集エージェント31、ホスト性能情報収集エージェント32、SANスイッチ性能情報収集エージェント50及びストレージ性能情報収集エージェント51のいずれかに当たる。
【0058】
性能情報収集エージェント61による各種性能情報の収集及び記憶システム性能管理ソフト54による記憶システム1の性能の監視は以下のように行なわれる。
【0059】
性能情報収集エージェント61の性能情報収集部71は、各性能情報収集エージェント61が有するスケジューリング設定に従い定期的にタイマーによって起動されるか、記憶システム性能管理ソフト54の要求で起動される。性能情報収集部71は、起動後、記憶システム性能管理ソフト54から与えられる情報に基づいて、自エージェントが担当する記憶システム構成装置・ソフト60の性能項目について収集の可否、頻度、最終日時等の収集状態を確認する。
【0060】
上述のようにシステム構成要素の個々の性能項目で性能監視の候補となるものをメトリックと呼ぶ。たとえば、メトリックの一例として、CPU使用率、メモリ使用量、記憶装置に対するI/O回数やI/Oビジー率、転送レート、スループット、データベース管理ソフトのバッファヒット率や挿入・更新・削除レコード数、Webサーバのレスポンスの時間、ファイルシステムやディスクの空き容量や利用率、入出力データ量、利用時刻など、ネットワークインタフェースのエラー回数、バッファのオーバーフローおよびフレームのエラーなどがある。
【0061】
性能情報収集部71は、確認結果に基づいて、収集すべきメトリックを測定できるシステム構成装置・ソフト60の性能情報取得部70に対し測定値の送信を要求する。この要求に応えて性能情報取得部70から返信されたメトリック値が、性能情報収集部71によってメトリック値テーブル72に格納される。
【0062】
リソース間の関連情報の収集は、かかる性能情報の場合と同様、以下のように行なわれる。性能情報収集エージェント61の構成情報収集部75は、スケジューリング設定で定期的に起動されるか、記憶システム性能管理ソフト54の要求で起動される。構成情報収集部75は、起動後、自エージェントが担当する記憶システム構成装置・ソフト60の構成情報取得部74に対しリソース間関連情報の送信を要求し(ポーリング)、要求した情報を受信し、受信した情報をリソース間関連情報記憶テーブル76に格納する。なお、各種デバイスからの情報の取得は、iSNS(Internet Storage Name Server)を利用しても良い。また、デバイスの状態の取得には、ESI(Entity Status Inquiry)を利用しても良いし、その他の方法で記憶システム構成機器の情報を取得しても良い。
【0063】
一方、記憶システム性能管理ソフト54の性能情報収集部80は、スケジューリング設定に従い、定期的に起動する。そして性能情報収集部80は、起動後、記憶システム1内のすべての性能情報収集エージェント61の性能情報応答部73に対して必要なリソースのメトリック値の送信を要求する(ポーリング)。この要求を受けた各性能情報応答部73は、要求されたリソースのメトリック値をメトリック値テーブルから検索し、これを性能情報収集部80に送信する。かくして性能情報収集80は、性能情報収集エージェント61から必要なリソースのメトリック値を受信すると、これを関連情報生成部81に送信する。
【0064】
また、かかる性能情報収集部80は、起動後、記憶システム1内のすべての性能情報収集エージェント61の構成情報応答部77に対し、各性能情報収集エージェント61が収集したリソース間関連情報の送信を要求する。この要求を受けた各構成情報応答部77は、要求されたリソース間関連情報をリソース間関連情報記憶テーブル76から読み出し、これを性能情報収集部80に送信する。かくして性能情報収集80は、性能情報収集エージェント81からリソース間関連情報を受信すると、これを関連情報生成部81に送信する。
【0065】
関連情報生成部81は、性能情報収集部80から各リソースのメトリック値及びリソース間関連情報が与えられると、これらの各リソースのメトリック値及びリソース間関連情報に基づいて、図4に示すアプリケーション性能値テーブル82及び図5に示すアプリケーション性能値テーブル83及び図6に示すポーリング時用記録テーブル84を生成する。
【0066】
このうちパス‐アプリケーション関連テーブル82は、各業務アプリケーションが使用するパスを管理するために用いるテーブルであり、図5に示すように、パスID欄82A及びアプリケーションID欄82Bから構成される。
【0067】
そしてパスID欄82Aには、パスのID(識別子)が格納され、同じ行のアプリケーションID欄82Bには、そのパスを使用する業務アプリケーションのIDが格納される。従って、図5の例では、パスIDが「A−1」のパスを「業務アプリA」というアプリケーションIDの業務アプリケーションが使用していることが示されている。
【0068】
またアプリケーション性能値テーブル83は、業務アプリケーションごとの性能の目標値と、その業務アプリケーションの現在の性能値とを管理するためのテーブルであり、図5に示すように、アプリケーションID欄83A、性能単位欄83B、目標値欄83C及び性能値欄83Dから構成される。
【0069】
そしてアプリケーションID欄83Aには、業務アプリケーションのID(例えばアプリケーション名)が格納され、同じ行の性能単位欄83Bには、その業務アプリケーションの性能評価の対象となるメトリック名が格納される。また同じ行の目標値欄83Cには、その業務アプリケーションについてシステム管理者が予め設定した性能の目標値が格納され、同じ行の性能値欄83Dには、業務ソフト性能情報収集エージェント30(図1)により収集されたその業務アプリケーションのそのメトリックの現在のメトリック値(すなわちその業務アプリケーションの現在の性能値)が格納される。
【0070】
従って、図5の例では、「業務アプリA」というアプリケーションIDの業務アプリケーションについてシステム管理者が設定したメトリック(「Response Time」)の目標値は「3」であり、ポーリングにより得られたその業務アプリケーションの現在の性能値は「2.8」であることが示されている。
【0071】
なお、後述のように、本実施の形態による記憶システム1においては、業務アプリケーションの性能目標値が現在の性能値よりも小さいときに、その業務アプリケーションが使用するパスに性能問題が発生していると判断する。従って、図5の例では、「業務アプリA」というアプリケーションIDの業務アプリケーションが使用するパスは、性能問題が発生していると判断されることとなる。
【0072】
ポーリング時用記録テーブル84は、性能管理サーバ6の記憶システム性能管理ソフト54が各性能情報収集エージェント61(図3)からそれぞれ収集したホストサーバ3、SANスイッチ9及びストレージ装置10に関する性能情報に基づいて、各リソースの現在の性能値をパス単位で管理するためのテーブルであり、図8に示すように、パスID欄84A、リソース欄84B、性能単位欄84C及び性能値欄84Dから構成される。
【0073】
そしてパスID欄84Aには、対象とするパスのパスIDが格納され、当該パスID欄84Aと同じ行のリソース欄84Bには、そのパス上に存在するリソースのリソース名が格納される。またこのリソース欄84Bと同じ行の性能単位欄84Cには、そのリソースの性能評価項目として予め定められたメトリックのメトリック名が格納され、さらにこの性能単位欄84Cと同じ行の性能値欄84Dには、そのリソースのそのメトリックについて取得された現在のメトリック値(そのリソースの性能値)が格納される。
【0074】
従って、図6の例では、パスIDが「A−1」のパス上には、リソースとして「表領域A」、「ボリュームA」、「ポートA」、「ポートI」、「キャッシュA」及び「倫理ボリュームA」等が存在し、このときのポーリングにより得られた「表領域A」のメトリックである「ヒット率」のメトリック値が「80[%]」、「ボリュームA」のメトリックである「レスポンスタイム」のメトリック値が「0.15[s]」、「ポートA」のメトリックである「Transfer(データ転送速度)」のメトリック値が「88[MB/s]」、……であったことが示されている。
【0075】
閾値設定部85は、ポーリング時用記録テーブル84(図6)に格納されているパスごとの各リソースの現在の性能値と、図7に示す性能問題発生時用記録テーブル86に格納されている、パスごとの過去の性能問題発生時の各リソースの性能値、又は図8に示す性能問題非発生時用記録テーブル87に格納されている、パスごとの過去の性能問題非発生時の各リソースの性能値とを比較する。そして閾値設定部85は、各リソースの現在の性能値がある一定の条件を満たす場合に、これら各リソースの現在の性能値を、そのパスの性能問題発生時又は性能問題非発生時の各リソースの性能値の閾値として、性能問題発生時用記録テーブル86又は性能問題非発生時用記録テーブル87に格納する。なお、このような閾値設定部85の処理については、図16のフローチャートを用いて後ほど詳細に説明する。
【0076】
性能問題発生時用記録テーブル86は、パスごとの過去の性能問題発生時の各リソースの性能値をそれぞれそのリソースの閾値として保持するためのテーブルであり、図7に示すように、パスID欄86A、リソース欄86B、性能単位欄86C、性能問題発生時用閾値欄86D及び記録ID欄86Eから構成される。そして、パスID欄86A、リソース欄86B、性能単位欄86C及び性能問題発生時用閾値欄86Dには、それぞれ必要時にポーリング時用記録テーブル84(図6)の対応するパスID欄84A、リソース欄84B、性能単位欄84C又は性能値欄84Dに格納された内容がコピーされる。
【0077】
また記録ID欄86Eには、その同じ行の性能問題発生欄86Dに格納された対応するリソースの性能値の記録IDが格納される。同じポーリング時に取得した同じパス上の各リソースの性能値に対しては、同じ記録IDが付与される。従って、図7の例では、記録ID欄86Eに「001」という記録IDが格納された各行の情報が、同じ性能問題発生時のポーリングにより取得したパスIDが「A−1」であるパス上の各リソースの性能値であり、このときの各リソースの性能値が、性能問題が発生するおそれがあると判断するための各リソースの下限閾値の1つとして設定されていることが示されている。
【0078】
性能問題非発生時用記録テーブル87は、過去の性能問題発生時における各リソースの性能値をそれぞれそのリソースの閾値として保持するためのテーブルであり、図8に示すように、パスID欄87A、リソース欄87B、性能単位欄87C、性能問題非発生時用閾値欄87D及び記録ID欄87Eから構成される。そして、パスID欄87A、リソース欄87B、性能単位欄87C及び性能問題非発生時用閾値欄87Dには、それぞれ必要時にポーリング時用記録テーブル84(図6)の対応するパスID欄84A、リソース欄84B、性能単位欄84C又は性能値欄84Dに格納された内容がコピーされる。
【0079】
また記録ID欄87Eには、その同じ行の性能問題発生欄87Dに格納された対応するリソースの性能値の記録IDが格納される。同じポーリング時に取得した同じパス上の各リソースの性能値に対しては、同じ記録IDが付与される。従って、図8の例では、記録ID欄87Eに「001」という記録IDが格納された各行の情報が、同じ性能問題非発生時のポーリングにより取得したパスIDが「A−1」であるパス上の各リソースの性能値であり、このときの各リソースの性能値が、性能問題が発生するおそれがないと判断するための各リソースの上限閾値の1つとして設定されていることが示されている。
【0080】
性能判定部88は、アプリケーション性能値テーブル82及びアプリケーション性能値テーブル83に基づき得られる各業務アプリケーション及びパス間の関連並びに各業務アプリケーションが要求する性能目標値と、ポーリング時用記録テーブル84に基づき得られるパスごとの各リソースの現在の性能値と、性能問題発生時用記録テーブル86及び性能問題非発生時用記録テーブル87に保持された過去の性能問題発生時及び性能問題非発生時の各リソースの性能値とに基づいて、パスごとに、性能問題が発生するおそれがあるか否かを判断する。そして性能判定部88は、性能問題が発生するおそれがあるパスが存在するときには、これに応じた警告をユーザ通知部を介して性能管理クライアント7に通知する。なお、このような性能判定部88の処理については、図19のフローチャートを用いて後ほど詳細に説明する。
【0081】
性能管理クライアント7は、かかる警告を受信すると、例えば図9に示すような警告ウインド90をディスプレイに可視表示する。この警告ウインド90は、主題部94、送り元メールアドレス表示部95及び警告内容表示部96とから構成されるもので、性能が劣化するおそれのある業務アプリケーション名が主題部94に表示され、性能管理サーバ6のールアドレスが送り元アドレス表示部95に表示される。また警告内容表示部96には、性能劣化が発生するおそれのある業務アプリケーション名、その業務アプリケーションに対してシステム管理者が設定した性能の目標値、ポーリングにより取得したその業務アプリケーションの現在の性能値及び当該性能値を取得した時刻(ポーリング時刻)などの情報が表示される。
【0082】
これによりこの記憶システム1では、システム管理者がこの警告ウインド90に基づいて性能問題が発生するおそれのある業務アプリケーションを認識することができ、この業務アプリケーションが使用するパスや、当該業務アプリケーションと同じパスを使用する他の業務アプリケーションのパスを他のパスに切り替えるなどの作業を行うことにより、性能問題が発生するのを未然に防止することができる。
【0083】
なお、図3について上述した性能情報収集エージェント61内のリソース間関連情報記憶テーブル76のテーブル構成及びテーブル構造の一例を図10、図11、図12、図13及び図14にそれぞれ示す。
【0084】
図10(A)及び(B)は、図2のホストサーバAのホスト性能情報収集エージェント32が使用するリソース間関連情報記憶テーブル76で用いる情報の例である。ホストサーバAのホスト性能情報収集エージェント32が使用するリソース間関連情報記憶テーブル76は、ファイル・ボリューム間関連テーブル100(図10(A))と、ボリューム・論理ボリューム・ポート間関連テーブル101(図10(B))とを含む。
【0085】
図11(A)及び(B)は、図2のホストサーバBのホスト性能情報収集エージェント32が使用するリソース間関連情報記憶テーブル76で用いる情報の例である。ホストサーバBのホスト性能情報収集エージェント32が使用するリソース間関連情報記憶テーブル76は、ファイル・ボリューム間関連テーブル102(図11(A))とボリューム・論理ボリューム・ポート間関連テーブル103(図11(B))とを含む。
【0086】
ホストサーバBのデータベース性能情報収集エージェント31が使用するリソース間関連情報記憶テーブル76は、図12(A)のデータベースオブジェクト・表領域間関連テーブル103と、図12(B)の表領域・ファイル間関連テーブル104とを含む。
【0087】
SANスイッチ性能情報収集エージェント50(図1)が使用するリソース間関連情報記憶テーブル76は、図13のポート間パステーブル105の情報を利用する。また、ストレージ性能情報収集エージェント51(図1)が使用するリソース間関連情報記憶テーブル76は、図14の論理ボリューム・パリティグループ間関連テーブル106を含む。図10〜図14の各テーブルの内容は、図2の例に対応する値を格納した状態で示している。
【0088】
ファイル・ボリューム間関連テーブル100,102(図10(A)、図11(A))は、ファイルリソースとボリュームリソースとの間の性能の依存関係を記録するためのものであり、ファイルID格納欄100A,102A(図10(A)、図11(A))とボリュームID格納欄100B,102B(図10(A)、図11(A))から構成される。ァイル・ボリューム間関連テーブル100,102の各行は、ファイルとボリュームの間の依存関係の1つに対応する。ファイルID格納欄100A,102Aには、ファイルのIDが格納され、ボリュームID格納欄100B,102Bには、ファイルID格納欄100A,102Aにおいて指定されたファイルと依存関係をもつボリュームのIDが格納される。例えば、図10(A)ではファイル・ボリューム間関連テーブル100の第1行目の内容としてファイルAとボリュームAの依存関係が、図11(B)ではファイル・ボリューム間関連テーブル102の第1行目の内容としてファイルHとボリュームDの依存関係がそれぞれ示されている。
【0089】
ボリューム・論理ボリューム・ポート間関連テーブル101,103(図10(B)、図11(B))は、ボリュームと論理ボリュームの間の依存関係、さらに、両者と、両者をつなぐパス上のホストバスアダプタ側ポート及びストレージ側ポート間の依存関係を記録するためのものであり、ボリュームID格納欄101A,103A(図10(B)、図11(B))と、論理ボリュームID格納欄101B,103B(図10(B)、図11(B))、ホスト側ポートID格納欄101C,103C(図10(B)、図11(B))、ストレージ側ポートID格納欄101D,103D(図10(B)、図11(B))から構成される。
【0090】
ボリュームID格納欄101A,103Aには、ボリュームのIDが格納され、論理ボリュームID格納欄101B,103Bには、ボリュームID格納欄101A,103Aにおいて指定されたボリュームと依存関係をもつ論理ボリュームのIDが格納される。ホスト側ポートID格納欄101C,103Cには、対応するボリュームと論理ボリュームをつなぐパス上のホストバスアダプタ側ポートのIDが格納され、ストレージ側ポートID格納欄101D,103Dには、同様のストレージ側ポートのIDが格納される。
【0091】
例えば、図10(B)ではボリューム・論理ボリューム・ポート間関連テーブル101の第1行目の内容としてボリュームAと、論理ボリュームA,ポートA及びポートNとの依存関係が、図11(B)ではテーブル103の第1行目の内容としてボリュームDと、論理ボリュームD、ポートB及びポートPとの依存関係が示されている。
【0092】
なお、性能の依存関係を示す情報には、コンピュータからストレージへアクセスするためのパス上のリソースやメトリック情報に関する情報を含んでも良いし、ストレージ装置10に関する情報を含んでも良いし、データベース管理ソフト23(図1)が管理する表の情報やファイルシステムが管理するファイルの情報を含んでも良いし、これらを対応づけた情報を含んでもよいし、その他のものを含む情報であっても良い。
【0093】
また、依存関係を示す情報を記憶装置へ格納する場合に、記憶システム性能管理ソフト54(図1、図3)が保持するパス情報やストレージやコンピュータに関する情報を、クライアントプログラム(ブラウザ)等を用いて画面に表示し、ユーザがクライアントプログラムへ入力したリソース間・メトリック間の依存関係の指示を受信し、当該指示に基づいて依存関係を示す情報を記憶装置へ格納しても良い。また、ユーザが、リソース間関連情報記憶テーブル76へ、予め依存関係を示す情報を格納しておいても良いし、その他の方法でも良い。
【0094】
図12(A)のホストサーバBのデータベースオブジェクト・表領域間関連テーブル104は、データベースオブジェクトID格納欄104Aと表領域ID格納欄104Bから構成される。同じく図12(B)のホストサーバBの表領域・ファイル間関連テーブル105は、表領域ID格納欄105AとファイルID格納欄105Bとから構成される。データベースオブジェクト・表領域間関連テーブル104のデータベースオブジェクトID格納欄104A及び表領域ID格納欄104Bと、ホストサーバBの表領域・ファイル間関連テーブル105の対応する表領域ID格納欄105A及びファイルID格納欄105Bとの内容は同様である。図12の例では、ホストサーバBのデータベースオブジェクト・表領域間関連テーブル104の第1行目に表Dと表領域Dの依存関係が、表領域・ファイル間関連テーブル105の第1行目に表領域DとファイルHの依存関係が示されている。
【0095】
図13のポート間パステーブル106は、ホストバスアダプタ側ポート及びストレージ側ポートと、両者間のパス上にあるSANスイッチ8(図1)のポートの間の依存関係を記録するためのものである。ポート間パステーブル106は、ホスト側ポートID格納欄106A、ストレージ側ポートID格納欄106B及びスイッチポートIDリスト格納欄106Cから構成される。
【0096】
ホスト側ポートID格納欄106Aには、ホストバスアダプタのポートのIDが格納され、ストレージ側ポートID格納欄106Bには、ストレージ装置10のポート28(図1)のIDが格納される。スイッチポートIDリスト格納欄106Cには、欄106Aのポートと欄106Bのポートをつなぐパス上にあるSANスイッチ8のポートのIDの列が格納される。図13の例では、ポート間パステーブル106の第1行目にポートA及びポートNと、その間のポート系列{ポートC、ポートD、ポートH、ポートI}との依存関係が示されている。
【0097】
図14の論理ボリューム・パリティグループ間関連テーブル107は、論理ボリュームリソースとパリティグループリソースとの間の依存関係を記録するためのものである。論理ボリューム・パリティグループ間関連テーブル107は、論理ボリュームID格納欄107AとパリティグループID格納欄107Bとから構成される。論理ボリューム・パリティグループ間関連テーブル107の各行は、ボリュームとパリティグループの間の依存関係の1つに対応する。論理ボリュームID格納欄107Aには、論理ボリュームのIDが格納され、パリティグループID格納欄107Bには、論理ボリュームID格納欄107Aで指定された論理ボリュームと依存関係をもつパリティグループのIDが格納される。図14の例では、論理ボリューム・パリティグループ間関連テーブル107の第1行目に論理ボリュームAとパリティグループAの依存関係が示されている。
【0098】
(2−3)性能監視及び警告機能に関する処理の流れ
図15は、記憶システム1における性能監視及び警告機能に関する一連の処理の流れを示している。性能監視および警告機能を実行させる場合、システム管理者は、性能管理サーバ6を用いて業務アプリケーションごとのレスポンスタイム/スループットの目標値を設定する(SP1)。
【0099】
かかる目標値が設定されると、性能管理サーバ6の記憶システム性能管理ソフト54(図3)の性能情報収集部80(図3)は、ホストサーバ3の業務ソフト性能情報収集エージェント30、データベース性能情報収集エージェント31及びホスト性能情報収集エージェント32や、性能情報収集サーバ4のSANスイッチ性能情報収集エージェント50、並びに性能情報収集サーバ5のストレージ性能情報収集エージェント51から、これら各エージェントがそれぞれ収集した各リソースの性能情報を収集する(SP2)。
【0100】
この後、記憶システム性能管理ソフト54の関連情報生成部81(図3)は、監視情報収集部80が収集した各リソースの性能値に基づいて必要な集約計算を実行する。
【0101】
ここで「集約計算」には、「リソース軸方向の集約計算」と「時間軸方向の集約計算」とがある。このうち「リソース軸方向の集約計算」は、複数のリソースについて計算(合算又は平均等)して、1つの性能情報として取り扱う計算である。例えば図2のポートQ4〜ポートQ7、ポートF及びポートGの単位時間当たりの入出力数の平均値をSANスイッチBの単位時間当たりの入出力数とするなどである。また「時間軸方向の集約計算」は、時・日・月・年などのように、ある時間単位の値を計算(合算又は平均等)の1つの性能情報として扱う計算である。例えば図2のSANスイッチBの1時間ごとのデータを24時間分合算し平均した値を「1日」単位のデータとする。
【0102】
そして関連情報生成部81は、かかる必要な集計計算を行うと、ステップSP2のポーリングにおいて取得した各リソースの性能情報と、このステップSP3における集約計算によって取得した各リソースの性能情報とを、それぞれ対応するパス‐アプリケーション関連テーブル82(図4)、アプリケーション性能値テーブル83(図5)又はポーリング時用記録テーブル84(図6)に格納する(SP3)。
【0103】
続いて、記憶システム性能管理ソフト54の性能判定部88(図3)は、いずれかの業務クライアント2に実装されたいずれかの業務アプリケーションが使用するパスを1つの選択する(SP4)。そして性能判定部88は、このパスについて各リソースの性能を判定し(SP5)、性能問題が発生するおそれがないとの結論(ステップSP5の処理の戻り値が後述の「OK」)を得られたか否かを判定する(SP6)。
【0104】
性能判定部88は、この判定処理(以下、これを性能判定処理と呼ぶ)において、性能問題が発生するおそれがないとの結論を得たときには、閾値設定部85(図3)を起動して、後述の閾値設定処理を実行させる(SP8)。
【0105】
これに対して性能判定部88は、かかる性能判定処理において、既にそのパスに性能問題が発生している(ステップSP5の処理の戻り値が「0」)、若しくはそのパスに性能問題が発生する可能性が非常に高い(ステップSP5の処理の戻り値が「1」)、又はそのパスに性能問題が発生する可能性がある(ステップSP5の処理の戻り値が「2」)という結論を得たときには、その判定結果に応じた警告をユーザ通知部89を介して性能管理クライアント7に通知する(SP7)。また性能判定部88は、この後、閾値設定部85(図3)を起動して、後述の閾値設定処理を実行させる(SP8)。
【0106】
続いて性能判定部88は、各業務クライアント2に実装された業務アプリケーションが使用するすべてのパスについて同様の性能判定処理及び閾値設定処理を行ったか否かを判断し(SP9)、否定結果を得ると、ステップSP4に戻って、この後同様の処理を繰り返す(SP4〜SP9)。そして性能判定部88は、やがてすべてのパスについて同様の性能判定処理及び閾値設定処理を行い終えると、性能監視及び警告機能に関する処理を終了する(SP10)。
【0107】
図16は、かかる性能監視及び警告機能のうちの閾値設定処理(図15に示すフローチャートのステップSP8)に関する性能管理サーバ6の記憶システム性能管理ソフト54の閾値設定部85(図3)の処理内容を示すフローチャートである。
【0108】
閾値設定部85は、図15のフローチャートのステップSP8においてこの図16に示す閾値設定処理を開始すると(SP20)、まず、アプリケーション性能値テーブル83(図5)を参照して、現在対象としているパスに性能問題が発生しているか否かを判断する(SP21)。具体的には、そのパスを使用する業務アプリケーションの現在の性能値が、当該業務アプリケーションについて予め設定された性能目標値よりも小さいか否かを判断することとなる。
【0109】
そして閾値設定部85は、かかる判断において肯定結果を得ると、ポーリング時用記録テーブル84(図6)及び性能問題発生時用記録テーブル86(図7)を参照して、各リソースの現在の性能値が、いずれも性能問題発生時用記録テーブル86に登録されたいずれかの過去の性能問題発生時における対応するリソースの性能値を上回っているか否かを判断する(SP22)。
【0110】
この場合、例えば図17に示すように、各リソースの性能値がそれぞれ破線BL1上の「●」で示すような値を有する性能情報が性能問題発生時用記録テーブル86に登録されているものとして、各リソースの現在の性能値がそれぞれ実線CL1上の「●」で示すような値や、実線CL2上の「■」で示すような値であったときには、このステップSP22の判断において否定結果を得ることとなる。そしてこのことは、現在、すべてのリソースが、性能問題発生時用記録テーブル86に登録されたいずれの過去の性能問題発生時よりも高負荷状態にあることを意味する。かくして、このとき閾値設定部85は、性能問題発生時用記録テーブル86を更新することなく、この閾値設定処理を終了する(SP28)。
【0111】
これに対して、図17において、各リソースの性能値がそれぞれ破線BL2上の「■」で示すような値を有する性能情報が性能問題発生時用記録テーブル86に登録されているものとして、各リソースの現在の性能値がそれぞれ実線CL1上の「■」で示すような値であったときには、このステップSP22の判断において肯定結果を得ることとなる。そして、このことは、現在、少なくとも1つのリソースが性能問題発生時用記録テーブル86に登録されているいずれか過去の性能問題発生時よりも低負荷状態にあるにも係わらず、性能問題が発生したことを意味する。
【0112】
かくして、このとき閾値設定部85は、ポーリング時用記録テーブル84(図6)に登録されている各リソースの現在の性能値を、記録IDを付与して性能問題発生時用記録テーブル86に新たに登録する(SP23)。また閾値設定部85は、この後、性能問題発生時用記録テーブル86に登録されているいくつかの過去の性能問題発生時の性能情報のうち、各リソースの性能値がすべて現在のリソースの性能値よりも高い性能情報を検索し、かかる性能情報が存在した場合には、この記録を消去する(SP24)。そして閾値設定部85は、この後この閾値設定処理を終了する(SP28)。
【0113】
このような処理により、いずれかのリソースが相対的に低負荷状態であるにも係わらず性能問題が発生したときの各リソースの性能値を、後述の性能判定処理時において、性能問題が発生するであろうと判断する際の閾値として設定することが可能となる。
【0114】
これに対して、閾値設定部85は、ステップSP21の判断において否定結果を得ると、ポーリング時用記録テーブル84(図6)及び性能問題非発生時用記録テーブル87(図8)を参照して、各リソースの現在の性能値が、いずれも性能問題非発生時用記録テーブル87に登録されたいずれか過去の性能問題非発生時における対応するリソースの性能値を下回っているか否かを判断する(SP25)。
【0115】
この場合、例えば図18に示すように、各リソースの性能値がそれぞれ破線BL3上の「●」で示すような値を有する性能情報が性能問題非発生時用記録テーブル87に登録されているものとして、各リソースの現在の性能値がそれぞれ実線CL4上の「■」で示すような値であったときには、このステップSP25の判断において肯定結果を得ることとなる。そしてこのことは、現在、かかるパス上のすべてのリソースが、性能問題非発生時用記録テーブル87に登録されたいずれの過去の性能問題発生時よりも低負荷状態にあることを意味する。かくして、このとき閾値設定部85は、性能問題非発生時用記録テーブル87を更新することなく、この閾値設定処理を終了する(SP28)。
【0116】
これに対して、図18において、各リソースの性能値がそれぞれ実線BL1上の「●」で示すような値を有する性能情報が性能問題非発生時用記録テーブル87に登録されているものとして、各リソースの現在の性能値がそれぞれ実線CL3上の「●」で示すような値であったときには、このステップSP25の判断において否定結果を得ることとなる。そして、このことは、現在、少なくとも1つのリソースが性能問題非発生時用記録テーブル87に登録されているいずれか過去の性能問題発生時よりも高負荷状態にあるにも係わらず、性能問題が発生していないことを意味する。
【0117】
かくして、このとき閾値設定部85は、ポーリング時用記録テーブル84(図6)に登録されている各リソースの現在の性能値を、記録IDを付与して性能問題非発生時用記録テーブル87にコピーする(SP26)。また閾値設定部85は、この後、性能問題非発生時用記録テーブル87に登録されているいくつかの過去の性能問題非発生時の性能情報のうち、各リソースの性能値がすべて現在のリソースの性能値よりも低い性能情報を検索し、かかる性能情報が存在した場合には、この記録を消去する(SP27)。そして閾値設定部85は、この後この閾値設定処理を終了する(SP28)。
【0118】
このような処理により、いずれかのリソースが相対的に高負荷状態であるにも係わらず性能問題が発生しないときの各リソースの性能値を、後述の性能判定処理において、性能問題が発生しないであろうと判断する際の閾値として設定することが可能となる。
【0119】
一方、図19は、かかる性能監視及び警告機能のうちの性能判定処理(図15に示すフローチャートのステップSP5)に関する性能管理サーバ6の記憶システム性能管理ソフト54の性能判定部88(図3)の処理内容を示すフローチャートである。
【0120】
性能判定部88は、図15のフローチャートのステップSP5においてこの図19に示す性能判定処理を開始すると(SP30)、まず、アプリケーション性能値テーブル83(図5)を参照して、現在対象としているパスに性能問題が発生しているか否かを判断する(SP31)。具体的には、そのパスを使用する業務アプリケーションの現在の性能値が、当該業務アプリケーションについて予め設定された性能目標値よりも小さいか否かを判断することとなる。
【0121】
そして性能判定部85は、かかる判断において肯定結果を得ると、戻り値を「NG0」に設定した後(SP32)、この性能判定処理を終了する(SP38)。
【0122】
これに対して性能判定部85は、かかる判断において否定結果を得ると、ポーリング時用記録テーブル84(図6)及び性能問題発生時用記録テーブル86(図7)を参照して、各リソースの現在の性能値が、いずれも性能問題発生時用記録テーブル86に登録されたすべての過去の性能問題発生時における対応するリソースの性能値よりも、所定の余裕幅をもって下回っているか否かを判断する(SP33)。この余裕幅は、その過去の性能問題発生時を基準とした場合に、いずれかのリソースの性能値がこれよりも大きいときには、性能問題が発生する可能性が高いと考えられる幅であり、予めシステム管理者により定められた大きさを有する。
【0123】
この場合、例えば図20に示すように、各リソースの性能値がそれぞれ破線BL10上の「●」で示すような値を有する性能情報のみが性能問題発生時用記録テーブル86に登録されており、かかる余裕幅とった後の各リソースの性能値がそれぞれ一点鎖線DL上の「●」で示すような値であるものとして、各リソースの現在の性能値がそれぞれ実線CL11上の「■」で示すような値であったときには、このステップSP33の判断において否定結果を得ることとなる。そしてこのことは、現在、少なくとも1つのリソースが、性能問題発生時用記録テーブル86に登録された過去の性能問題発生時の性能状態と比べてもある一定の余裕をもてるほどの低負荷状態にはないことを意味する。かくして、このとき性能判定部85は、戻り値を「NG1」に設定した後(SP34)、この性能判定処理を終了する(SP38)。
【0124】
これに対して、図20において、各リソースの現在の性能値がそれぞれ破線BL10上の「●」で示すような値であったときには、このステップSP33の判断において肯定結果を得ることとなる。そしてこのことは、現在対象としているパス上のすべてのリソースが、性能問題発生時用記録テーブル86に登録された過去の性能問題発生時の性能状態と比べてある一定の余裕をもてるほどの低負荷状態にあることを意味する。かくして、このとき性能判定部85は、各リソースの現在の性能値が、いずれも性能問題非発生時用記録テーブル87(図8)に登録されているすべての過去の性能問題非発生時おける対応するリソースの性能値を下回っているか否かを判断する(SP35)。
【0125】
この場合、例えば図21に示すように、各リソースの性能値がそれぞれ破線BL1上の「●」で示すような値を有する性能情報が性能問題非発生時用記録テーブル87に登録されているものとして、各リソースの現在の性能値がそれぞれ実線CL12上の「●」で示すような値であったときには、このステップSP35の判断において否定結果を得ることとなる。そしてこのことは、現在、対象としているパス上の少なくとも1つのリソースが性能問題非発生時用記録テーブル87に登録されているいずれかの過去の性能問題発生時よりも高負荷状態にあることを意味する。かくして、このとき性能判定部85は、戻り値を「NG2」に設定した後(SP36)、この性能判定処理を終了する(SP38)。
【0126】
これに対して、図21において、各リソースの現在の性能値がそれぞれ実線CL13上の「■」で示すような値であったときには、このステップSP35の判断において肯定結果を得ることとなる。そしてこのことは、現在対象としているパス上のすべてのリソースが、性能問題非発生時用記録テーブル87に登録されたいずれの過去の性能問題発生時よりも低負荷状態にあることを意味する。かくして、このとき性能判定部85は、戻り値として「OK」を設定した後(SP37)、この性能判定処理を終了する(SP38)。
【0127】
(2−4)観測結果表示機能
ところで、この記憶システム1では、図15について上述したフローチャートのステップSP7の処理によって性能管理サーバ6から上述の警告が性能管理クライアント7に与えられた場合、システム管理者は、性能管理クライアント7を操作することにより、例えば図22に示すような観測結果表示ウインド110を性能管理クライアント7のディスプレイ等の表示部に可視表示させることができる。
【0128】
この観測結果表示ウインド110では、性能問題発生時用記録テーブル86(図7)に登録されている過去の性能問題発生時の各リソースの性能値と、性能問題非発生時用記録テーブル87(図8)に登録されている過去の性能問題非発生時の各リソースの性能値と、対象としているパス上の各リソースの現在の性能値とがそれぞれ折れ線グラフ形式で対比可能な状態に表示される。この図22の例では、縦軸に性能値がとられ、横軸に一定間隔でリソースがそのパス上に存在する順番でとられており、破線BL20が性能問題発生時、破線BL21が性能問題非発生時、実線CL20又は実線CL21が各リソースの現在の性能値の例をそれぞれ示している。
【0129】
そしてこの観測結果表示ウインド110では、かかる各リソースの現在の性能値を示す折れ線グラフ(実線CL20又は実線CL21)のうち、性能問題発生の原因となり得るリソースの部分を囲むようにマーク111が表示される。これによりシステム管理者がボトルネックとなり得るリソースを視覚的に認識することができる。
【0130】
(3)本実施の形態の効果
以上のように、本実施の形態による記憶システムでは、過去の性能問題発生時及び性能問題非発生時における各リソースの性能値と、各リソースの現在の性能値とを用いて性能問題発生の有無を判断する。従って、各リソースの性能値の閾値を、リソース間の性能相互補完的な依存関係を総合的に考慮して設定することができ、その分、信頼性の高い記憶システムを構築できる。
【0131】
(4)他の実施の形態
なお上述の実施の形態においては、性能管理サーバ6において、過去の性能問題発生時及び性能問題非発生時の各リソースの性能値を記憶する記憶部としてメモリ53を適用するようにした場合について述べたが、本発明はこれに限らず、例えばハードディスク等のディスク状記録媒体等の他の記憶デバイスを適用するようにしても良い。
【0132】
また上述の実施の形態においては、性能管理サーバ6において、過去の性能問題発生時及び性能問題非発生時の各リソースの性能値を閾値として記憶しておくようにした場合について述べたが、本発明はこれに限らず、過去の性能問題発生時又は性能問題非発生時の少なくとも一方の各リソースの性能値を閾値として記憶しておき、この過去の性能問題発生時又は性能問題非発生時の各リソースの性能値にのみ基づいて各リソースの性能値の閾値を設定するようにしても良い。
【0133】
さらに上述の実施の形態においては、あるパスを使用する業務アプリケーションの現在の性能値が、当該業務アプリケーションについて予め設定された性能目標値よりも小さいときに、そのパスに性能問題が発生していると判断するようにした場合について述べたが、本発明はこれに限らず、例えば業務アプリケーションの現在の性能値が性能目標値よりも当該性能目標値の数パーセント程度少ない範囲までなら性能問題が発生していないと判断するようにしても良く、性能問題の発生の有無の判断基準としては、この他の判断基準を適用するようにしても良い。
【図面の簡単な説明】
【0134】
【図1】本実施の形態による記憶システムの全体構成を示すブロック図である。
【図2】リソース及びリソース間の性能に関する依存関係の具体例の説明に供する概念図である。
【図3】性能情報収集エージェント及び記憶システム性能管理ソフトの詳細説明に供するブロック図である。
【図4】パス‐アプリケーション関連テーブルの構成例を示す図である。
【図5】アプリケーション性能値テーブルの構成例を示す図である。
【図6】ポーリング時用記録テーブルの構成例を示す図である。
【図7】性能問題発生時用記録テーブルの構成例を示す図である。
【図8】性能問題非発生時用記録テーブルの構成例を示す図である。
【図9】警告ウインドの構成例を示す図である。
【図10】(A)はファイル・ボリューム間関連テーブルの構成例を示す図であり、(B)はボリューム・論理ボリューム・ポート間関連テーブルの構成を示す図である。
【図11】(A)はファイル・ボリューム間関連テーブルの構成例を示す図であり、(B)はボリューム・論理ボリューム・ポート間関連テーブルの構成を示す図である。
【図12】(A)はデータベースオブジェクトファイル・表領域間関連テーブルの構成例を示す図であり、(B)は表領域・ファイル間関連テーブルの構成を示す図である。
【図13】ポート間パステーブルの構成例を示す図である。
【図14】論理ボリューム・パリティグループ間関連テーブルの構成例を示す図である。
【図15】記憶システムにおける性能監視及び警告機能に関する一連の処理の流れを示すフローチャートである。
【図16】閾値設定処理に関する閾値設定部の処理内容を示すフローチャートである。
【図17】閾値設定処理に関する閾値設定部の処理内容の説明に供する概念図である。
【図18】閾値設定処理に関する閾値設定部の処理内容の説明に供する概念図である。
【図19】性能判定処理に関する性能判定部の処理内容を示すフローチャートである。
【図20】性能判定処理に関する性能判定部の処理内容の説明に供する概念図である。
【図21】性能判定処理に関する性能判定部の処理内容の説明に供する概念図である。
【図22】観測結果表示ウインドの構成例を示す図である。
【符号の説明】
【0135】
1……記憶システム、2……業務クライアント、3……ホストサーバ、4,5……性能情報収集サーバ、6……性能管理サーバ、7……性能管理クライアント、9……SANスイッチ、10……ストレージ装置、20,52……CPU、21,53……メモリ、22……業務ソフト、23……データベース管理ソフト、24……OS、25〜28……ポート、30……業務ソフト性能情報収集エージェント、31……データベース性能情報収集エージェント、32……ホスト性能情報収集エージェント、50……SANスイッチ性能情報収集エージェント、51……ストレージ性能情報収集エージェント、54……記憶システム性能管理ソフト、80……性能情報収集部、82……パス‐アプリケーション関連テーブル、83……アプリケーション性能値テーブル、84……ポーリング時用記録テーブル、85……閾値設定部、86……性能問題発生時用記録テーブル、87……性能問題非発生時用記録テーブル、88……性能判定部、89……ユーザ通知部、90……警告ウインド、110……観測結果表示ウインド。

【特許請求の範囲】
【請求項1】
所定のアプリケーションが実装された上位装置と、前記アプリケーションが使用する記憶領域を提供するストレージ装置と、前記上位装置及び前記ストレージ装置間においてデータを通信するホストサーバとを有する記憶システムにおいて、
前記ホストサーバ及び前記ストレージ装置間のデータ経路上に存在する各性能情報収集対象の現在の性能値を収集する性能情報収集部と、
前記アプリケーションについて予め設定された目標性能値と、前記アプリケーションの現在の性能値とに基づいて、性能問題の発生の有無を判定する性能判定部と、
前記性能情報収集部が収集した前記各性能情報収集対象の現在の性能値と、性能判定部の判定結果とに基づいて、前記各性能情報収集対象の性能値の閾値を設定する閾値設定部と
を備えることを特徴とする記憶システム。
【請求項2】
過去の性能問題発生時及び又は性能問題非発生時の前記各性能情報収集対象の性能値を記憶する記憶部を備え、
前記閾値設定部は、
前記性能情報収集部が収集した前記各性能情報収集対象の現在の性能値と、前記記憶部が記憶する過去の性能問題発生時及び又は性能問題非発生時の前記各性能情報収集対象の性能値とに基づいて前記各性能情報収集対象の性能値の閾値を設定する
ことを特徴とする請求項1に記載の記憶システム。
【請求項3】
前記閾値設定部は、
前記性能情報収集部が収集した前記各性能情報収集対象の現在の性能値が所定の条件を満たすときに、前記各性能情報収集対象の現在の性能値を、前記各性能情報収集対象の性能値の閾値に設定する
ことを特徴とする請求項2に記載の記憶システム。
【請求項4】
前記閾値設定部は、
性能判定部により性能問題が発生していると判定された場合において、すべての前記性能情報収集対象の現在の性能値が、前記記憶部が記憶する過去の性能問題発生時の対応する性能情報収集対象の性能値を上回っていないときに、前記各性能情報収集対象の現在の性能値を前記記憶部に記憶させると共に、前記記憶部が記憶する過去の性能問題発生時の前記各性能情報収集対象の性能値に関する記録のうち、前記各性能情報収集対象の性能値がすべて対応する性能情報収集対象の現在の性能値よりも高い記録を前記記憶部から消去する
ことを特徴とする請求項3に記載の記憶システム。
【請求項5】
前記性能判定部は、
前記閾値設定部が設定した前記各性能情報収集対象の性能値の閾値と、前記性能情報収集部が収集した前記各性能情報収集対象の現在の性能値とに基づいて前記データ経路の性能状態を判定し、判定結果に基づいて、必要に応じて当該データ経路の性能状態に関する警告を出力する
ことを特徴とする請求項1に記載の記憶システム。
【請求項6】
前記性能判定部は、
前記性能情報収集部が収集したすべての前記各性能情報収集対象の現在の性能値が、前記閾値設定部が設定した対応する性能情報収集対象の性能値の閾値よりもそれぞれ所定の余裕幅をもって下回らないときに、対応する前記データ経路の性能状態に関する前記警告を出力する
ことを特徴とする請求項5に記載の記憶システム。
【請求項7】
過去の性能問題発生時及び又は性能問題非発生時の前記各性能情報収集対象の性能値を記憶する記憶部と、
前記性能情報収集部が収集した前記アプリケーションの現在の性能値と、前記記憶部が記憶する過去の性能問題発生時及び又は性能問題非発生時の前記各性能情報収集対象の性能値とを対比できるように可視表示する表示部と
を備えることを特徴とする請求項1に記載の記憶システム。
【請求項8】
所定のアプリケーションが実装された上位装置と、前記アプリケーションが使用する記憶領域を提供するストレージ装置と、前記上位装置及び前記ストレージ装置間においてデータを通信するホストサーバとを有する記憶システムを管理する管理装置において、
前記ホストサーバ及び前記ストレージ装置間のデータ経路上に存在する各性能情報収集対象の現在の性能値を収集する性能情報収集部と、
前記アプリケーションについて予め設定された目標性能値と、前記アプリケーションの現在の性能値とに基づいて、性能問題の発生の有無を判定する性能判定部と、
前記性能情報収集部が収集した前記各性能情報収集対象の現在の性能値と、性能判定部の判定結果とに基づいて、前記各性能情報収集対象の性能値の閾値を設定する閾値設定部と
を備えることを特徴とする管理装置。
【請求項9】
過去の性能問題発生時及び又は性能問題非発生時の前記各性能情報収集対象の性能値を記憶する記憶部を備え、
前記閾値設定部は、
前記性能情報収集部が収集した前記各性能情報収集対象の現在の性能値と、前記記憶部が記憶する過去の性能問題発生時及び又は性能問題非発生時の前記各性能情報収集対象の性能値とに基づいて前記各性能情報収集対象の性能値の閾値を設定する
ことを特徴とする請求項8に記載の管理装置。
【請求項10】
前記閾値設定部は、
前記性能情報収集部が収集した前記各性能情報収集対象の現在の性能値が所定の条件を満たすときに、前記各性能情報収集対象の現在の性能値を、前記各性能情報収集対象の性能値の閾値に設定する
ことを特徴とする請求項9に記載の管理装置。
【請求項11】
前記閾値設定部は、
性能判定部により性能問題が発生していると判定された場合において、すべての前記性能情報収集対象の現在の性能値が、前記記憶部が記憶する過去の性能問題発生時の対応する性能情報収集対象の性能値を上回っていないときに、前記各性能情報収集対象の現在の性能値を前記記憶部に記憶させると共に、前記記憶部が記憶する過去の性能問題発生時の前記各性能情報収集対象の性能値に関する記録のうち、前記各性能情報収集対象の性能値がすべて対応する性能情報収集対象の現在の性能値よりも高い記録を前記記憶部から消去する
ことを特徴とする請求項10に記載の管理装置。
【請求項12】
前記性能判定部は、
前記閾値設定部が設定した前記各性能情報収集対象の性能値の閾値と、前記性能情報収集部が収集した前記各性能情報収集対象の現在の性能値とに基づいて前記データ経路の性能状態を判定し、判定結果に基づいて、必要に応じて当該データ経路の性能状態に関する警告を出力する
ことを特徴とする請求項8に記載の管理装置。
【請求項13】
前記性能判定部は、
前記性能情報収集部が収集したすべての前記各性能情報収集対象の現在の性能値が、前記閾値設定部が設定した対応する性能情報収集対象の性能値の閾値よりもそれぞれ所定の余裕幅をもって下回らないときに、対応する前記データ経路の性能状態に関する前記警告を出力
ことを特徴とする請求項12に記載の管理装置。
【請求項14】
所定のアプリケーションが実装された上位装置と、前記アプリケーションが使用する記憶領域を提供するストレージ装置と、前記上位装置及び前記ストレージ装置間においてデータを通信するホストサーバとを有する記憶システムを管理する管理方法において、
前記ホストサーバ及び前記ストレージ装置間のデータ経路上に存在する各性能情報収集対象の現在の性能値を収集する第1のステップと、
前記アプリケーションについて予め設定された目標性能値と、前記アプリケーションの現在の性能値とに基づいて、性能問題の発生の有無を判定する第2のステップと、
前記各性能情報収集対象の現在の性能値と、性能問題発生の有無の判定結果とに基づいて、前記各性能情報収集対象の性能値の閾値を設定する第3のステップと
を備えることを特徴とする管理方法。
【請求項15】
前記第3のステップでは、
前記各性能情報収集対象の性能値を必要に応じて記憶すると共に、前記各性能情報収集対象の現在の性能値と、記憶している過去の性能問題発生時及び又は性能問題非発生時の前記各性能情報収集対象の性能値とに基づいて前記各性能情報収集対象の性能値の閾値を設定する
ことを特徴とする請求項14に記載の管理方法。
【請求項16】
前記第3のステップでは、
前記各性能情報収集対象の現在の性能値が所定の条件を満たすときに、前記各性能情報収集対象の現在の性能値を、前記各性能情報収集対象の性能値の閾値に設定する
ことを特徴とする請求項15に記載の管理方法。
【請求項17】
前記第3のステップでは、
第2のステップにおいて性能問題が発生していると判定した場合において、すべての前記性能情報収集対象の現在の性能値が、記憶している過去の性能問題発生時の対応する性能情報収集対象の性能値を上回っていないときに、前記各性能情報収集対象の現在の性能値を記憶すると共に、記憶している過去の性能問題発生時の前記各性能情報収集対象の性能値に関する記録のうち、前記各性能情報収集対象の性能値がすべて対応する性能情報収集対象の現在の性能値よりも高い記録を消去する
ことを特徴とする請求項16に記載の管理方法。
【請求項18】
設定した前記各性能情報収集対象の性能値の閾値と、前記各性能情報収集対象の現在の性能値とに基づいて前記データ経路の性能状態を判定し、判定結果に基づいて、必要に応じて当該データ経路の性能状態に関する警告を出力する第4のステップを備える
ことを特徴とする請求項14に記載の管理方法。
【請求項19】
前記第4のステップでは、
すべての前記各性能情報収集対象の現在の性能値が、対応する性能情報収集対象の性能値の閾値よりもそれぞれ所定の余裕幅をもって下回らないときに、対応する前記データ経路の性能状態に関する前記警告を出力
ことを特徴とする請求項18に記載の管理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate


【公開番号】特開2007−328396(P2007−328396A)
【公開日】平成19年12月20日(2007.12.20)
【国際特許分類】
【出願番号】特願2006−156982(P2006−156982)
【出願日】平成18年6月6日(2006.6.6)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】