JP4479284B2 - 計算機システムのモニタリングを設定する管理計算機及びシステム - Google Patents

計算機システムのモニタリングを設定する管理計算機及びシステム Download PDF

Info

Publication number
JP4479284B2
JP4479284B2 JP2004063395A JP2004063395A JP4479284B2 JP 4479284 B2 JP4479284 B2 JP 4479284B2 JP 2004063395 A JP2004063395 A JP 2004063395A JP 2004063395 A JP2004063395 A JP 2004063395A JP 4479284 B2 JP4479284 B2 JP 4479284B2
Authority
JP
Japan
Prior art keywords
monitoring
application
computer
computer system
item
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2004063395A
Other languages
English (en)
Other versions
JP2005251048A (ja
Inventor
記史 西川
和彦 茂木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2004063395A priority Critical patent/JP4479284B2/ja
Priority to US10/871,814 priority patent/US7512680B2/en
Publication of JP2005251048A publication Critical patent/JP2005251048A/ja
Application granted granted Critical
Publication of JP4479284B2 publication Critical patent/JP4479284B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3495Performance evaluation by tracing or monitoring for systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3433Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/80Database-specific techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/87Monitoring of transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/885Monitoring specific for caches

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

本発明は、計算機システム並びにそのモニタリング及びチューニング方法に関するものであり、特に計算機システムで実行されるデータベース管理システム及び計算機システムに含まれる記憶装置サブシステムについてのモニタリング及びチューニング方法に関する。
従来、計算機システムの処理性能や可用性を維持あるいは向上するため、管理対象となる計算機システムを他の装置で監視(以下「モニタリング」または「システムモニタリング」)し、その監視結果に応じて他の装置を介して管理者等が計算機システムの設定を変更(以下「チューニング」)することが行われる。計算機システムにおけるシステムモニタリングに関する従来技術の一つとして、特許文献1に示す方法が開示されている。この文献には、モニタリングされる計算機システム全体の負荷(ワークロード)の総量が増加する場合には、モニタリング用の装置が計算機システムにおけるモニタリング間隔を長くしてモニタリングにより発生する負荷を計算機システムに与えないようにし、ワークロード総量が減少する場合にはモニタリング間隔を短くする技術が開示されている。
また、モニタリングとチューニングに関する他の従来技術として、非特許文献1に示す方法がある。この文献には、計算機システムの問題を発見した際、モニタリングをする装置が、現在モニタリングしている情報でその問題に対処できるかどうか判断する。そして、モニタリングしている情報が不十分な場合、モニタリングをする装置が、必要な情報を得るためのモニタリングツールを自動起動し、計算機システムから必要な情報を得る方法が開示されている。
特開2002−108817号公報 DB2 UDB V8技術セミナー資料 SMART拡張機能−2 ヘルス・モニタリングツール http://www−6.ibm.com/jp/software/data/db2univ/data/smartudbv8_6_2.pdf(p.14)。
計算機システムのチューニングを適切に行うためには、チューニングにより計算機システム内の各構成要素(以下「リソース」)に掛かる負荷がどのように変化するかをもモニタリングする必要がある。ここで、適切なチューニングを行うためにモニタリングしなければならない計算機システムのリソースの種類や動作内容は、個々の計算機システムの使用者等がチューニングしたい計算機システムの環境(例えば計算機システムで実行されるアプリケーションの種類等)毎に異なる。
上述の様な環境毎の適切なチューニングを目的とした計算機システムのモニタリングを従来技術で行うことを考える。
特許文献1に示された従来技術の場合、どの環境でどのリソースをモニタリングするかが全く考慮されていない。したがって、特許文献1記載の従来技術で環境毎の適切なチューニングを目的としたモニタリングをしようとすると、結果として全てのリソースのモニタリングを行う必要がある。すると、不要な種類のリソースまでモニタリングを行うため、計算機システムへの負荷や計算機から取得されるデータ量が増大する。
一方、非特許文献1に記載された従来技術の場合、モニタリングの対象となるリソースは予め設定されていて、モニタリングの対象となる計算機システムに問題が発見されないとモニタリングの対象となるリソースが追加されない。したがって、非特許文献1記載の従来技術では環境毎の適切なチューニングを目的としたモニタリングを行うことができない。
本発明の目的は、環境に応じた計算機システムのチューニングを適切に行い、かつ計算機システムへの負荷の低減及びネットワークへの負荷を減らすことが可能なシステムモニタリング方法を提供することである。
上記の課題を解決するために、本発明は一実施形態として以下の構成を有する。すなわち、計算機システムと、計算機システムと接続される第二の計算機を有するシステムである。そして、本システムにおいて、計算機システムは第二の計算機に計算機システムで実行されるプログラムの種類を通知し、第二の計算機は、通知された実行されるプログラムの種類に応じて性能項目を特定し、特定した性能項目に関する情報(以下「性能情報」)の収集を計算機システムに通知する。そして計算機システムは、通知の内容に基づいて特定された性能情報を収集する。
又、上述の構成において、更に計算機システムは、第二の計算機に収集した性能情報を通知し、第二の計算機が、通知された性能情報が所定の条件を満たさない場合には、計算機システムの設定を所定の値に変更する指示を計算機システムに送信し、計算機システムが指示に基づいて自身の設定を変更する構成も考えられる。
更に、上述の構成において、計算機システムが、第二の計算機に計算機システムで終了するプログラムの種類を通知し、第二の計算機が、通知された終了するプログラムの種類に応じて第二の性能項目を特定し、計算機システムに第二の性能項目に関する情報(以下「第二の性能情報」)の収集の停止を指示し、計算機システムが収集の停止の指示に基づいて、第二の性能情報の収集を停止する構成としても良い。
尚、上述の構成において、性能情報の収集の通知には、性能情報を計算機システムで収集する周期に関する情報が含まれていても良い。
更に、計算機システムは、計算機及び記憶装置サブシステムを有していてもよい。又、性能項目の情報は、システムにおいて達成すべき性能に関する情報であっても良い。
本発明によれば、環境に応じた計算機システムのチューニングを行うことが出来る。更に、計算機システムのチューニングを行うためのモニタリングに起因する計算機システムへの負荷を低減すること及びモニタリングに基づくネットワークへの負荷を減らすことが可能になる。
以下、図1〜図19を用いて本発明の実施の形態について説明する。ただし、本発明は以下の実施形態に限定されないのは言うまでもない。
図1は、本発明が実施されるシステムの構成例を示す図である。システムは、管理サーバ1、計算機システム及びネットワーク4を有する。尚、各構成要素は複数あっても良い。
更に計算機システムは、業務サーバ2及び記憶装置サブシステム3を有する。ここでサーバとは一般的な計算機を指す。又、業務サーバ2及び記憶装置サブシステム3は、通信線を介して接続されている。尚、計算機システムは業務サーバのみ、記憶装置サブシステムのみ、あるいはそれぞれが複数含まれていても良い。
管理サーバ1は、CPU11、主記憶12、ネットワークインタフェース13、ディスプレイ14、キーボード15、CD−ROM16、コントローラ17及び記憶装置18を有する。
業務サーバ2は、CPU21、主記憶22、ネットワークインタフェース23、ディスプレイ24、キーボード25、CD−ROM26、コントローラ27、記憶装置28及びデータインタフェース29を有する。
記憶装置サブシステム3は、複数の記憶装置を有する装置である。ここで記憶装置とは、ハードディスクドライブ、CD−ROM、DVD等の記憶媒体を指す。記憶装置サブシステム3は、ポート31、ディスクコントローラ32、制御メモリ33、プロセッサ34、キャッシュメモリ35、ディスク36及びネットワークインタフェース37を有する。ここで、ディスク36はハードディスクドライブ等の記憶装置である。記憶装置サブシステム3は、RAID構成を有していても良い。
管理サーバ1の記憶装置18には、性能管理プログラム101、モニタ制御情報記憶テーブル111、チューニング情報記憶テーブル112、アプリケーション状態記憶テーブル113、モニタエージェント管理テーブル115及びアプリケーション特性テーブル102が格納されている。性能管理プログラム101は、CPU11により主記憶12に読み込まれ、CPU11で実行される。モニタ制御情報記憶テーブル111、チューニング情報記憶テーブル112、アプリケーション状態記憶テーブル113、モニタエージェント管理テーブル115及びアプリケーション特性テーブル102の各テーブルは、性能管理プログラム101の実行時にCPU11により主記憶12に読み込まれる。
業務サーバ2の記憶装置28には、アプリケーション制御プログラム103、アプリケーション104、データベース管理システム105、データベースモニタエージェント105、データベースチューニングエージェント107及びアプリケーションスケジュール114のプログラムやテーブルが記憶されている。アプリケーション制御プログラム103、アプリケーション104、データベース管理システム105、データベースモニタエージェント105及びデータベースチューニングエージェント107はCD−ROM26を経由して記憶装置28に格納され、CPU21により主記憶22に読み込まれて実行される。アプリケーションスケジュール114は、アプリケーション制御プログラム103の実行時にCPU21により主記憶22に読み込まれる。
尚、管理サーバ1の記憶装置18に格納されるプログラムも、CD−ROM18を介して管理サーバ1にインストールされる。ただし、インストールに使用される記憶媒体は、CD−ROMに限らず他の可搬な記憶媒体でも良い。更に、可搬記憶媒体を用いずネットワークを用いてこれらのプログラムを各装置へインストールしても良い。
記憶装置サブシステム3の制御メモリ33には、先読みプログラム108、モニタエージェント109及びチューニングエージェント110の各種プログラムが格納される。
また、業務サーバ2で使用されるデータは記憶装置サブシステム3のディスク36に格納される。業務サーバ2によって読み出されるデータは、ディスクコントローラ32のプロセッサ32により、ディスク36からキャッシュメモリ35を経由してポート31に転送され、業務サーバ2のデータインタフェース29を経由して主記憶22に取り込まれる。業務サーバ2から記憶装置サブシステム3に書き込まれるデータは、上述した読出しとは逆の経路によりディスク36に書き込まれる。
なお、本実施例では、アプリケーション制御プログラム103、アプリケーションスケジュール114、アプリケーション104、DBMS105、DBモニタエージェント106、DBチューニングエージェントが同一の業務サーバ2上に存在するが、実際にはアプリケーション制御プログラム103とアプリケーションスケジュール114が同一サーバ上に、DBMS105とDBモニタエージェント106とDBチューニングエージェントが同一サーバ上にあればよい。
また、他の構成として、業務サーバ2と管理サーバ1にあるプログラム及びテーブルが同一サーバ上にある構成でも構わない。
図2は、アプリケーション特性テーブル102の内容例を示す図である。アプリケーション特性テーブル102には、業務サーバ2で実行されるアプリケーションについての情報が登録される。アプリケーション特性テーブル102は、業務サーバ2で実行されるアプリケーションごとに対応するレコードを有する。個々のレコードは、レコードに対応するアプリケーションの名称を示すアプリケーション名が登録されるフィールド201及びレコードに対応するアプリケーションの特性(以下「アプリケーション特性」)を記憶するフィールド202とを有する。本実施例では、アプリケーションが記憶装置サブシステム3にデータの入出力命令(以下「I/O」)を発行する際のディスクアクセスパターンをアプリケーション特性として用いる(フィールド202)。
但し、アプリケーション特性は、アプリケーションがサーバのCPUやディスク等の物理リソース及び物理リソース上に構築される論理リソース(ディスク上に構築される論理的なディスク領域等)をどのように利用するかのパターンを示す情報であればよい。サーバのCPUをアプリケーション特性の対象として用いる場合は、CPU利用率をアプリケーション特性として用いることができる。
図3は、モニタ制御情報記憶テーブル111の構成例を示す図である。モニタ制御情報記憶テーブル111には、チューニングの対象となるリソースの設定項目(以下「チューニング項目」)と、当該チューニング項目を制御する場合に計算機システムの何の性能をモニタリングするか(以下「モニタリング項目」)、及びどんな間隔でモニタリングするか(あるいはモニタリングしないか)(以下、「モニタリング間隔」)の対応関係を示す情報が登録される。モニタ制御情報記憶テーブル111は、チューニング項目毎に対応するレコードを有する。
各レコードは、チューニング項目を示す情報が登録されるフィールド301、及びレコードに対応するチューニング項目に対して、どのモニタリング項目をどんな頻度でモニタリングするか(あるいはしないか)を示すフィールド302を有する。本実施例では、DBMSキャッシュサイズのチューニングとストレージ先読み量のチューニングを行う場合に、モニタリング項目として、DBMSのI/O要求がDBMSのキャッシュにヒットした割合を示すDBMSキャッシュヒット率、及び記憶装置サブシステム内のプロセッサの利用率であるストレージプロセッサ利用率をどのような間隔でモニタリングするか(あるいはしないか)をそれぞれフィールド302a及び302bに記憶している。なお、これらのモニタリング項目は、DBモニタエージェント105及びモニタエージェント109によりそれぞれ監視される。尚、使用するアプリケーションの特性やチューニングの手法によって、モニタリング項目も本実施形態で開示されない物になる場合がある。例えば、データのディスクへの配置場所のチューニングの場合には、データが格納される記憶領域毎のI/O数がモニタリング項目となる。尚、他の実施形態として、モニタ制御情報記憶テーブル111の項目に、システムでモニタされる可能性がある項目を全て列挙し、個々のアプリケーション特性毎(あるいはチューニング項目毎)に、必要なモニタリング項目の欄にのみ任意のモニタリング間隔を登録し、不要なモニタリング項目の欄には0を設定することにしても良い。
図4は、チューニング情報記憶テーブル112の構成例を示す図である。該テーブル112には、アプリケーション特性と、その特性に応じたチューニング項目、当該チューニング項目をチューニングする際に使用する値を決定するためのルールが記憶される。チューニング情報記憶テーブル112は、アプリケーション特性毎に対応するレコードを有する。各レコードは、対応するアプリケーション特性を登録するフィールド701、アプリケーション特性に対応するチューニング項目を登録するフィールド702及び対応するルールを登録するフィールド703を有する。
図5は、アプリケーション状態記憶テーブル113の構成例を示す図である。アプリケーション状態記憶テーブル113は、現在システムで稼動しているアプリケーション名と、それに対応したモニタリング項目及びモニタリング間隔の情報を記憶するテーブルである。アプリケーション状態記憶テーブル113は、システムで稼動しているアプリケーション毎に対応するレコードを有する。
各レコードは、現在稼動しているアプリケーション名を記憶するフィールド801及び対応するアプリケーションのモニタリング項目のモニタリング間隔を示すフィールド802を有する。アプリケーション状態記憶テーブル113の各レコード804は、管理サーバ1が業務サーバ2からアプリケーション起動の通知を受けると追加され、終了の通知をうけると削除される。
図6は、アプリケーションスケジュールテーブル114の構成例である。アプリケーションスケジュールテーブル114は、業務サーバ2で実行されるアプリケーションのスケジュール(実行開始時間等)の情報を管理するためのテーブルである。アプリケーションスケジュールテーブル114は、アプリケーション名を記憶するフィールド901及び該アプリケーションが起動する時刻を示すフィールド902から構成される。ただし、アプリケーションが終了する時刻等の情報も登録されて良い。
図7は、モニタエージェント管理テーブル115の構成例である。モニタエージェント管理テーブル114は、管理サーバ2が監視対象とするモニタリング項目が、どの装置のどのモニタエージェントによって監視されているかを記憶しているテーブルである。モニタエージェント管理テーブル115は、モニタ項目名を記憶するフィールド1001、該モニタ項目を監視するモニタエージェント名を記憶するフィールド1002、及び該モニタエージェントが存在する装置名を記憶する装置名フィールド1003を有する。尚、各々のテーブルの情報は、性能管理プログラム101を開始する前に、管理者がネットワーク等を介して各装置に登録する。
本システムでは、管理サーバ1が業務サーバ2からアプリケーションの実行を通知されると、そのアプリケーションの特性に応じたモニタリング項目及びモニタリング間隔を選択して個々の装置(業務サーバや記憶装置サブシステム3)にモニタリングの開始を指示する。そして、モニタリングの結果を各装置から受信した管理サーバ1は、その結果に基づいて、チューニングを行う必要があるかどうか判断し、チューニングを行う。更に、アプリケーションの終了を通知された管理サーバ1は、必要に応じて、モニタリングの終了を各装置に通知する。
以下、図8を用いて、システムにおけるモニタリングの全体の流れを説明する。尚、以下プログラムが主語になる場合は、実際にはそのプログラムを実行するCPUによって処理が実行される。
まず、タイマにより業務サーバ2のアプリケーション制御プログラム103が起動される(ステップ401)。アプリケーション制御プログラム103は、アプリケーションスケジュールテーブル114を参照し、起動するアプリケーションの有無をチェックする。起動するアプリケーションがある場合、アプリケーション制御プログラム103は、管理サーバ1の性能管理プログラム101に、アプリケーション名とアプリケーションの起動をネットワーク4を介して通知する。尚、業務サーバ2は、アプリケーションスケジュールテーブル114の情報以外に、業務サーバ2を使用する管理者等によってアプリケーションの起動の要求が生成された時に本ステップの処理を行っても良い(ステップ404)。
アプリケーション名を受取った性能管理プログラム101は、チューニング情報記憶テーブル112アプリケーション特性テーブル102を参照して受信したアプリケーション名に対応するチューニング項目とアプリケーション特性を取得する(ステップ502)。さらに性能管理プログラム101は、モニタ制御情報記憶テーブル111を参照して、取得したアプリケーション特性に対応するモニタリング項目ごとのモニタリング間隔を決定する。そして、性能管理プログラム101は、決定したモニタリング項目及びモニタリング間隔の情報を、管理サーバ2及び記憶装置サブシステム3のモニタエージェント106、109に通知する(ステップ504)。
通知を受けたモニタエージェント106、109は、指定されたモニタリング項目について、指定されたモニタリング間隔でモニタリングを開始する。この際、モニタエージェント106、109は、モニタリングの開始を、ネットワーク4を介して管理サーバ1の性能管理プログラムに通知する(ステップ1001)。
モニタリングの開始の通知を受信した性能管理プログラム101は、モニタリングが開始されたことを業務サーバ2のアプリケーション制御プログラム103にネットワーク4を介して通知する。通知を受取ったアプリケーション制御プログラム103は、アプリケーションを起動する(ステップ508、ステップ405、ステップ1003)。
アプリケーションが稼動している間、モニタエージェント106、109は指示されたモニタリング間隔で個々の装置の性能データを取得し、取得した性能データ(以下「モニタデータ」とも言う)を管理サーバ1の性能管理プログラム101にネットワーク4を介して通知する(ステップ1002)。モニタデータを受信した性能管理プログラム101は(ステップ505)、チューニングの実施が必要であると判断すればチューニングを実行する(ステップ507)。
アプリケーションが終了すると(ステップ1004)、アプリケーション制御プログラム103はアプリケーション終了を検知し(ステップ406)、終了したアプリケーション名を管理サーバ1の性能管理プログラム101にネットワーク4を介して通知し(ステップ407)、その結果を受け取る(ステップ409)。
アプリケーション名を受取った性能管理プログラム101は、アプリケーション開始時と同様にテーブル102、111、113を参照してモニタエージェントの制御方法を決定し、モニタエージェント106及び/又は109に通知する(ステップ504)。通知を受けたモニタエージェントは、通知に従いモニタリング項目及びモニタリング間隔を変更(あるいは終了)する。
以下、各装置における処理手順の詳細について説明する。
図9は、業務サーバ2が、アプリケーション104の実行を開始する際に、アプリケーション制御プログラム103を実行することによって実施する処理の手順例を示す図である。尚、図8と同じ番号は、それらの処理ステップが一致することを示す。
業務サーバ2は、まずアプリケーションスケジュールテーブル114のフィールド114を参照して起動すべきアプリケーションがあるかどうかを判断する(ステップ402)。起動すべきアプリケーションがある場合、業務サーバ2は起動するアプリケーション名をフィールド901から取得し、取得したアプリケーション名とそのアプリケーション104を起動することをネットワークI/F23を介して管理サーバ1に送信する(ステップ404)。その後、モニタリングの開始又はモニタリング内容の変更の処理の完了の通知をプログラム101から受け取った後(ステップ408)、業務サーバ2はアプリケーションの実行を開始する(ステップ405)。一方、起動すべきアプリケーションが存在しない場合、業務サーバ2は、ステップ401及び402の処理を繰り返す。なお、本実施例では、モニタリングが開始(又は内容の変更)された通知を受けてから業務サーバ2がアプリケーションを起動しているが、モニタリングの開始(又は内容の変更)の通知を待たずに業務サーバ2がアプリケーションを起動する構成でもよい。
その後業務サーバ2は、アプリケーション104の終了を監視する(ステップ406)。アプリケーション104の終了を検知すると、業務サーバ2は、終了するアプリケーションの名称とアプリケーションが終了することを管理サーバ1の性能管理プログラム101に送信し(ステップ407)、プログラム101からモニタリングの内容が変更された通知を受けた後(ステップ409)、ステップ401の処理に戻る。なお、本実施例では、業務サーバ2がモニタリングの内容が変更された通知を受けているが、通知を受けない構成でもよい。
図10は、管理サーバ1が性能管理プログラム101を実行することで計算機システムのモニタリングを実施する際の処理手順の例を示す図である。ここでも、図8と一致するステップは、その内容が一致することを示している。
まず、管理サーバ1は、業務サーバ2からアプリケーション開始又は終了の通知があったか否かをチェックする(ステップ501)。次に、管理サーバ1はアプリケーション特性テーブル102を参照し、受け取ったアプリケーション名に対応するアプリケーション特性を取得する。尚、業務サーバ2で実行中のアプリケーション104に関するアプリケーション特性に関する情報は、次のアプリケーションの実行又はアプリケーションの終了が業務サーバ2から通知されるまで管理サーバ1内で保持される(ステップ502)。
その後、管理サーバ1は、チューニング情報記憶テーブル112を参照して、取得したアプリケーション特性に対応するチューニング項目及びチューニングルールを取得する。又、モニタ制御情報記憶テーブル111を参照して取得したアプリケーション特性に対応するモニタリング項目及びモニタリング間隔の情報を取得する(ステップ503)。その後、管理サーバ1は、モニタエージェント制御処理504を実行し、モニタリング項目とモニタリング間隔の情報をモニタリングの対象となる業務サーバ2及び記憶装置サブシステム3の双方あるいはいずれか一方に転送する。モニタエージェント制御処理504の動作は後で説明する(ステップ504)。
その後、管理サーバ1は、業務サーバ2及び記憶装置サブシステム3の双方又はいずれか一方から、指定したモニタリング項目の対象となるリソースの動作や稼動に関する情報であるモニタデータを受け取る(ステップ505)。モニタデータを受取った管理サーバ1は、業務サーバ2で実行されているアプリケーション104(先に保持したアプリケーション特性の情報から判断される)に対応するチューニング情報記憶テーブル112のフィールド703に登録された条件に受信したモニタデータが合致するかどうか判断することで、システムのチューニングが必要か否かを判断する(ステップ506)。
条件に合致する場合、すなわちチューニングが必要と判断された場合は、管理サーバ1は、保持しているアプリケーション特性の情報に対応するチューニング情報記憶テーブル112のフィールド702に記憶された情報で指定されるチューニング項目をフィールド703の内容に合致させるためのチューニングを実施するよう、モニタデータを送信した業務サーバ2及び記憶装置サブシステム3のいずれか一方又は双方に指示を出す(ステップ507)。
一方、モニタリング項目及びモニタリング間隔の情報を受取った業務サーバ2及び記憶装置サブシステム3の双方又はいずれか一方は、受信したモニタエージェント名で指示されたモニタエージェントに対して、モニタリング項目として指定されたリソースの稼動等の情報の収集の開始を指示する。当該モニタエージェントは、モニタリング項目として指定されたリソースの稼動等の情報の収集を開始してモニタデータを作成する。この際、受信したモニタリング項目に対して指示されたモニタリング間隔が0であった場合には、業務サーバ2及び記憶装置サブシステム3は、当該モニタリング項目の情報収集を終了し、モニタリング項目の変更が完了したことを管理サーバ1に通知する。情報収集後、業務サーバ2及び記憶装置サブシステム3の双方又はいずれか一方は、管理サーバ1に収集したモニタデータを送信する。尚、業務サーバ2及び記憶装置サブシステム3は、管理サーバ1から指示されたモニタリング項目毎のモニタリング間隔に従いモニタリングを実施し、この間隔に従って取得したデータを管理サーバ1に転送する。
更に、チューニングの指示を受けた業務サーバ2及び記憶装置サブシステム3の双方又はいずれか一方は、DBチューニングエージェント107、110を実行して、それぞれ指示内容に従ったチューニングを実施する。
次に、図11を用いて、モニタエージェント制御実施処理504の手順例を説明する。管理サーバ1は、まず業務サーバ2から受取った要求がアプリケーション起動の通知であるか否かをチェックする(ステップ604)。アプリケーション起動要求の場合、管理サーバ1は、ステップ502及び503で取得されたアプリケーション名、モニタリング項目及びモニタリング間隔をアプリケーション状態記憶テーブル113に追加する。
アプリケーション起動の通知でない場合(すなわちアプリケーションの終了の通知)は、管理サーバ1は、業務サーバ2から通知されたアプリケーション名をフィールド801に持つレコード804をアプリケーション状態記憶テーブル113から削除する。次に管理サーバ1は、アプリケーション状態記憶テーブル113に設定されているモニタリング項目のそれぞれについて、以下の処理を行う。
まず管理サーバ1は、アプリケーション状態記憶テーブル113を参照して、1つのモニタリング項目に登録された各アプリケーションにおけるモニタリング間隔のうち、最小モニタリング間隔(正の整数値。ただし、0しかない場合又は0以下の数値が入っている場合は0)を求める(ステップ607)。次に管理サーバ1は、モニタエージェント管理テーブル115のモニタ項目名フィールド1001を参照し、モニタリング項目名に一致するレコード1004を選択、該レコード1004のモニタエージェント名フィールド1002及び装置名フィールド1003を参照して、モニタリング項目をモニタリングするモニタエージェント名及び装置名を取得する(ステップ609)。そして、ステップ607で求めた値が0より大きい場合は、管理サーバ1は、当該モニタリング項目の名称、当該項目を監視するモニタエージェントの名称、及び最小モニタリング間隔をステップ609で取得された装置名で指定される業務サーバ2及び/または記憶装置サブシステム3に通知する。一方、0の場合は当該モニタリング項目に関するモニタリングの中止を業務サーバ2及び/または記憶装置サブシステム3に通知する(ステップ608)。
管理サーバ1は、アプリケーション状態記憶テーブル113に設定されているモニタリング項目全てについてステップ607、608の処理を繰り返す。
尚、モニタ制御情報記憶テーブル111、チューニング情報記憶テーブル112及びアプリケーション特性テーブル102への値の設定は、システム管理者が管理サーバ1のキーボードより入力することにより行う。
以下、アプリケーション特性テーブル102に図2に示すレコード203が、モニタ制御情報記憶テーブル111に図3に示すレコード305が、チューニング情報記憶テーブル112に図4に示すレコード704が、アプリケーションスケジュール114に図6に示すレコード903が、モニタエージェント管理テーブル115に図7に示すレコード1004がそれぞれ記憶されている場合の、システムにおけるモニタリング及びチューニングの例について説明する。なお、当初は、アプリケーション状態記憶テーブル113にはレコード804は存在しないとする。
まず、アプリケーションスケジュールテーブル114のレコード903aに示されるアプリケーション1(以下「AP1」)が起動された場合のシステムにおけるモニタリングの例について説明する。
業務サーバ2は、タイマに従い定期的に起動すべきアプリケーションがあるか否かをチェックする(図9のステップ402)。業務サーバ2は、図6のアプリケーションスケジュールテーブル114の各レコード903の起動時刻フィールド902の値とチェック時点の時刻とを比較することにより起動すべきアプリケーションのチェックを行う。
チェック時点の時刻が10:00であるとすると、レコード903aのフィールド902の値と一致するので、業務サーバ2は、レコード903aのアプリケーション名フィールド901に記憶されたAP1を起動することが判断できる。次に、業務サーバ2は、レコード903aのフィールド901の値であるAP1(アプリケーション名)を、管理サーバ1に転送する。業務サーバ2は同時に、このアプリケーション名を持つアプリケーションが起動されることも管理サーバ1に通知する。
アプリケーション名AP1のアプリケーションが起動するという情報を受取った管理サーバ1は、アプリケーション特性テーブル102を参照してアプリケーション名がAP1であるレコード203aを選択し、アプリケーション特性としてディスクアクセスパターンがランダムアクセスであることを取得する。
次に、管理サーバ1は、チューニング情報記憶テーブル112を参照し、ディスクアクセスパターンがランダムアクセスであるレコード704aを選択し、選択したレコード704aから、チューニング項目としてDBMSキャッシュサイズ及びそのチューニングルール(ヒット率が85%以下ならDBMSキャッシュサイズを増やす)の情報を取得する。
さらに、管理サーバ1はモニタ制御情報記憶テーブル111を参照し、チューニング項目がDBMSキャッシュサイズであるレコード305aを選択し、選択したレコード305aのモニタリング項目(DBMSキャッシュヒット率及びストレージプロセッサ利用率)及びモニタリング間隔の情報を取得する。この例では、DBMSキャッシュヒット率のモニタリング間隔は1分毎、ストレージプロセッサの利用率のモニタリング間隔は0である。尚、上述したように、モニタリング間隔が0である場合は、モニタリングが行われないことを示している。
次に、管理サーバ1は、業務サーバ2から受取った要求がアプリケーション開始か終了かを判断する。この場合はAP1の開始要求であるため、管理サーバ1は、図5のアプリケーション状態記憶テーブル113に、アプリケーション名がAP1、DBMSキャッシュヒット率のモニタリング間隔が1分、ストレージプロセッサのモニタリング間隔が0であるレコード804aを追加する。その後、管理サーバ1はまずDBMSキャッシュヒット率について、最小モニタリング間隔の値を求める。この場合レコード804aの1分毎という値が最小モニタリング間隔の値になる。次に管理サーバ1は、図7のモニタエージェント管理テーブル115を参照し、モニタリング項目名がDBMSキャッシュヒット率であるレコード1004aを取得し、該レコード1004aのフィールド1002及び1003を参照してモニタエージェント名(DBモニタエージェント)及び装置名(業務サーバ2)を取得する。管理サーバ1は、DBMSキャッシュヒット率のモニタリングを最小モニタリング間隔の値(ここでは1分間隔)、モニタリング項目名(DBMSキャッシュヒット率)、及び当該モニタ項目の監視を実行するモニタエージェント名(DBモニタエージェント)を、業務サーバ2に通知する。
次いで管理サーバ1は、ストレージプロセッサ使用率の最小モニタリング間隔の値を求める。本例においては、この時点ではアプリケーション状態記憶テーブル113にはレコード804aしか登録されておらず、かつレコード804aのストレージプロセッサ利用率のモニタリング間隔が0であるので、最小モニタリング間隔は0となる。次に管理サーバ1は、図7のモニタエージェント管理テーブル115を参照し、モニタリング項目名がストレージプロセッサ利用率であるレコード1004bを取得し、該レコード1004bのフィールド1002及び1003を参照してモニタエージェント名(モニタエージェント)及び装置名(記憶装置サブシステム)を取得する。モニタリング間隔が0であることはモニタリングを行わないことを示すため、管理サーバ1は、モニタリング項目名(ストレージプロセッサ利用率)、及び当該モニタ項目の監視を実行するモニタエージェント名(モニタエージェント)、及びストレージプロセッサ利用率のモニタリングを停止することを記憶装置サブシステム3に通知する。
DBモニタエージェントが監視するDBMSキャッシュヒット率を1分間隔でモニタリングする通知を管理サーバ1より受けた業務サーバ2は、DBモニタエージェントを実行して、1分間隔でDBMS105のキャッシュヒット率をモニタリングし、得られたモニタデータを管理サーバ1に送付する。
次に、上述したシステムの状態でシステムがDBMSキャッシュサイズのチューニングを実施する例について示す。
DBMSキャッシュヒット率の情報を収集した業務サーバ2は、その情報、すなわちモニタデータを、管理サーバ1に送信する。DBキャッシュヒット率に関するモニタデータを受取った管理サーバ1は、チューニング情報記憶テーブル112を検索し、フィールド703に登録されたルールにDBMSキャッシュヒット率が含まれているレコード704を検索する。本例では、レコード704aのフィールド703に登録されたルールでDBMSキャッシュヒット率が使用されているので、このレコード704aが選択される。
管理サーバ1は、レコード704aのフィールド703に設定された条件(ここでは「DBMSキャッシュヒット率が85%以下である」又は「DBMSキャッシュヒット率が95%以上である」)を、受け取ったモニタデータに含まれるDBキャッシュヒット率が満たすか否かを判定する。もし、受信したモニタデータに含まれるDBMSキャッシュヒット率が85%を下回った場合、管理サーバ1は、レコード704aのルール703に従い、レコード704aのフィールド702に記述されたチューニング項目、ここではDBMSキャッシュサイズの変更を業務サーバ2に要求する。
ここでは、レコード704aのルール703にあるように、DBMSキャッシュサイズを5%増やす。DBMSキャッシュサイズを5%増やした後、管理サーバ1は、図10の性能管理プログラム101のステップ505でDBMSキャッシュサイズ変更後のモニタデータを受取り、まだDBMSキャッシュヒット率が85%を下回っているようであれば、再度DBMSキャッシュサイズを5%増やす処理を行う。このように、DBMSキャッシュサイズが85%を超えるまで、管理サーバ1は、キャッシュサイズを増加させる。
要求を受け取った業務サーバ2は、データベースチューニングエージェント107を実行することで、データベース管理システム105のキャッシュサイズの変更を実施する。
次に、AP1が起動している状態で、アプリケーション2(以下「AP2」とも言う)が起動した場合のシステムにおけるモニタリングの例について述べる。この時点で、図5のアプリケーション状態記憶テーブル113にはレコード804aのみが記憶されているとする。
業務サーバ2は、アプリケーションスケジュールテーブル114を参照した時刻が10:30であると、アプリケーションスケジュールテーブル114から、起動時刻が10:30であるレコード903bを選択する。次に、業務サーバ2は、選択されたレコード903bのフィールド901からアプリケーション名AP2を取得し、管理サーバ1にアプリケーション2が起動することを通知する。
通知を受けた管理サーバ1は、AP1の時と同様の処理を行い、アプリケーション状態記憶テーブル113に、アプリケーション名がAP2、DBMSキャッシュヒット率のモニタリング間隔が10分、ストレージプロセッサ使用率のモニタリング間隔が1秒であるレコード804bを追加する。
その後、管理サーバ1は、アプリケーション状態記憶テーブル113を参照して、まずDBMSキャッシュヒット率の最小モニタリング間隔を求め、さらにDBMSキャッシュヒット率のモニタリングを行うモニタエージェント名と該モニタエージェントが存在する装置名を、モニタエージェント管理テーブル115から取得する。本実施例の場合、AP1のモニタリング間隔とAP2のモニタリング間隔を比較すると最小モニタリング間隔は1分であり、またモニタエージェント名はDBモニタエージェント、装置名は業務サーバであるので、管理サーバ1は、DBモニタエージェントが監視するDBMSキャッシュヒット率を1分という最小モニタリング間隔で監視することを業務サーバ2に伝える。
次に管理サーバ1は、アプリケーション状態記憶テーブル113を参照して、ストレージプロセッサ利用率の最小モニタリング間隔と該ストレージプロセッサ利用率を監視するモニタエージェント名及び該モニタエージェントが存在する装置名を求める。この場合、レコード1004bよりモニタエージェント名はモニタエージェント、装置名は記憶装置サブシステムであることが求まり、また最小モニタリング間隔はレコード804bの1秒となる。したがって、管理サーバ1は、記憶装置サブシステム3に対してモニタエージェント109が監視するストレージプロセッサ利用率を1秒間隔でモニタリングするよう通知する。
通知を受取った記憶装置サブシステム3は、モニタエージェント109を用いてプロセッサ34の利用率のモニタリングを行い、得られた性能データを管理サーバ1に送付する。
次に、AP1とAP2が起動している状態から、AP2が終了する場合のモニタリングの例について述べる。
業務サーバ2は、AP2の終了を検知すると、終了したアプリケーションの名称(ここではAP2)と、当該アプリケーションが終了したことを管理サーバ1に通知する。
アプリケーション終了の通知を受取った管理サーバ1は、通知されたアプリケーション名に基づいて、アプリケーション特性テーブル102からレコード203bを、チューニング情報記憶テーブル112からレコード704bを、モニタ制御情報記憶テーブル111からレコード305bを、それぞれ取得する。その後、管理サーバ1は、アプリケーション状態記憶テーブル113からフィールド801の値がAP2であるレコード804bを検索し、検索したレコード804bをアプリケーション状態記憶テーブル113から削除する。
その後管理サーバ1は、DBMSキャッシュヒット率の最小モニタリング間隔をアプリケーション状態記憶テーブル113から求める。本例の場合、既にレコード804bが削除され、レコード804aしかアプリケーション状態記憶テーブル113には存在しない。したがって、最小モニタリング間隔は、このレコード804aのDBMSキャッシュヒット率モニタリング間隔(フィールド802aの値)の1分となる。次に、管理サーバ1は、DBMSキャッシュヒット率を監視するモニタエージェントの名称(DBモニタエージェント)と当該モニタエージェントが存在する装置の名称(業務サーバ)を求め、モニタエージェント名とモニタリング項目名、及び先に求めた最小モニタリング間隔値を業務サーバ2に通知する。次に管理サーバ1は、ストレージプロセッサ使用率の最小モニタリング間隔を求める。この場合、レコード804aのフィールド802bの値の0が採用される。
その後、管理サーバ1は、同様にモニタエージェント名(モニタエージェント)と装置名(記憶装置サブシステム)を求め、記憶装置サブシステム3に対して、「モニタエージェント」という名称のモニタエージェントが監視するストレージプロセッサ利用率のモニタリングを停止するよう通知する。
以上示したように、サーバで実行されるアプリケーションのアプリケーション特性に応じてモニタリング項目を変更することで、必要な項目のみのモニタリングを行うことが可能であることが示された。
次に、第二の実施形態の例について説明する。
図12は、第二の実施形態が実施されるシステムの構成例を示す図である。業務サーバ2に新たにAP目標に関する情報を記憶するAP目標値テーブル116及び業務サーバ2の性能データを取得するOSモニタエージェント117が追加されている点が第一の実施形態とは異なる。又、モニタ制御情報テーブル111’の内容も第一の実施形態とは異なる。なお、第一の実施形態におけるシステムと第二の実施形態におけるシステムの双方を含むシステムも本発明に含まれる。本実施形態では、管理者等がシステムで実行されるアプリケーションに要求する性能に合致しない場合にシステムが管理者等へ報告する。したがって、本実施形態では、アプリケーションの特性に関連するチューニング項目が、管理者が指定する任意の性能目標の項目に置き換わる。
図13は、第二の実施形態で使用されるモニタ制御情報記憶テーブル111’の構成例を示す図である。モニタ制御情報テーブル111’には、システムにおける個々の性能目標と、当該性能目標の達成を監視するために監視しなければならないモニタリング項目、及びモニタリング間隔の対応関係を示す情報が登録される。モニタ制御情報記憶テーブル111’は、個々の性能目標(以下「性能目標項目」)毎に対応するレコードを有する。
各レコードは、性能目標項目が登録されるフィールド1301、及び対応する性能目標項目において、どのモニタリング項目をどんな頻度でモニタリングするか(あるいはしないか)を示すフィールド1302を有する。本実施例では、トランザクション時間と平均I/O時間を性能目標項目とする場合に、モニタリング項目としてトランザクションの開始から終了までの時間を示すトランザクションレスポンス及び記憶装置サブシステム3に対するI/Oレスポンスの平均値を示す平均I/O時間をどのような間隔でモニタリングするか(あるいはしないか)をそれぞれフィールド1302a及び1302bに記憶している。尚、使用するアプリケーションによって、モニタリング項目も本実施形態で開示されない物になる場合がある。
図14は、業務サーバ2で実行されるアプリケーションが達成しなければならない目標性能(以下「AP目標」)を記憶するAP目標値テーブル116の構成例を示す図である。該テーブル116には、アプリケーション名と、当該アプリケーションが達成しなければならない性能目標項目及びその値が記憶される。該テーブル116は、アプリケーション毎にレコードを有する。各レコードは、アプリケーション名を示すフィールド1401、アプリケーションに対応する性能目標項目を示すフィールド1402及び性能目標値を示すフィールド1403を有する。なお、これらのフィールドへの値の設定は管理者が行う。
図15は、本実施例におけるアプリケーション状態記憶テーブル113の構成例を示す図である。該テーブルの各レコードは、現在稼動しているアプリケーション名を記憶するフィールド801及び対応するアプリケーションのモニタリング項目のモニタリング間隔を示すフィールド802を有する。アプリケーション状態記憶テーブル113の各レコード804は、管理サーバ1が業務サーバ2からアプリケーション起動の通知を受けると追加され、終了の通知をうけると削除される。
図16は、本実施形態におけるモニタエージェント管理テーブル115の構成例である。モニタエージェント管理テーブル115の各レコードは、モニタ項目名を記憶するフィールド1001、該モニタ項目を監視するモニタエージェント名を記憶するフィールド1002、及び該モニタエージェントが存在する装置名を記憶する装置名フィールド1003を有する。尚、各々のテーブルの情報は、性能管理プログラム101を開始する前に、管理者がネットワーク等を介して各装置に登録する。
以下、図17を用いて、本実施形態におけるシステムにおけるモニタリングの全体の流れを説明する。尚、以下プログラムが主語になる場合は、実際にはそのプログラムを実行するCPUによって処理が実行される。
まず、タイマにより業務サーバ2のアプリケーション制御プログラム103が起動される(ステップ401)。アプリケーション制御プログラム103は、アプリケーションスケジュールテーブル114を参照し、起動するアプリケーションの有無をチェックする。起動するアプリケーションがある場合、アプリケーション制御プログラム103は、AP目標値テーブル116を参照して起動されるAPの性能目標項目を取得し、管理サーバ1の性能管理プログラム101に、アプリケーション名とアプリケーションの起動、及び性能目標項目をネットワーク4を介して通知する(ステップ404、408)。
アプリケーション名と性能目標項目を受取った性能管理プログラム101は、モニタ制御情報記憶テーブル111を参照して性能目標項目に対するモニタリング項目とモニタリング間隔を取得する(ステップ503)。そして、性能管理プログラム101は、決定したモニタリング項目及びモニタリング間隔の情報を、管理サーバ2及び記憶装置サブシステム3のモニタエージェント106、109に通知する(ステップ504)。これ以降の処理概要は図8の場合と同一であり、ここでは説明を省略する。
以下、各装置における処理手順の詳細について説明する。尚、図17と同じ番号は、それらの処理ステップが一致することを示す。
図18は、本実施例において、業務サーバ2が、アプリケーション104の実行を開始する際に、アプリケーション制御プログラム103を実行することによって実施する処理例を示す図である。
業務サーバ2は、まずアプリケーションスケジュールテーブル114のフィールド114を参照して起動すべきアプリケーションがあるかどうかを判断する(ステップ402)。起動すべきアプリケーションがある場合、業務サーバ2は起動するアプリケーション名をフィールド901から取得し、さらにAP目標値テーブル116から起動するAPの性能目標項目及び目標値を取得し、取得したアプリケーション名と性能目標項目、目標値、及びそのアプリケーション104を起動することをネットワークI/F23を介して管理サーバ1に送信する(ステップ404)。その後の処理は図9の場合と同一であるためここでは説明を省略する。なお、本実施例では、モニタリング内容が変更された通知を受けているが、図9同様、通知を受けない構成でもよい。
図19は、本実施形態における管理サーバ1が性能管理プログラム101を実行することで計算機システムのモニタリングを実施する際の処理手順例を示す図である。
まず管理サーバ1は、業務サーバ2からアプリケーション開始又は終了の通知があったか否かをチェックする(ステップ501)。次に、管理サーバ1は図13に示すモニタ制御情報記憶テーブル111を参照し、業務サーバ2から通知された性能目標項目に対応するモニタリング項目とそのモニタリング間隔を取得する(ステップ503)。これ以降ステップ505までの処理は図10の場合と同一であるためここでは説明を省略する。
モニタデータを受け取った管理サーバ1は、先に業務サーバ2から受け取った性能目標値とステップ505で受け取ったモニタデータを比較し(ステップ506)、モニタデータの値が目標を達成していない場合には、問題発生を管理者に通知する(ステップ507)。管理者への通知は、例えば管理端末(図示せず)への表示により行われる。
以下、モニタ制御情報記憶テーブル111に図13に示すレコード305が、アプリケーションスケジュール114に図6に示すレコード903が、モニタエージェント管理テーブル115に図16に示すレコード1004がそれぞれ記憶されている場合の、システムにおけるモニタリング及びチューニングの例について説明する。なお、当初は、アプリケーション状態記憶テーブル113にはレコード804は存在しないとする。
まず、アプリケーションスケジュールテーブル114のレコード903aに示されるアプリケーション1(以下「AP1」)が起動された場合のシステムにおけるモニタリングの例について説明する。
業務サーバ2は、タイマに従い定期的に起動すべきアプリケーションがあるか否かをチェックする(図18のステップ402)。業務サーバ2は、図6のアプリケーションスケジュールテーブル114の各レコード903の起動時刻フィールド902の値とチェック時点の時刻とを比較することにより起動すべきアプリケーションのチェックを行う。
チェック時点の時刻が10:00であるとすると、レコード903aのフィールド902の値と一致するので、業務サーバ2は、レコード903aのアプリケーション名フィールド901に記憶されたAP1を起動することが判断できる。次に、業務サーバ2は、図14に示すAP目標テーブル116を参照し、レコード1404のAP名フィールド1401の値が今回起動するAPの名称であるAP1のレコードを探す。この場合はレコード1404aがこれに該当する。その後、業務サーバ2は該レコード1404aの性能目標項目フィールド1402及び性能目標値フィールド1403に記憶された値(トランザクション時間、及び3秒以下)を、先に取得したレコード903aのフィールド901の値であるAP1(アプリケーション名)と共に、管理サーバ1に転送する。業務サーバ2は同時に、このアプリケーション名を持つアプリケーションが起動されることも管理サーバ1に通知する。
アプリケーション名AP1のアプリケーションが起動する、またその性能目標項目がトランザクション時間であり性能目標値が3秒以下という情報を受取った管理サーバ1は、モニタ制御情報記憶テーブル111’を参照し、性能目標項目がトランザクション時間であるレコード305cを選択し、選択したレコード305aのモニタリング項目(トランザクションレスポンス及び平均I/O時間)及びモニタリング間隔の情報を取得する。この例では、トランザクションレスポンスのモニタリング間隔は1分毎、平均I/O時間のモニタリング間隔は0である。尚、上述したように、モニタリング間隔が0である場合は、モニタリングが行われないことを示している。
次に、管理サーバ1は、業務サーバ2から受取った要求がアプリケーション開始か終了かを判断する。この場合はAP1の開始要求であるため、管理サーバ1は、図5のアプリケーション状態記憶テーブル113に、アプリケーション名がAP1、トランザクションレスポンスのモニタリング間隔が1分、平均I/O時間のモニタリング間隔が0であるレコード804cを追加する。その後、管理サーバ1はまずトランザクションレスポンスについて、最小モニタリング間隔の値を求める。この場合レコード804cの1分毎という値が最小モニタリング間隔の値になる。次に、図16のモニタエージェント管理テーブル115を参照し、モニタリング項目名がトランザクションレスポンスであるレコード1004cを取得し、該レコード1004cのフィールド1002及び1003を参照してモニタエージェント名(DBモニタエージェント)及び装置名(業務サーバ)を取得する。管理サーバ1は、トランザクションレスポンスのモニタリングを最小モニタリング間隔の値(ここでは1分間隔)、モニタリング項目名(トランザクションレスポンス)、及び当該モニタ項目の監視を実行するモニタエージェント名(DBモニタエージェント)を、業務サーバ2に通知する。
次いで管理サーバ1は、平均I/O時間の最小モニタリング間隔の値を求める。本例においては、この時点ではアプリケーション状態記憶テーブル113にはレコード804cしか登録されておらず、かつレコード804cの平均I/O時間のモニタリング間隔が0であるので、最小モニタリング間隔は0となる。次に、図16のモニタエージェント管理テーブル115を参照し、モニタリング項目名が平均I/O時間であるレコード1004dを取得し、該レコード1004dのフィールド1002及び1003を参照してモニタエージェント名(OSモニタエージェント)及び装置名(業務サーバ)を取得する。モニタリング間隔が0であることはモニタリングを行わないことを示すため、管理サーバ1は、モニタリング項目名(平均I/O時間)、及び当該モニタ項目の監視を実行するモニタエージェント名(OSモニタエージェント)、及び平均I/O時間のモニタリングを停止することを業務サーバ2に通知する。
DBモニタエージェントが監視するトランザクションレスポンスを1分間隔でモニタリングする通知を管理サーバ1より受けた業務サーバ2は、1分間隔でDBMS105のトランザクションのレスポンスタイムをモニタリングし、得られたモニタデータを管理サーバ1に送付する。
ステップ505で受け取ったトランザクションレスポンスが1秒である場合、これは目標性能値である3秒を達成しているのでループの先頭に戻る。もしレスポンスが10秒であった場合には、ステップ508により、トランザクションレスポンスが性能目標値を達成しなかったことを管理者端末に表示する。ここでの表示項目には、性能目標値を達成しなかった性能目標項目(ここではトランザクション時間)、目標時間(3秒)、観測された時間(10秒)等の情報が含まれる。
次に、AP1が起動している状態で、AP2が起動した場合のシステムにおけるモニタリングの例について述べる。この時点で、図15のアプリケーション状態記憶テーブル113にはレコード804cのみが記憶されているとする。
業務サーバ2は、アプリケーションスケジュールテーブル114を参照した時刻が10:30であると、アプリケーションスケジュールテーブルテーブル114から、起動時刻が10:30であるレコード903bを選択する。次に、業務サーバ2は、選択されたレコード903bのフィールド901からアプリケーション名AP2を取得し、管理サーバ1にアプリケーション2が起動することを通知する。
通知を受けた管理サーバ1は、AP1の時と同様の処理を行い、アプリケーション状態記憶テーブル113に、アプリケーション名がAP2、トランザクションレスポンスのモニタリング間隔が0(すなわちモニタリングしない)、平均I/O時間のモニタリング間隔が1分であるレコード804dを追加する。
その後、管理サーバ1は、アプリケーション状態記憶テーブル113を参照して、まずトランザクションレスポンスの最小モニタリング間隔を求め、さらにトランザクションレスポンスのモニタリングを行うモニタエージェント名と該モニタエージェントが存在する装置名を、モニタエージェント管理テーブル115から取得する。本例の場合、AP1のモニタリング間隔とAP2のモニタリング間隔を比較すると最小モニタリング間隔は1分であり、またモニタエージェント名はDBモニタエージェント、装置名は業務サーバであるので、管理サーバ1は、DBモニタエージェントが監視するトランザクションレスポンスを1分という最小モニタリング間隔で監視することを業務サーバ2に伝える。次に管理サーバ1は、アプリケーション状態記憶テーブル113を参照して、平均I/O時間の最小モニタリング間隔と該平均I/O時間を監視するモニタエージェント名及び該モニタエージェントが存在する装置名を求める。この場合、レコード1004dよりモニタエージェント名はOSモニタエージェント、装置名は業務サーバであることが求まり、また最小モニタリング間隔はレコード804dの1分となる。したがって、管理サーバ1は、業務サーバ2に対してOSモニタエージェント117が監視する平均I/O時間を1分間隔でモニタリングするよう通知する。
通知を受取った記憶装置サブシステム3は、モニタエージェント109を用いてプロセッサ34の利用率のモニタリングを行い、得られた性能データを管理サーバ1に送付する。
次に、AP1とAP2が起動している状態から、AP2が終了する場合のモニタリングの例について述べる。
業務サーバ2は、AP2の終了を検知すると、終了したアプリケーションの名称(ここではAP2)と、当該アプリケーションが終了したことを管理サーバ1に通知する。
アプリケーション終了の通知を受取った管理サーバ1は、通知されたアプリケーション名に基づいて、AP状態記憶テーブル113から、AP名がAP2であるレコード804dを削除する。
その後管理サーバ1は、トランザクションレスポンスの最小モニタリング間隔をアプリケーション状態記憶テーブル113から求める。本例の場合、既にレコード804dが削除され、レコード804cしかアプリケーション状態記憶テーブル113には存在しない。したがって、最小モニタリング間隔は、このレコード804cのトランザクションレスポンスのモニタリング間隔(フィールド802cの値)の1分となる。次に、管理サーバ1は、トランザクションレスポンスを監視するモニタエージェントの名称(DBモニタエージェント)と当該モニタエージェントが存在する装置の名称(業務サーバ)を求め、モニタエージェント名とモニタリング項目名、及び先に求めた最小モニタリング間隔値を業務サーバ2に通知する。次に管理サーバ1は、平均I/O時間の最小モニタリング間隔を求める。この場合、レコード804cのフィールド802dの値の0が採用される。
その後、管理サーバ1は、同様にモニタエージェント名(OSモニタエージェント)と装置名(業務サーバ)を求め、業務サーバ2に対して、「OSモニタエージェント」という名称のモニタエージェントが監視する平均I/O時間のモニタリングを停止するよう通知する。
以上示したように、本実施形態により、アプリケーションが性能目標を達成しているか否かを判断するためのモニタリング項目を、アプリケーションから性能目標を受け取ることにより変更することで、必要な項目のみのモニタリングを行うことが可能であることが示された。
尚、AP目標値テーブル116を管理サーバ1が有する構成としても良い。この場合、業務サーバ2は、自身で実行されるアプリケーションの名前と実行開始の情報を管理サーバ1へ伝える。そして管理サーバ1は、個々のテーブルを用いてモニタリング項目を特定する。
又、本実施形態では、システムの性能が設定された性能目標項目の値を満たさない場合、管理サーバ1は管理者等へ警告を通知していた。しかし、第一の実施形態と同様にチューニング方法に関する情報を管理サーバ1が有し、その情報に基づいて管理サーバ1がシステムの性能をチューニングする構成としても良い。
計算機及び記憶装置サブシステムを含むシステムの構成例を示す図である。 アプリケーション特性テーブルの構成例を示す図である。 モニタ制御情報記憶テーブルの構成例を示す図である。 チューニング情報記憶テーブルの構成例を示す図である。 アプリケーション状態記憶テーブルの構成例を示す図である。 アプリケーションスケジュールの構成例を示す図である。 モニタエージェント管理テーブルの構成例を示す図である。 システムモニタリングの流れの例を示す図である。 業務サーバでアプリケーションの実行を開始する際の処理の例を示す図である。 管理サーバでモニタリングの制御を実行する処理の例を示す図である。 モニタエージェントの制御方式を決定する処理の例を示す図である。 第二の実施例の計算機及び記憶装置サブシステムを含むシステムの構成例を示す図である。 第二の実施例における、モニタ制御情報記憶テーブルの構成例を示す図である。 アプリケーション目標値テーブルの構成例を示す図である。 第二の実施例における、アプリケーション状態記憶テーブルの構成例を示す図である。 第二の実施例における、モニタエージェント管理テーブルの構成例を示す図である。 第二の実施例における、システムモニタリングの流れの例を示す図である。 第二の実施例における、業務サーバでアプリケーションの実行を開始する際の処理の例を示す図である 第二の実施例における、管理サーバでモニタリングの制御を実行する処理の例を示す図である。
符号の説明
1…管理サーバ、2…データベースサーバ、3…記憶装置サブシステム、31…ポート、32…ディスクコントローラ、33…制御メモリ、34…プロセッサ、35…キャッシュメモリ、36…ディスク、37…ネットワークインタフェース、4…ネットワーク。

Claims (14)

  1. 業務計算機と記憶装置サブシステムとを含む計算機システムと、
    前記計算機システムと接続される管理計算機と、を有するシステムであって
    前記管理計算機は、アプリケーション名毎のアプリケーションプログラムの記憶装置サブシステムへのアクセスパターンを示したアプリケーション特性テーブルと、ディスクアクセスパターン毎のチューニング項目を記したチューニング情報記憶テーブルと、チューニング項目毎のモニタリング項目と前記モニタリング項目毎のモニタリング間隔の対応関係を示すモニタ制御情報記憶テーブルと、を記憶し、
    前記計算機システムは、前記管理計算機に前記計算機システムで実行される所定のプログラムの名前を通知し、
    前記管理計算機は、前記アプリケーション特性テーブルと、チューニング情報記憶テーブルと、モニタ制御情報記憶テーブルとに基いて、通知された前記所定のプログラムの名前に応じたモニタリング項目とモニタリング間隔を特定し、前記特定したモニタリング項及び前記特定したモニタリング間隔を指定したモニタリング開始指示を前記計算機システムに送信し、
    前記計算機システムは、前記通知の内容に基づいて前記特定されたモニタリング項目のモニタリング値を前記特定されたモニタリング間隔毎に収集する、
    ことを特徴とするシステム。
  2. 前記計算機システムは、前記モニタリング値を、前記前記管理計算機に通知し、
    前記管理計算機は、通知された前記モニタリング値が所定の条件を満たさない場合には、前記計算機システムの設定を所定の値に変更する指示を前記計算機システムに送信し、
    前記計算機システムは、前記指示に基づいて自身の設定を変更することを特徴とする請求項1記載のシステム。
  3. 前記計算機システムは、前記管理計算機に、前記所定のプログラムの名前を指定したプログラム終了通知を送信し、
    前記管理計算機は、前記アプリケーション特性テーブルと、チューニング情報記憶テーブルと、モニタ制御情報記憶テーブルとに基いて、前記前記所定のプログラムのに対応するモニタリング項目を特定し、特定したモニタリング項目のモニタリング停止指示を前記計算機システムに送信し、
    前記計算機システムは、前記モニタリング停止指示に基づいて、前記特定したモニタリング項目のモニタリング値の収集を停止することを特徴とする請求項2記載のシステム。
  4. 前記アクセスパターンには、シーケンシャルアクセス及びランダムアクセスがあることを特徴とする請求項記載のシステム。
  5. 前記モニタリング項目には、前記記憶装置サブシステムが有するプロセッサの使用率があることを特徴とする請求項1記載のシステム。
  6. 前記業務計算機では、前記記憶装置サブシステムが格納するデータにアクセスするデータベースマネジメントシステムが実行されており、前記モニタリング項目には、前記業務計算機が有するメモリの前記データベースマネジメントシステムによる使用率があることを特徴とする請求項記載のシステム。
  7. 前記所定の条件は、前記記憶装置サブシステムが有するプロセッサの使用率が所定の割合を超えないという条件であることを特徴とする、請求項記載のシステム。
  8. 業務計算機と記憶装置サブシステムとを含む計算機システムに接続される管理計算機であって、
    前記管理計算機は、アプリケーション名毎のアプリケーションプログラムの記憶装置サブシステムへのアクセスパターンを示したアプリケーション特性テーブルと、ディスクアクセスパターン毎のチューニング項目を記したチューニング情報記憶テーブルと、チューニング項目毎のモニタリング項目と前記モニタリング項目毎のモニタリング間隔の対応関係を示すモニタ制御情報記憶テーブルと、を記憶し、
    前記管理計算機は、
    (A)前記計算機システムから、前記計算機システムで実行される所定のプログラムの名前を受信し、
    (B)前記アプリケーション特性テーブルと、チューニング情報記憶テーブルと、モニタ制御情報記憶テーブルとに基いて、通知された前記所定のプログラムの名前に応じたモニタリング項目とモニタリング間隔を特定し、
    (C)前記特定したモニタリング項及び前記特定したモニタリング間隔を指定したモニタリング開始指示を前記計算機システムに送信することで、前記計算機システムに、前記通知の内容に基づいて前記特定されたモニタリング項目のモニタリング値を前記特定されたモニタリング間隔毎に収集させる、
    ことを特徴とする管理計算機。
  9. 前記管理計算機は、前記計算機システムから、前記モニタリング値を受信し、
    前記管理計算機は、通知された前記モニタリング値が所定の条件を満たさない場合には、前記計算機システムの設定を所定の値に変更する指示を前記計算機システムに送信し、
    前記計算機システムは、前記指示に基づいて自身の設定を変更することを特徴とする請求項8記載の管理計算機。
  10. 前記管理計算機は、前記計算機システムから、前記所定のプログラムの名前を指定したプログラム終了通知を受信し、
    前記管理計算機は、前記アプリケーション特性テーブルと、チューニング情報記憶テーブルと、モニタ制御情報記憶テーブルとに基いて、前記前記所定のプログラムのに対応するモニタリング項目を特定し、特定したモニタリング項目のモニタリング停止指示を前記計算機システムに送信することで、前記特定したモニタリング項目のモニタリング値の収集を停止することを特徴とする請求項9記載の管理計算機。
  11. 前記アクセスパターンには、シーケンシャルアクセス及びランダムアクセスがあることを特徴とする請求項8記載の管理計算機。
  12. 前記モニタリング項目には、前記記憶装置サブシステムが有するプロセッサの使用率があることを特徴とする請求項8記載の管理計算機。
  13. 前記業務計算機では、前記記憶装置サブシステムが格納するデータにアクセスするデータベースマネジメントシステムが実行されており、
    前記モニタリング項目には、前記業務計算機が有するメモリの前記データベースマネジメントシステムによる使用率があることを特徴とする請求項12記載の管理計算機。
  14. 前記所定の条件は、前記記憶装置サブシステムが有するプロセッサの使用率が所定の割合を超えないという条件であることを特徴とする、請求項13記載の管理計算機。
JP2004063395A 2004-03-08 2004-03-08 計算機システムのモニタリングを設定する管理計算機及びシステム Expired - Fee Related JP4479284B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004063395A JP4479284B2 (ja) 2004-03-08 2004-03-08 計算機システムのモニタリングを設定する管理計算機及びシステム
US10/871,814 US7512680B2 (en) 2004-03-08 2004-06-21 System monitoring method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004063395A JP4479284B2 (ja) 2004-03-08 2004-03-08 計算機システムのモニタリングを設定する管理計算機及びシステム

Publications (2)

Publication Number Publication Date
JP2005251048A JP2005251048A (ja) 2005-09-15
JP4479284B2 true JP4479284B2 (ja) 2010-06-09

Family

ID=34909310

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004063395A Expired - Fee Related JP4479284B2 (ja) 2004-03-08 2004-03-08 計算機システムのモニタリングを設定する管理計算機及びシステム

Country Status (2)

Country Link
US (1) US7512680B2 (ja)
JP (1) JP4479284B2 (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7698417B2 (en) * 2005-06-15 2010-04-13 Microsoft Corporation Optimized performance counter monitoring
US7636711B2 (en) * 2005-06-28 2009-12-22 Microsoft Corporation Extensible workflows
US20070021992A1 (en) * 2005-07-19 2007-01-25 Srinivas Konakalla Method and system for generating a business intelligence system based on individual life cycles within a business process
GB0516554D0 (en) * 2005-08-11 2005-09-21 Ibm Method, apparatus and computer program for enabling monitoring of a resource
US20070050232A1 (en) * 2005-08-26 2007-03-01 Hung-Yang Chang Method and system for enterprise monitoring based on a component business model
JP4841982B2 (ja) * 2006-03-20 2011-12-21 富士通株式会社 性能情報収集方法、装置、及びプログラム
US8812770B2 (en) * 2009-07-13 2014-08-19 Microsoft Corporation Health reporting from non-volatile block storage device to processing device
CN102375757B (zh) * 2010-08-13 2013-07-03 国基电子(上海)有限公司 网络设备及其动态启用进程的方法
JP5761683B2 (ja) * 2011-02-23 2015-08-12 セイコーインスツル株式会社 情報処理装置、及び情報処理プログラム
JP5579650B2 (ja) * 2011-04-28 2014-08-27 インターナショナル・ビジネス・マシーンズ・コーポレーション 監視対象プロセスを実行する装置及び方法
WO2013114608A1 (ja) * 2012-02-02 2013-08-08 富士通株式会社 イベント管理装置、イベント管理のための情報処理方法及びプログラム
JP5678923B2 (ja) * 2012-06-20 2015-03-04 日本電気株式会社 ストレージシステム、入出力制御装置、入出力制御方法、および、コンピュータ・プログラム
US9037914B1 (en) * 2012-06-28 2015-05-19 Google Inc. Error handling for widgets
JP6011639B2 (ja) * 2012-12-28 2016-10-19 富士通株式会社 情報処理装置、情報処理方法、及び情報処理プログラム
US9154397B2 (en) * 2013-03-15 2015-10-06 Microsoft Technology Licensing, Llc Methods and computer program products for transaction relationships between application servers
JP6361203B2 (ja) * 2014-03-20 2018-07-25 日本電気株式会社 情報処理装置、監視管理方法及びプログラム
JP6369089B2 (ja) * 2014-03-26 2018-08-08 セイコーエプソン株式会社 情報通信システム、情報処理装置および情報収集方法
US10073758B2 (en) * 2015-07-15 2018-09-11 Citrix Systems, Inc. Performance of a wrapped application
WO2017017774A1 (ja) * 2015-07-28 2017-02-02 株式会社日立製作所 ストレージ監視システムおよびその監視方法
JP6704476B2 (ja) * 2017-01-23 2020-06-03 株式会社日立製作所 影響分析システム、計測項目最適化方法、および計測項目最適化プログラム

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5664106A (en) * 1993-06-04 1997-09-02 Digital Equipment Corporation Phase-space surface representation of server computer performance in a computer network
DE69712552T2 (de) * 1996-02-14 2003-01-09 Hitachi Ltd Verfahren zur Überwachung eines Computersystems mit Leistungsdatenverteilung an mehrere Überwachungsprozesse
US5796633A (en) * 1996-07-12 1998-08-18 Electronic Data Systems Corporation Method and system for performance monitoring in computer networks
US5951658A (en) * 1997-09-25 1999-09-14 International Business Machines Corporation System for dynamic allocation of I/O buffers for VSAM access method based upon intended record access where performance information regarding access is stored in memory
US6397252B1 (en) * 1997-12-19 2002-05-28 Electronic Data Systems Corporation Method and system for load balancing in a distributed object system
US6167538A (en) * 1998-03-06 2000-12-26 Compaq Computer Corporation Method and apparatus for monitoring components of a computer system
US6052694A (en) * 1998-03-18 2000-04-18 Electronic Data Systems Corporation Method and apparatus for logging database performance characteristics
EP0952522B1 (en) * 1998-04-22 2011-08-24 Nippon Telegraph And Telephone Corporation Method and device for acquiring usage data of an application
US6301615B1 (en) * 1998-10-14 2001-10-09 Sun Microsystems, Inc. Cluster performance monitoring utility
US6691067B1 (en) * 1999-04-07 2004-02-10 Bmc Software, Inc. Enterprise management system and method which includes statistical recreation of system resource usage for more accurate monitoring, prediction, and performance workload characterization
TW536670B (en) 2000-07-15 2003-06-11 Ibm A method for availability monitoring via a shared database
EP1320217B1 (en) * 2001-12-14 2004-10-13 Hewlett-Packard Company, A Delaware Corporation Method of installing monitoring agents, system and computer program for monitoring objects in an IT network
AU2003202356A1 (en) * 2002-02-07 2003-09-02 Thinkdynamics Inc. Method and system for managing resources in a data center
US20030204588A1 (en) * 2002-04-30 2003-10-30 International Business Machines Corporation System for monitoring process performance and generating diagnostic recommendations
US7000150B1 (en) * 2002-06-12 2006-02-14 Microsoft Corporation Platform for computer process monitoring
US6901486B2 (en) * 2002-07-05 2005-05-31 Hewlett-Packard Development Company, L.P. Method and system for optimizing pre-fetch memory transactions
JP4516306B2 (ja) * 2003-11-28 2010-08-04 株式会社日立製作所 ストレージネットワークの性能情報を収集する方法

Also Published As

Publication number Publication date
JP2005251048A (ja) 2005-09-15
US20050198298A1 (en) 2005-09-08
US7512680B2 (en) 2009-03-31

Similar Documents

Publication Publication Date Title
JP4479284B2 (ja) 計算機システムのモニタリングを設定する管理計算機及びシステム
US7447710B2 (en) Database system providing self-tuned parallel database recovery
US11016956B2 (en) Database management system with database hibernation and bursting
US7783852B2 (en) Techniques for automated allocation of memory among a plurality of pools
US7979407B2 (en) Publication of informational messages to software applications in a computing environment
US8359596B2 (en) Determining capability of an information processing unit to execute the job request based on satisfying an index value and a content of processing of the job
US7107273B2 (en) Method and program of collecting performance data for storage network
US7933995B2 (en) Computer program and apparatus for controlling computing resources, and distributed processing system
US8521692B1 (en) Storage system and method for controlling storage system
US20040103079A1 (en) Method for operations management of database
JP2004206495A (ja) 管理システム、管理計算機、管理方法及びプログラム
US7660790B1 (en) Method and apparatus for utilizing a file change log
US8700572B2 (en) Storage system and method for controlling storage system
EP3443473A1 (en) Distributed database systems and methods of distributing and accessing data
US20230401235A1 (en) Low latency ingestion into a data system
US20040093395A1 (en) Information system and data access method
JP7068210B2 (ja) データベース管理システム、端末装置及び方法
JP6568232B2 (ja) 計算機システム、及び、装置の管理方法
JP2006344025A (ja) 稼動性能データ取得方法、性能監視サーバ、業務サーバ、計算機及びコンピューティングシステム
US20230342377A1 (en) Selective table replication to enable stream replication
Curtis et al. Tuning Oracle GoldenGate
JP2006091946A (ja) 一定の応答時間を保証する計算機システム
JPH04372023A (ja) ジョブ実行システム自動選択方式
JP2005190189A (ja) 帳票作成処理システム、帳票作成管理装置、帳票作成装置、帳票作成方法及びそのプログラム
JP2004252798A (ja) データベースのオンライン構成変更方法

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060424

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090216

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091124

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100122

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100223

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100308

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130326

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130326

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees